This page describes how to connect, configure, and manage Expensify's NetSuite integration. Follow the links below to get started...
Important notes before getting started...
- Employees do not need NetSuite access or a NetSuite license to submit expense reports for export to NetSuite.
- Companies will need to have a Corporate policy in Expensify to integrate with NetSuite.
- Ensure that your policy's report output currency setting matches the NetSuite Subsidiary default currency.
- If you choose to sync people, all employee under the Subsidiary that you are syncing will be brought in to Expensify.
- If people sync is used, Expensify will set the “expense approver” in NetSuite as the approver in Expensify. If an expense approver doesn’t exist in NetSuite then the supervisor will be used.
How to Connect Expensify to NetSuite
Step 1: Enable SuiteSignOn and Web Services features in NetSuite
Log into NetSuite as an administrator and go to Setup > Company > Enable Features > SuiteCloud tab. Click the checkbox next to Web Services and SuiteSignOn then click Save at the bottom of the page to enable these features.
Step 2: Install Expensify Bundle in NetSuite
Logged into NetSuite as an administrator go to Customization > SuiteBundler > Search & Install Bundles then search for "Expensify". Click on "Expensify" then click Install to install the Expensify bundle.
Step 3: Confirm Expense Reports are enabled in NetSuite
Enabling Expense Reports is required as part of Expensify's integration with NetSuite. Logged into NetSuite as an administrator go to Setup > Company > Enable Features > Employees. Confirm the checkbox next to Expense Reports is checked. If it is not, click the checkbox then click Save to enable Expense Reports.
Step 4: Confirm Expense Categories are set up in NetSuite
Once Expense Reports are enabled Expense Categories can be set up in NetSuite. Expense Categories are an alias for General Ledger accounts for coding expenses.
Logged into NetSuite as as administrator go to Setup > Accounting > Expense Categories. A list of Expense Categories should be available. If no Expense Categories are visible click on New to create new Expense Categories.
Step 5A: Ensure Journal Entry Transaction Forms are Configured Properly
Logged into NetSuite as an administrator go to Customization > Forms > Transaction Forms. Click Customize or Edit next to the Standard Journal Entry form then click Screen Fields > Main. Please verify the Created From label has Show checked and the Display Type is set to Normal.
Next, click the sub-tab Lines and verify that the 'Show' column for 'Receipt URL' is checked.
Finally go to Customization > Forms > Transaction Forms and ensure all other Transaction Forms with the Journal type have this same configuration.
Step 5B: Ensure Expense Report Transaction forms are Configured Properly
Logged into NetSuite as an administrator go to Customization > Forms > Transaction Forms. Click Customize or Edit next to the Standard Expense Report form then click Screen Fields > Main. Please verify the Created From label has Show checked and the Display Type is set to Normal (see screenshot below).
Next, click the sub-tab Expenses and verify that the 'Show' column for 'Receipt URL' is checked.
Finally go to Customization > Forms > Transaction Forms and ensure all other Transaction Forms with the Expense Report type have this same configuration.
Step 6: Set up Tax Groups (only required if tracking taxes)
Expensify imports NetSuite Tax Groups, which you can find in NetSuite under Setup > Accounting > Tax Groups.
Tax Groups are an alias for Tax Codes in NetSuite and can contain one or more Tax Code (Please note for UK and Ireland subsidiaries please ensure your Tax Groups do not have more than one Tax Code). We recommend naming Tax Groups so they are easily understood by your employees (both the name and rate will display in Expensify)
Ensure Tax Groups can be applied to expenses by going to Setup > Accounting > Set Up Taxes and set the Tax Code Lists Include preference to "Tax Groups And Tax Codes" or "Tax Groups Only" (if this field does not display then it does not need to be set for that country)
Step 7: Connect Expensify and NetSuite
Log into Expensify as a Policy Admin and go to Admin > click on [Policy Name] > Connections > NetSuite. Click the radio button next to Connect to NetSuite and enter a NetSuite User ID (email) and NetSuite Account ID. You must create the connection using a NetSuite account with an administrator role.
You will need to enter the NetSuite Account ID associated with the environment you are choosing to connect with. The Account ID can be found in NetSuite by going to Setup > Integration > Web Services Preferences.
Click Connect to NetSuite. You can choose whether you want to connect to your production or sandbox environment.
Next, log into NetSuite using your administrator credentials. If you have multiple NetSuite user accounts, you will need to select the Administrator role. The administrator credentials are only required to establish the initial connection, per NetSuite's documentation.
Finally, you will be redirected to the NetSuite dashboard. Immediately Sign Out of NetSuite. You will be sent back to the Connections page in Expensify. The NetSuite connection will be synced and the Configuration dialog will open.
If you are experiencing issues after following these steps take a look at our NetSuite Troubleshooting page. If you cannot resolve the issue email email@example.com to reach our customer success team and they'll help you out.
Configuring the NetSuite Integration once Connected
Now that the policy is connected to NetSuite, click Configure on the Connections page in Expensify to choose how NetSuite information will be coded in Expensify and how expense reports will be exported to NetSuite.
The Coding settings are where NetSuite information is configured for Expensify so employees can code expenses and reports accurately.
Expensify's integration with NetSuite automatically imports NetSuite Expense Categories as Categories in Expensify. To set Category Rules (e.g. receipt requirements or comments) go to the Categories page in the policy. Expenses can be automatically categorized to Expense Categories using Auto-Categorization.
The NetSuite integration allows for NetSuite Customers, Projects, Departments, Classes and/or Locations to be set up as line-item expense classifications, which are called Tags in Expensify.
The NetSuite integration allows for NetSuite Customers, Projects, Departments, Classes and/or Locations to be set up as report-level classifications, which are called Report Fields in Expensify.
NetSuite Employee Default
The NetSuite integration allows Departments, Classes and/or Locations to be set according to the NetSuite Employee Default for expenses exported as both Expense Reports and Journal Entries. These fields will need to be set in the employee(s) record in NetSuite for them to be successfully applied upon export to NetSuite.
Our tax tracking feature allows you to apply a tax rate and tax amount to each expense.
- Only Tax Groups can be imported from NetSuite, if you are not currently using these then you will first need to set them up in NetSuite (Setup > Accounting > Tax Groups) - see step 5 in Configure NetSuite Settings above
- Go to the NetSuite connection configuration page (Admin > [Policy Name] > Connection > NetSuite > Coding) and Refresh the subsidiary list and the Tax option will appear
- Enable the Tax option, save and sync the connection and all Tax Groups setup for the connected NetSuite subsidiary will be imported into Expensify as Taxes
- After syncing, go to Admin > [Policy Name] > Tax to see the Tax Groups imported from NetSuite
- Use the enable/disable button to choose which taxes to make available to your employees
- Select a default tax to apply to the policy (this will automatically apply to all new expenses)
- For more details on Tax tracking see our help page
The Advanced settings are where functionality for automating and customizing the NetSuite integration can be enabled.
By enabling Auto-Sync Expensify will automatically update the policy when changes are made to expense categories, departments, classifications, locations, customers, tax groups, projects and employees. Auto-sync eliminates the need to manually update two records of truth and provides employees with up-to-date fields for coding expenses.
This option allows Expensify to import your employees from the selected NetSuite subsidiary and invite them to your Expensify policy. When new employees are imported to Expensify, an email informing them they have been added to the policy will be sent to their email address. The NetSuite approval workflows can also be imported into Expensify. By NetSuite convention, if no expense approver exists, Expensify will map to the supervisor.
Sync Reimbursed Reports
With this option enabled, anytime a report is reimbursed using Expensify Direct Deposit ACH the corresponding Bill Payment will be created in NetSuite. To enabled this feature, click on the toggle in the Advanced settings and select the appropriate account for the Bill Payment transaction. The selected account will need to match the default account for Bill Payments in NetSuite.
Reimbursable Expenses: Expense Reports
Expensify transactions will export reimbursable expense as Expense Reports. Expense Reports will post to the payables account specified in NetSuite. In some cases you may want to change this to credit a different account.
The steps to do this in NetSuite OneWorld are the following:
1. Navigate to Setup > Company > Subsidiaries
2. Click Edit on the subsidiary that you want to update
3. Click the preferences tab
4. Select the preferred account under Default Payable Account for Expense Reports
5. Click Save
The steps to do this in non-OneWorld are the following:
1. Navigate to Setup > Accounting > Accounting Preferences
2. Click Time & Expenses tab
3. Under Expenses section, there is a field for Default Payable Account for Expense Reports, choose the preferred account.
4. Click Save.
Reimbursable Expenses: Vendor Bills
Expensify transactions will export as vendor bills in NetSuite and will map to the subsidiary associated with this policy. Each report will post as a payable to the vendor associated with the employee that submitted the report. You can also set an approval level in NetSuite for the bills.
Reimbursable Expenses: Journal Entries
Expensify transactions will export as journal entries in NetSuite and will map to the subsidiary associated with this policy. All the transactions will post to the payable account specified in the policy. You can also set an approval level in NetSuite for the journal entries.
Non-Reimbursable Expenses: Vendor bills
Non-reimbursable company card transactions will post as a vendor bill payable to the vendor specified in the policy settings. If you want to export to a specific vendor for each credit card in NetSuite we support that in our company card export. You can also set an approval level in NetSuite for the bills.
Non-Reimbursable Expenses: Journal Entries
Non-reimbursable company card transactions will post to the payable account specified in the policy settings. Want to export to multiple credit card accounts in NetSuite? We support that in our company card export. You can also set an approval level in NetSuite for the journal entries and expense reports.
Exporting Reports to NetSuite
Reports are not automatically sent to NetSuite. You can trigger an export to NetSuite by navigating to the Reports page, checking the boxes for the reports you want to export and clicking Export To > NetSuite.
Once the reports have been exported, the NetSuite icon will show in the Exported column in the Reports table.
Finding Expensify Reports in NetSuite
Exported reports can be found in NetSuite by searching for the Expensify Report ID. Type the Report ID into the search bar at the top of the NetSuite page. You will see all entries containing that number.
There will also be a link back to the Expensify report in the "Created From" field of the record: