Connect To NetSuite
Connect to NetSuite
Connect your Expensify Workspace to NetSuite to streamline expense syncing, reporting, and accounting. New connections use OAuth 2.0 and NetSuite’s REST web services, so you approve access on a NetSuite consent screen instead of creating and copying access tokens.
This guide walks you through preparing NetSuite, connecting Expensify, and confirming the connection.
What you need before you connect to NetSuite
- A NetSuite account you can log into as an administrator
- The Control plan in Expensify
- Two-factor authentication enabled on your Expensify account, which NetSuite requires to connect the integration
- One Expensify Workspace per NetSuite subsidiary
- A Workspace currency that matches the NetSuite subsidiary’s default currency
Employees submitting reports don’t need NetSuite access or licenses.
How to install the Expensify bundle in NetSuite
- In NetSuite, go to Customization > SuiteBundler > Search & Install Bundles
- Search for Expensify and select the Expensify Connect bundle (Bundle ID
283395) - Click Install
- If the bundle is already installed, go to SuiteBundler > List and update to the latest version
- Select Show on Existing Custom Forms for all available fields
The latest bundle version grants the permissions Expensify needs to log in using OAuth 2.0 access tokens and to use REST web services, so update it before you connect.
How to enable OAuth 2.0 in NetSuite
- In NetSuite, go to Setup > Company > Enable Features > SuiteCloud
- Under Manage Authentication, enable OAuth 2.0
- Click Save
How to enable REST web services in NetSuite
- In NetSuite, go to Setup > Company > Enable Features > SuiteCloud
- Under SuiteTalk (Web Services), enable REST Web Services
- Click Save
How to enable expense reports in NetSuite
- Go to Setup > Company > Enable Features > Employees
- Make sure Expense Reports is enabled
- If it isn’t, check the box and click Save
How to set up expense categories in NetSuite
- Go to Setup > Accounting > Expense Categories
- If none are listed, click New to create them
Expense categories map to Expensify categories and are linked to GL accounts so employees can select them easily.
How to check your journal entry transaction forms
- Go to Customization > Forms > Transaction Forms
- Edit the Standard Journal Entry form:
- Under the Main tab, make sure Created From is shown and its display type is Normal
- Under Lines, make sure Receipt URL is shown
- Repeat for all journal-type forms
How to check your expense report transaction forms
- Go to Customization > Forms > Transaction Forms
- Edit the Standard Expense Report form:
- Under the Main tab, make sure Created From is shown
- Under the Expenses subtab, make sure Receipt URL is shown
- Repeat for all expense report-type forms
How to check your vendor bill transaction forms
- Go to Customization > Forms > Transaction Forms
- Edit your Vendor Bill form:
- Under the Main tab, show Created From and hide Department, Class, and Location
- Under the Expenses subtab, show Receipt URL, Department, Location, and Class
- Repeat for all vendor bill-type forms
How to check your vendor credit transaction forms
- Go to Customization > Forms > Transaction Forms
- Edit your Vendor Credit form:
- Under the Main tab, show Created From and hide Department, Class, and Location
- Under the Expenses subtab, show Receipt URL, Department, Location, and Class
- Repeat for all vendor credit-type forms
How to set up tax groups in NetSuite
Expensify supports tax groups, not individual tax codes, except when you use SuiteTax. Under Setup > Accounting > Set Up Taxes, set Tax Code Lists Include to Tax Groups And Tax Codes or Tax Groups Only. In the UK and Ireland, make sure each tax group contains only one tax code.
To create a tax group:
- Go to Setup > Accounting > Tax Groups
- Click New
- Set the country, name, and subsidiary
- Choose a tax code and click Add
- Click Save
- Repeat for each tax rate you want to show in Expensify
How to connect Expensify to NetSuite
- In the navigation tabs (on the left on web, on the bottom on mobile), go to Workspaces > [Workspace Name] > Accounting
- Click Connect next to NetSuite
- Click Next through the NetSuite setup steps
- Enter your NetSuite Account ID
- Click Connect
- On the NetSuite consent screen, sign in if prompted and approve access for Expensify
If you’re connecting to a Sandbox environment, capitalize the “s” and “b” in the Account ID and replace the hyphen with an underscore. For example, 123456-sb1 becomes 123456_SB1.
You can find your Account ID in NetSuite under Setup > Integration > Web Services Preferences.


What happens after you connect to NetSuite
- The NetSuite connection syncs within 1–2 minutes
- Newly approved and paid reports export to NetSuite
- Next, choose your import, export, and advanced settings. Learn how to configure NetSuite in Expensify.
How existing NetSuite connections are affected
Workspaces that already connect to NetSuite using token-based authentication keep working exactly as they do today. You don’t need to reinstall the bundle, create new tokens, or reconnect. Expensify will let you know before anything changes for existing connections.
FAQ
Why do I need two-factor authentication to connect NetSuite?
NetSuite requires two-factor authentication to authorize the integration. If two-factor authentication isn’t enabled on your Expensify account, Expensify prompts you to enable it before you can continue.
Do I still need to create access tokens in NetSuite?
No. New connections approve access on a NetSuite consent screen, so there are no token IDs or token secrets to create, copy, or store.
How do I ensure smooth import of customer and vendor data from NetSuite?
Set the Page Size to 1000 in NetSuite:
- Go to Setup > Integration > Web Services Preferences
- Search for and update the Page Size setting