Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.dualentry.com/llms.txt

Use this file to discover all available pages before exploring further.

Brex Integration: Setup and Sync

This guide walks you through connecting Brex to DualEntry. The integration is bidirectional:
  • DualEntry → Brex: Your Chart of Accounts and Companies are pushed into Brex, making them available as selectable values when coding expenses.
  • Brex → DualEntry: Vendors, card transactions, transfers, reimbursements, bills and bill payments flow back into DualEntry automatically.

Disconnect existing integrations first

Brex supports one active accounting integration at a time. If your Brex account is currently connected to another ERP (such as QuickBooks Online), disconnect that integration from Brex before connecting DualEntry.
Disconnecting a prior accounting system from Brex wipes the following from Brex and cannot be reversed:
  • GL codes on all historical Brex transactions
  • Auto-categorization rules (vendor → GL, merchant → GL, MCC-based)
  • Custom field / dimension mappings (department, class, location, project, etc.)
  • Vendor links between Brex vendors and your prior ERP’s vendor records
Brex does not store its own chart of accounts - it relies entirely on the connected accounting system to supply GL codes. This behavior is enforced by Brex. Confirm the impact with your team before disconnecting.

Before you disconnect

Work through this checklist to avoid mid-cutover surprises:
  1. Contact Brex Support. Brex support can assist you in backing up any Vendor Defaults and Custom Rules that have been created. Once this is backed up, Brex can help update the defaults and rules after connecting Brex to DualEntry.
  2. Drain the bill-pay queue. Approve, reject, or schedule out all bills currently pending in Brex Bill Pay. Confirm no ACH or check payments will release during the cutover window.
  3. Submit pending employee expenses and reimbursements. Unsubmitted expenses lose their GL context. Have employees submit and approvers approve, or accept that re-coding will be required.
  4. Export historical reports. Pull GL-coded transaction reports out of Brex for audit and compliance. Once disconnected, these cannot be regenerated.
  5. Reconcile and close the prior ERP through the cutover date. Seal your last clean snapshot of Brex activity.
  6. Pick a clean cutover date. Month-end after close is ideal. Mid-period cutovers split a period across two ERPs and create reconciliation work.
  7. Plan to rebuild downstream rules. Card budgets, spend limits, expense policies, and approval workflows that reference GL accounts will need to be reconfigured against DualEntry’s COA.

Prerequisites

Confirm the following before connecting:
  • Admin access to both your DualEntry and Brex accounts. The primary connection method uses your Brex login credentials. If you’re connecting via API instead, you’ll also need a Brex role with permission to generate accounting-scope API tokens (not all Brex plans expose these).
  • Your prior Brex accounting integration (if any) is disconnected. See the previous section for the impact and the pre-disconnect checklist.
  • For multi-entity setups: every Brex legal entity you want to sync has a corresponding company set up in DualEntry.
  • The DualEntry accounting period(s) covering your cutover date are open. Brex transactions cannot post into a closed period.
  • Multi-currency: if Brex spend includes non-base currencies, confirm those currencies are enabled and FX rates are configured in DualEntry.

How to connect

DualEntry supports two ways to authenticate with Brex. Login credentials is the recommended method for most customers.
  1. In DualEntry, navigate to Company → Integrations → Brex.
  2. Click Connect within the Brex integration box.
  3. You’ll be redirected to Brex. If you are not already signed in, enter your Brex login credentials.
  4. Approve the requested permissions.
  5. You’ll be redirected back to DualEntry. The integration shows as Connected.
The initial sync may take some time depending on the volume of data. Once complete, navigate to Brex to review Entities and Chart of Accounts. Use this method if your team prefers token-based authentication or your security policy requires it.
  1. In Brex, navigate to Settings → Developer → API.
  2. Generate a new API token with accounting integration scopes.
  3. Copy the token.
  4. In DualEntry, navigate to Company → Integrations → Brex.
  5. Click Connect with API token and paste the token.
  6. Click Save - DualEntry validates the token automatically.
  7. Once authenticated, the integration shows as Connected.

Configure Brex settings in DualEntry

  1. Navigate to Company → Integrations → Brex.
  2. Click Settings in the upper-right corner. A drawer opens (Brex Settings).
  3. Set a cutoff date. This is typically the migration date.
  4. Click Brex Accounting Settings and configure the following:
    • Assign a default company (required).
    • Assign a backup Accounts Payable account for Brex bills (required).
    • Adjust look-back days if necessary.
  5. Navigate out of the drawer and click Initial Sync or Sync.
The initial sync may take 30 minutes to 1 hour.

How the look-back window works

The integration pulls historical records using whichever date is older: the cutoff date or the look-back window. Brex does not return all data on every sync, so a fixed look-back window is required.
  • Day 1 of integration with cutoff = today, look-back = 30: only today’s records come in.
  • After three months of running, regardless of cutoff date, only the last 30 days of records are visible to each sync.
