Skip to main content
Integrations & API

NetSuite accounting (coming soon)

Connect a NetSuite subsidiary to an Operating company, so your invoices and credit notes go to NetSuite and their status and payments come back.

Written By Mikko Karjalainen

Last updated About 20 hours ago

What the NetSuite integration does

The NetSuite integration connects one Operating company to one NetSuite subsidiary. Operating sends your invoices and credit notes to NetSuite at that subsidiary, and NetSuite sends back their status and the payments applied to them.

The integration has three features, which you turn on separately on the connection's Settings tab:

  • Tax codes and items: imports the tax codes of the subsidiary's country, which you map to Operating's tax rates, and the items the subsidiary sells as billable items.

  • Clients: imports the subsidiary's customers as clients, and creates in NetSuite the clients an invoice pushed to it needs.

  • Invoices and payments: creates Operating's invoices and credit notes in NetSuite, and brings back their status and their payments. It needs the other two features to be on.

What syncs, and in which direction

In Operating

In NetSuite

Direction

Tax rate

Tax code

NetSuite to Operating, linked to a tax rate you choose

Billable item

Item

NetSuite to Operating

Client

Customer

NetSuite to Operating, and Operating to NetSuite when an invoice needs the client

Invoice

Invoice

Operating to NetSuite

Credit note

Credit memo, applied to the invoice it credits

Operating to NetSuite

Invoice status

Invoice status

NetSuite to Operating

Payment

Customer payment applied to the invoice

NetSuite to Operating

A client's name and invoicing email go each way. Addresses and VAT IDs do not.

Operating imports tax codes, items and customers when you turn a feature on, and then every day. It reads the status and payments of each invoice that is not settled yet every 6 hours.

What you need

  • The Manage integrations permission in Operating to connect NetSuite and change its settings. To save an invoice to NetSuite, you need the right to edit the invoice.

  • A NetSuite account on SuiteTax. An account on Legacy Tax cannot be connected.

  • A NetSuite administrator to turn on REST Web Services and token-based authentication, and to create the role, the integration record and the access token Operating uses.

  • One connection for each subsidiary you invoice from.

Nothing is installed in your NetSuite account: no bundle, SuiteApp or script.

The role Operating works as needs these permissions:

  • Setup: Log in using Access Tokens (Full), REST Web Services (Full).

  • Reports: SuiteAnalytics Workbook (Edit).

  • Lists: Customers (Full), Items (View), Tax Records (View), Currency (View), Subsidiaries (View).

  • Transactions: Invoice (Full), Credit Memo (Full), Customer Payment (View), Find Transaction (View).

How to connect NetSuite

The connect dialog guides you through NetSuite, with links to the right pages in your account.

  1. Go to Settings > Integrations and open NetSuite.

  2. Next to the company, click Connect an account.

  3. Enter your Account ID or NetSuite address. Your account ID is at Setup > Company > Company Information in NetSuite.

  4. Create the role and the user for Operating, as the dialog describes.

  5. Create the integration record, and enter its Consumer key and Consumer secret.

  6. Create the access token, and enter its Token ID and Token secret.

  7. Click Connect.

  8. If the account has more than one subsidiary, choose the one for this company.

NetSuite shows the keys and the token only once, so copy each value when NetSuite shows it.

When the role cannot list the account's subsidiaries, the dialog asks for a Subsidiary ID. It is the number after id= in the address of the subsidiary's page in NetSuite.

How to set up and use it

  1. On the Settings tab, turn on Tax codes and items and Clients, and click Save changes.

  2. On the Mapping tab, map the items and the customers, and click Commit decided … mappings on each tab. Operating never creates a tax rate from a tax code, so link a tax code only to a tax rate Operating already has.

  3. Turn on Invoices and payments, and click Save changes.

  4. Open an invoice and click Save to NetSuite.

Every line of a NetSuite invoice needs a billable item that is mapped to a NetSuite item.

NetSuite works out the tax on each invoice when it saves it. So the total NetSuite books can differ from Operating's total, and the invoice page shows both.

With the default setting An invoice posted in NetSuite, Operating marks the invoice sent once NetSuite posts it. An invoice that waits for approval in NetSuite is marked sent once it is approved.

How status and payments come back

  • Paid in NetSuite: Operating adds each customer payment to the invoice, and marks the invoice paid once NetSuite reads it paid in full.

  • Voided in NetSuite: Operating marks the invoice voided.

  • Deleted in NetSuite: Operating voids the invoice, with the default setting A document deleted in NetSuite.

To void an invoice that is in NetSuite, void it in NetSuite. Operating refuses the void and shows "This invoice is in NetSuite, and Operating cannot void it there. Void it in NetSuite; Operating marks it voided the next time it reads the invoice."

How to disconnect NetSuite

  1. On the connection's Overview tab, under Danger zone, click Disconnect NetSuite.

  2. Click Disconnect NetSuite to confirm.

Mappings and settings are kept, so connecting the same subsidiary again continues where it stopped. To stop all access from NetSuite's side, revoke the access token in NetSuite.

Common errors and how to fix them

When you connect, or when a save or an import fails, Operating shows the message. The connection's Issues tab lists every failed record with what fixes it.

  • "NetSuite did not accept the keys and tokens." Check the values you copied, and that the access token was made for the same integration record as the consumer key.

  • "This NetSuite account uses Legacy Tax." Operating connects only to accounts on SuiteTax.

  • "The NetSuite role Operating connects as lacks a permission this needs, such as REST Web Services." Add the permissions listed above to the role in NetSuite, then retry.

  • "Every line of a NetSuite invoice needs an item." Give each line a billable item mapped to a NetSuite item, then retry.

  • "NetSuite does not take this currency for the customer or its subsidiary." Add the currency to the customer in NetSuite, then retry.

  • "The NetSuite posting period of the document's date is closed or locked." Open the period in NetSuite, or change the date, then retry.

Related articles