ERP & Account Mapping

View as Markdown

Tabs connects with QuickBooks Online, NetSuite, Sage Intacct, and Rillet so your billing, payments, and revenue activity flow straight into your ERP, with no manual re-entry.

Connect your ERP

QuickBooks Online

  1. Go to Settings → Integrations
  2. Click Connect on QuickBooks Online
  3. Log in to Intuit and grant Tabs access

Requires QuickBooks Online administrator access. QuickBooks Desktop is not supported.

NetSuite

  1. Go to Settings → Integrations
  2. Click Connect on NetSuite
  3. In NetSuite, upload the RSA certificate Tabs provides and map it to an integration record
  4. Enter your NetSuite Account ID, Client ID, and Certificate ID back in Tabs to complete the OAuth 2.0 connection
  5. Complete the one-time setup — choose a Subsidiary and Sales-order flow — before syncing starts. No NetSuite data syncs until this step is saved

Contact your implementation manager for complex NetSuite configurations. If you connect a sandbox environment, ensure it has been synced with production within the last few months to maintain data consistency.

Sage Intacct

Connect Sage via Settings → Integrations → Sage Intacct, then use Sync or Manage → Sync to pull data from Sage into Tabs. Sage requires configured Sales Invoice and Credit Memo templates in the Order Entry module before Tabs can push transactions.

Other ERPs may be supported via CSV export or API — contact support@tabsplatform.com for options.

What syncs

Tabs pulls reference data from your ERP on a scheduled basis and pushes transactional data as activity occurs in Tabs. The first sync after connecting pulls all historical records; later syncs are incremental.

ERP → Tabs (import)

ObjectNotes
CustomersInitial setup and ongoing sync
Products / itemsTabs products map to ERP items — create new items in ERP first
Item GL accountsWhere your ERP exposes them, Tabs pulls each item’s revenue, deferred, and unbilled accounts. Pulled accounts appear read-only in Tabs and sync automatically
Chart of accountsTabs pulls but does not modify ERP accounts
Close periodsImported for book close enforcement
Historical invoices & paymentsInitial setup
Payments applied in ERPSync back to Tabs on daily pull

Tabs → ERP (push)

ObjectWhen it syncs
CustomersNew customers and updates created in Tabs
InvoicesWhen sent — draft invoices do not sync
Credit memosWhen created in Tabs
PaymentsWhen applied in Tabs, including Stripe and Plaid
Journal entriesWhen submitted via Close Management — not automatic

Updates made in Tabs reflect in your ERP immediately for pushed objects. Updates made in your ERP sync back to Tabs on the next daily sync (typically the following morning).

Journal entry batch sizes

ERPMax entries per batch
QuickBooks Online500
NetSuite500
Sage Intacct2,500
RilletOne journal entry per customer per period — no numeric cap

Revenue journal entries are generated and submitted through Close Management — they do not push automatically. Rillet entries missing a customer dimension are blocked until the dimension is set and the entry is re-pushed.

Integration items

Integration items map Tabs products to items in your ERP. They determine ERP account impact when invoices sync.

Every product used on a billing term should have an integration item assigned. Without one, you may see errors like:

  • “Billing item(s) are missing an integration item”
  • Products showing as “uncategorized”

Resolve missing integration items

  1. Open the product in the Product Catalog and click Edit Product
  2. Check the Integration item field
  3. If the dropdown is empty, go to the home page and click Sync to ERP to pull items from your ERP
  4. Select the matching ERP item and save

When you update an integration item on a product, the change applies to all existing invoices using that product automatically.

Tabs does not create new items in your ERP. Add items in your ERP first, then sync to Tabs.

See Product Catalog for how integration items fit into the product catalog.

Map revenue and unbilled accounts

Map each item’s GL accounts inline on Integrations → Items. Every item shows dropdowns — sourced from your ERP’s chart of accounts — for its Revenue and Unbilled accounts, plus a Deferred account dropdown when that account isn’t managed by your ERP. Changes save inline; no CSV round-trip or page navigation is needed.

  • Accounts that Tabs pulls from your ERP appear read-only with a “managed in your ERP” indicator and sync automatically. To change them, update the account in your ERP.
  • Items falling back to the default earned revenue account are marked DEFAULT.
  • For Sage Intacct, only the deferred account syncs automatically from your ERP — set the revenue account manually or via CSV.
  • For Rillet, Tabs supports invoice and journal entry export only (no contract sync) — set the revenue account manually per item, since Tabs never pulls Rillet products.
  • CSV upload remains available as an optional bulk path for large catalogs. It is non-destructive — it only updates the accounts included in each row and leaves other mappings untouched.

Account mapping

Configure ERP account mappings under Integrations → your ERP → Manage:

  • Revenue journal entries — accounts used when Close Management posts recognized revenue
  • Cash application — bank accounts mapped to Plaid accounts for payment matching journal entries. Supported for QuickBooks Online, NetSuite, and Sage Intacct
  • Reconciliation — bad debt, bank fees, and other close-out account types

If the Bank Fees account isn’t mapped, Tabs highlights the field and shows a banner prompting you to map it — reconciliation can’t run until it’s set.

For NetSuite and Sage Intacct cash application, reconciliation account types are backed by an ERP item you select (rather than a raw GL account). Configure the reconciliation item in your ERP first, then map it in Tabs.

In NetSuite:

  1. Go to Lists → Accounting → Items → New (or edit an existing item)
  2. Choose Non-Inventory Item → For Sale
  3. On the Accounting tab, set the Income Account to the account Tabs should use for reconciliation journal entries
  4. Save the item

In Sage Intacct:

  1. Go to the item you want to use for reconciliation
  2. Assign it to an Item GL Group that resolves to the account Tabs should use for reconciliation journal entries
  3. Save the item

In Tabs:

  1. Go to Integrations → your ERP → Manage
  2. For default reconciliation types (Bad Debt, Bank Fees) or custom types, select the ERP integration item you created
  3. Click Sync if the item does not appear in the dropdown yet
  4. To add a custom reconciliation method, click Add account type, name it, and map the ERP account and integration item

See Set up Plaid for cash application setup.

Push to ERP

If a customer exists in Tabs but not in your ERP, you’ll see a Missing in ERP badge on the customer profile. Click Push to ERP to create the record in your accounting system. ERP-linked workflows require the customer to exist in both systems.

See Customer Ingestion for customer sync behavior.

Troubleshooting

View ERP sync errors

To see why a record failed to sync, open ERP sync errors at app.tabsplatform.com/merchant/erp-sync-errors. Each entry lists the affected record and the error reason. After addressing the cause, re-send the record through the normal Tabs send/sync flow to retry the push.

Invoices fail to sync to QuickBooks

If QuickBooks rejects an invoice with an error about service dates or revenue recognition schedules, native QBO revenue recognition is likely enabled on the mapped product. Tabs manages recognition through Close Management — disable revenue recognition on QBO items used by Tabs.

See Close Management for full details.

Duplicate journal entries with Plaid

If you use QuickBooks, disable QBO’s built-in transaction matching before connecting Plaid. Running both simultaneously creates duplicate journal entries.

See Set Up Plaid for the full cash application setup.

Invoice reset behavior

Resetting a sent invoice to draft in Tabs removes the corresponding record from your ERP. Re-sending recreates it. Credit memos created in your ERP do not sync back into Tabs — create and apply them in Tabs instead.

Rillet: invoice not pushing

Marking an invoice as “Sent off Tabs” does not push it to Rillet. To push an invoice to Rillet, send it through the normal Tabs send flow. If a single invoice fails while others from the same period succeed, check the ERP sync errors page for the specific reason and re-send after resolving it.

Sage Intacct: credit memo unapply

Sage Intacct does not support unapplying a credit memo once it’s applied — this is a Sage API constraint. Apply credit memos carefully in Sage-connected accounts.