If you need to recover an older transaction outside the look-back window, temporarily widen the look-back days, run a sync, then restore the original setting.

Configure Brex settings in the Brex app

Wait at least one hour after the initial sync before performing this step.
  1. Log in to Brex.
  2. In the left menu, click Accounting.
  3. Click DualEntry Settings at the top.
  4. You see a list of entities pushed from DualEntry. Go through each company and map the Brex entity and accounts.
  5. Navigate back to Accounting and open Fields Library.
Common setup pitfalls:
  • Parent account is controlled by Brex. In a multi-entity setup, the parent account assignment is made by Brex, not DualEntry. If the wrong entity is set as parent, contact Brex support to change it. The rewards mapping field only exists on the parent account, so pick the entity that should receive the Brex rewards GL impact.
  • Brex does not validate company-to-account alignment. Bank accounts and credit cards in DualEntry are scoped to one company each. Brex does not enforce this when you map Accounts Payable or Credit Card accounts, so it is possible to map one entity’s AP account to a different entity in Brex with no warning. DualEntry rejects the transaction at sync time because the bank or credit card does not belong to the company on the bill or charge. This is the most common sync error after setup.
  • Disable unused GL accounts in Brex. Every GL account in DualEntry is pushed to Brex’s fields library. If you have a large chart of accounts, this produces a long dropdown that slows down expense coding. Disable accounts in Brex’s fields library that your team does not need.

What syncs

The Brex integration runs in two directions.

DualEntry → Brex (Scheduled or on sync) - Not available for API token connections

DualEntry pushes data to Brex on a 30-minute schedule. To push immediately, click Sync now from Company → Integrations → Brex.
DataNotes
Chart of accountsYour DualEntry GL accounts are pushed into Brex as selectable values on the GL Account field. This lets your team tag expenses inside Brex to the correct GL code. Format pushed: {GL Code} - {Account Name} (for example, 6100 - Travel Expenses).
CompaniesYour DualEntry companies are pushed into Brex, where they can be mapped to Brex legal entities. The mapping itself happens inside Brex - see Map DualEntry companies to Brex legal entities for the steps. Once mapped, expenses coded in Brex carry the correct entity context when they sync back to DualEntry.
When a DualEntry account is deactivated, it is also deactivated in Brex - preserving any historical transactions already tagged to it while removing it as an option for new expenses. Once your integration is connected and DualEntry has pushed your companies to Brex, map each Brex legal entity to the corresponding DualEntry company so synced transactions route to the correct entity in your ledger. This mapping is configured inside Brex, not in DualEntry.
  1. In Brex, navigate to Accounting → Integrations → DualEntry.
  2. Open the Entity Mapping (or Subsidiaries) section.
  3. For each Brex legal entity in the left column, select the corresponding DualEntry company from the dropdown on the right.
  4. Save the mapping.
  5. Repeat for all your active legal entities.
If a Brex legal entity is unmapped, transactions belonging to it fall back to the single Brex company mapping during sync, which may route them to the wrong entity in DualEntry. Map every active legal entity before relying on multi-entity routing.

Brex → DualEntry (Scheduled and real-time)

Brex syncs records to DualEntry through two mechanisms:
  • Real-time (webhook): Card expenses and reimbursement expenses are sent to DualEntry when a user exports them to ERP from inside Brex - these arrive in near real time after the export action.
  • Scheduled: All other records (company, vendors, accounts, bill-pay, clawbacks, and transfers) flow on a scheduled sync.
Each scheduled run pulls Brex data in this order: company, vendors, accounts, transfers, expenses. Records that depend on others (expenses on vendors) only post once their dependencies are mapped.
Brex dataDualEntry recordNotes
Companycompany (mapping)The single Brex company. Serves as the fallback company for entity routing when no legal entity is mapped.
VendorsvendorBrex vendors and merchants are imported as DualEntry vendor records.
Linked, card, and cash accountsaccount (mapping)Brex’s linked bank accounts, card accounts, and cash accounts are unified into one Brex account list to map against DualEntry GL accounts.
Card expensedirect_expensePer-transaction direct expense, with the GL account from the Brex GL Account custom field. Arrives in real time after the user exports to ERP from Brex.
Bill-pay expensebillEach Brex bill creates a DualEntry bill against the matched vendor.
Reimbursement expensejournal_entryReimbursements post as journal entries. Arrives in real time after the user exports to ERP from Brex.
Clawback expensevendor_credit + vendor_refundA clawback creates a vendor credit alongside a vendor refund record.
Outbound transferdirect_expensePositive transfers post as direct expenses.
Inbound transfervendor_credit + vendor_refundNegative transfers (refunds, returns) create a vendor credit and a vendor refund.

Result

After completing these steps, your DualEntry Chart of Accounts is available inside Brex for tagging expenses, and Brex transactions sync into your ledger on the configured schedule. To connect additional systems, return to Integrations. For AP workflows that ingest Brex bill payments, see Accounts Payable.
Last modified on May 28, 2026