It is mandatory to set up your NetSuite account correctly before using Spendesk's native integration with NetSuite.
Please follow these steps:
Log into your NetSuite account with your Administrator credentials (important!)
Under Setup>Company Information find your NetSuite Account ID and save it somewhere as you will need it later on in the process.
Install the NetSuite Spendesk integration role bundle: Find the bundle under Customization>SuiteBundler>Search & Install bundles>Advanced, search for Production Account ID ā5762887ā. In search results select āSpendesk native integrationā and click "Install", a preview page will open, click Install again.
Under Setup>Users/Roles>Manage Users select the user that will be used to post expenses from Spendesk to NetSuite and add the following role for this user on the Access tab: āSpendesk native integrationā. If the role doesnāt appear in the dropdown, wait a few minutes until the bundle is installed.
Under Setup>Integration>Manage Integrations>New create a new integration for Spendesk to use:
Check TOKEN BASED AUTHENTICATION
Check TBA AUTHORIZATION FLOW and enter the following callback URL:
https://api.spendesk.com/api/oauth1/netsuite/redirect-after-consent
Uncheck AUTHORIZATION CODE GRANT under OAuth 2.0
Click Save and make sure you scroll all the way down on the resulting page.
Keep this page open as you will only be able to see your Client ID and Client Secret once. You can reuse the same Client ID and Client Secret in order to connect other Spendesk entities to NetSuite subsidiaries, so you may want to temporarily store these in a secure location.
NB: if at any time you need to reset your Client ID and Client Secret you can click Edit on your integration and then click Reset Credentials.Go to Spendesk and initiate the connection flow to NetSuite
NB: Wait. Did you think about your old non-exported transactions that you donāt want to see in NetSuite? We recommend that you select a date from which all transactions need to be exported to NetSuite. You can either export all transactions before this date manually via a file-based export (single-entry or double-entry) or you can use the Bookkeeping Date feature. Set Bookkeeping Date under Settings>Accounting>Bookkeeping Date and all transactions before that date will be hidden in the UI. This can only be done while you are on a file-based accounting integration - once you connect to NetSuite this date cannot be set or changed.Copy your NetSuite Account ID, Client ID and Client Secret in the modal on Spendesk and click Connect. STOP HERE UNTIL YOU READ THE NEXT POINT!
Log into NetSuite with the credentials of the user you selected above (the one you assigned the role to) and select the āSpendesk native integrationā role before clicking Allow (Important!). Note: the page NetSuite displays is counterintuitive, make sure you are not connecting Spendesk with Administrator role.
A subsidiary selection modal appears - select the NetSuite subsidiary you want to connect to.
Once successfully connected it is time to check that all your standard and custom NetSuite segments are mapped to an analytical field in Spendesk. Check which ones from Class, Department, Location, Expense Category and custom segments you would like to use and create an analytical field for each of those on Settings>Analytical fields (or ask your Spendesk Onboarding Manager to create them). When creating an analytical field through Spendesk UI at least one value is mandatory - enter āXā and click āCreate the analytical fieldā, then delete the value āXā. There should be no values in the analytical field - they will be pulled automatically from NetSuite. No values should ever be added through Spendesk UI (except Cost Centers on Settings>Cost centers). Only the values that the integration pulls from NetSuite can be used for exports.
Note: Do not name a custom fieldTeam
.Map the newly created Spendesk analytical fields to corresponding NetSuite segments under Settings>Accounting>Analytical fields. Note: For Class, Department and Location the mapping dialog will ask if the field should be exported on each line-item, in transaction body or both:
You can check this in your NetSuite account by navigating to Setup>Accounting>Accounting Preferences. If the corresponding checkbox ALLOW PER-LINE DEPARTMENT/CLASSIFICATIONS/LOCATIONS is checked then this segment needs to be exported on each line-item. Otherwise (unchecked) - in the transaction body. Note: if ALLOW PER-LINE LOCATIONS is not visible, it means it is checked and hidden.
Custom segments (other than Class, Department and Location) are sent both in the transaction body and repeated on each line-item.
Note: We recommend to not map Spendesk Cost centers to NetSuite Departments in the beginning. Create an analytical field Department and map it to NetSuiteās Department. If the customer uses Cost centres, they need to be created manually in Spendesk. Since every cost center has to have an approval flow defined, the integration is not able to create cost centers automatically. If Cost center field is mapped to a NetSuite custom field (e.g. Department), then Spendesk will try to match Cost centers in Spendesk with Departments in NetSuite. That is why it is important that cost centers in Spendesk are named exactly the same as Departments in NetSuite.
Note: Custom segments in NetSuite have nested values. For example, if a department is calledMarketing
with parent =France:Operations
, then the right value for the cost center in Spendesk isFrance:Operations:Marketing
.Now, click Refresh accounting settings under Settings>Accounting>Accounting integration. This will pull existing values of the segments from NetSuite to the analytical fields in Spendesk. In other words, you do not need to manually populate values of analytical fields in Spendesk - they will be automatically populated once a mapping is in place.
For each non-standard custom segment (i.e. other than Class, Department, Expense Category and Location) you would like Spendesk to support, grant the following permissions to āSpendesk native integrationā under Customization>Lists, Records, & Fields>Custom Segments:
Configure your bank accounts by navigating to Settings>Accounting>Bank accounts.
If you would like your card purchases to be exported under a specific vendor (e.g. Miscellaneous or Spendesk), you can configure this on Settings>Accounting>Accounting Integration by enabling the ādefault vendorā toggle and selecting the corresponding NetSuite vendor:
If some of your Spendesk suppliers havenāt been automatically mapped to a NetSuite vendor, you can manually select a NetSuite vendor in the dropdown list on Settings>Accounts payable: