All Collections
⚙︎ Integrations with accounting software
Netsuite native integration
FAQ : questions you might have on NetSuite Integration and troubleshooting🏆
FAQ : questions you might have on NetSuite Integration and troubleshooting🏆
Updated over a week ago


Approval flows

Is it possible to keep both NetSuite approval flows and Spendesk's ?

We advise that you deactivate existing approval flows in NetSuite and utilize Spendesk's to prevent conflicts. As you process requests in Spendesk, it is more appropriate to establish approval flows directly within the Spendesk platform before payments are made. In certain specific cases, it may be relevant for you to maintain an existing approval flow in NetSuite, with a mandatory Requestor field on your Standard forms.

Some clients have successfully created NetSuite approval flows with a specific bypass option for payables processed through Spendesk that have already been approved.

You can consult your NetSuite integrator to explore and assist in setting up this option. The configuration would likely look as follows:


I would like to export some expenses manually while still being connected to NetSuite, is it possible ?

To prevent duplicates in the export, it is not feasible to retain both options. When connected to NetSuite, you will forfeit the ability to manually export expenses in the Export tab. However, in specific cases where you are unable to export payables as desired, you can choose to mark them as "Manually exported." This action will remove them from the list of payables intended for export.

I have been informed that if a supplier in Spendesk is not mapped to a NetSuite vendor, the related payables won't be exported. However, I do not want to register all the restaurants I go to as specific vendors in NetSuite. What can I do?

You are correct: suppliers and vendors need to be linked for payables to be exported. In this specific case where you don't want to create a specific vendor in NetSuite, you have the option to use the Miscellaneous Vendors account in NetSuite for all card payments.

This can be activated on the Settings > Accounting page, just under the Switch integration drop-down.

I want to connect my sandbox, but I am afraid that I will lose some payables that I won't be able to export twice. What can I do?

You won't be able to export the same payables twice. Consequently, payables exported to your Sandbox can't be exported a second time in your production environment. We advise that you discuss this with your account manager, who has the ability to manually export some payables for you. This will allow you to export them manually to your NetSuite production environment while testing the export through the integration on your Sandbox. This manual export can only be performed by your account manager and strictly before you connect NetSuite.

I don’t understand why card payments are not exported in their original currency. Is there anything that can be done ?

Card purchases are always exported in the wallet' currency.

Exporting card purchases in the original (payment) currency is not possible due to the exchange rate. If we export card payables in the original currency, Netsuite will convert the amount to its base (G/L) currency using the internal Netsuite exchange rate. However, this is not exactly the exchange rate Spendesk will use. Consequently, when reconciling Bill Payments and Spendesk account statements, they may not reconcile due to small differences in exchange rates between Spendesk and Netsuite.

For invoices, a specific toggle can be activated by your account manager to export them in their original currency, especially if you intend to pay them outside of Spendesk. This will not impact reconciliation.

What will happen with expenses prepared but not yet exported that are in the export Tab the day I switch to Netsuite ?

As switching to Netsuite implies collecting master data from Netsuite, the previous data registered in Spendesk will be replaced. For this reason, all expenses in the “Export” tab that have not yet been exported will move back to the “Prepare” tab, as we receive new master data from NetSuite, which may differ from the information you manually entered before (e.g., charts of accounts, suppliers, etc.).

To avoid the need to re-enter this information, all you have to do is export the expenses that have already been prepared before transitioning to the Netsuite integration.

Am I going to lose all settings when I switch back to file-based exports?

The following settings remain unchanged when switching to file-based exports:

  • suppliers (”Supplier name” column retains its values):

  • analytical fields

  • cost centers

  • custom export templates that existed before switching to Netsuite Switching from Netsuite to file-based exports leads to losing these settings:

  • expense accounts

  • VAT accounts

  • Bank accounts

  • Employee accounts

  • Supplier accounts (”Account payable” column becomes empty)

What about payables that are out of the accounting period ?

NetSuite has a feature to allow posting in the current period (or the next open period) even if posting date falls into a closed period.

Setup>Accounting>Accounting Preferences: By allowing this, expenses that are from a previous period and that are exported later on, will be posted on the current open period.

Can I export payments without preparing and exporting a payable?

The preparation of payables is no different from what it is with a file-based export. For this reason, as of today, it is not possible to export payments without previously preparing and exporting the related payable.

If I export a payable without a receipt, will the receipt be exported later if attached a posteriori?

If you export the payable without a receipt attached but that the receipt is attached a posteriori, this receipt won’t be pushed to NetSuite as the export of a receipt is directly linked with the payable. For this specific case, we invite you to upload your receipt directly in NetSuite manually.

My settlements are not exported, what can I do ?

There are many reasons for which settlements might fail to export. Before all, you should check:

- on Spendesk's side that you have selected a bank account to export them on Settings > Accountings > Bank Accounts.

- on NetSuite's side check that “Standard Bill Payment” is the preferred form for Bill Payments in Setup > Users/Roles > Manage Roles > "Spendesk native integration" (Forms subtab). You can then click Refresh settings on Settings>Accounting on Spendesk. Once you have checked this, if you still encounters errors check the specific error message to get insights on what has gone wrong. One frequent case is when the settlements were previously exported via a bank journal download (before connecting to NetSuite). In this case we can’t re-export the settlement to NetSuite in order to avoid double accounting.

What can I do with expenses that I don’t want to push into Netsuite ?

For some reasons, you might not want to push some expenses into NetSuite that you have prepared. If you want to remove these expenses from the Export Tab, you can click on them so that a bouton will be displayed to allow you to “Mark it as manually exported”.

Expense accounts, cost centers and categories

Expense categories are linked in NetSuite to a specific expense account, will I still need to select an expense account in Spendesk ?

As opposed to NetSuite, Spendesk allows the same expense category to be linked to different expense accounts. Based on our discussions with clients, this is an option they do not want to lose while using Spendesk. Maintaining this option requires continuing to request the expense account even if the expense category has already been selected.

For all transactions, excluding expense reports, you will still need to select an expense account in Spendesk, even if you have selected an expense category already linked to an expense account in NetSuite. When importing to NetSuite, the expense account selected in Spendesk will be considered, and not the one linked in NetSuite.

For expense reports, thing are different as the standard form for Expense Reports in NetSuite doesn’t have a field for Expense Account but only for the Expense Category. In this case, the expense account will be determined based on the Expense Category, directly in NetSuite.

Do I have to match NetSuite departments with Spendesk cost centers?

You do not have to match NetSuite departments with Spendesk cost centers and it is something we do not advise you to do. Indeed, cost centers are handled differently than other analytical fields. Since a cost center has an owner and a co-owner defined in Spendesk, the integration is not able to create new cost centers automatically.

If you do map Cost centers with Department, then we will try to match departments coming from NetSuite with cost centers in Spendesk.

Matching values will get a NetSuite internal ID stored in the database.

Values that didn’t match any NetSuite value cannot be used to export payables to NetSuite. No new cost centers will be created.

N.B.: Custom fields in NetSuite have nested values. For example, if a department is called Marketing with parent = France : Operations, then the right value for the cost center in Spendesk is France : Operations : Marketing.

The alternative option we recommend is for you to create a dedicated “Department” analytical field in Spendesk to match with NetSuite departments. This way your list of departments from NetSuite will be imported into Spendesk.


Is SuiteTax supported by your integration ?

For now, SuiteTax is not supported by our integration.

What is the difference between an AP account and a vendor?

A NetSuite vendor is a NetSuite item in which are stored different data about one of your supplier, whereas the Account Payable is the accounting in which the payable related to this supplier will be bookept.

How can I reconcile payments at the end of the month ?

NetSuite offers a special feature to help you reconcile payments at the end of the month. You will find it in Transactions>Bank>Match Bank Data. There, you can upload your account statement you have previously downloaded from Spendesk in Settings>Your Wallet>Account Statements.


You have tried everything but for an unknown reason you are still struggling to connect or to export?

NetSuite native integration with Spendesk implies sometimes to deep dive in some specific tabs.

As we know sometimes that you don’t have an integrator by your side, we prepared this troubleshooting guide for you. It aims at listing the most common set-up use cases where you may need support. And if you still have some queries, our CS team stays as always at your disposal to help you unlock situations.

Issues when trying to connect: role, users, and access tokens

When troubleshooting a connection issue, the first step is to check if you're properly connected with the correct role ("Spendesk native integration"). Frequently, the selection of "Choose role" is neglected on the connection screen.

For context, when you install our bundle during the connection process, NetSuite creates a new role. A role is a defined access configuration which include sets of permissions for viewing and editing data. The role we need is called "Spendesk Native Integration". It assigns all required permissions to it so that Spendesk can upload data on NetSuite. Additionally, NetSuite makes standard transaction forms preferred for this role (more on forms here). Finally, we ask you to attach this role to a NetSuite user.

The easiest way to check how Spendesk was connected to NetSuite is by looking at access tokens (Setup > Users/Roles > Access Tokens).

What is a token ? An authentication token (security token) is a “trusted device” used to access NetSuite. It can be seen as an electronic key that enables a user to authenticate and prove his identity by storing some sort of personal information.

The "Application" column contains the name of the Integration that was created during the connection process. Therefore, the lines that have something to do with "Spendesk" in the "Application" column are the ones we are interested in. As new access token is created every time you connect Spendesk to NetSuite, there should be as many "Spendesk" lines as there are connections (from the Spendesk entity to the NetSuite subsidiary).

Checking the User and Role columns can help you determine two things:

  1. Whether the correct role was chosen when connecting.

  2. Whether the role was attached to the correct user.

If you see that the role is not "Spendesk native integration" (e.g. Administrator or Accountant) or that the user is not the one performing exports, then they need to disconnect in Spendesk and reconnect again.

⚠️ Notice that there is usually a very limited number of tokens that can exist at the same time, so it's always a good idea to clean them up. Unused access tokens can be revoked by going to Edit > Revoke. ⚠️

A last thing before you go, have you check your SOAP Web Services and Token based authentication toggles?

Sometimes these two settings are not configured and it causes issue when trying to connect. You can check that they are enabled under under Setup>Company>Enable Features, on the SuiteCloud tab. In such case the connection cannot be established between Spendesk and Netsuite despite doing everything else right.

Issues while trying to export: setup of forms, mapping of analytical fields and segments, mapping level, mapped currency…

💡 What is a form in NetSuite ?

Forms are the pages used to enter information into the NetSuite database.

Essentially, it defines the fields that are visible when entering a new transaction. For example, when entering a Bill, the fields that are visible change depending on the selected form.

The “standard” set of forms provided with a NetSuite account can be customized to better suit needs but the customization possible is quite limited. That is why you can also create different “custom” forms and saved them in NetSuite. The form that will be chosen to upload a given transaction will be the one defined as the “preferred form” for this kind of transaction: it can be a standard form or a custom form.

🔎 Check that Standard transaction forms are set as preferred form

The installation of our bundle should automatically make Standard transaction forms as the preferred forms for the "Spendesk native integration" role.

These are the forms we advice you to choose as our integration has been designed to ensure full compatibility with them.

The bundle sets the following five forms as preferred:

  • Standard Vendor Bill for Bills

  • Standard Vendor Credit for Bill Credits

  • Standard Bill Payment for Bill Payments

  • Standard Expense Report for Expense Reports

  • Standard Journal Entry for Journal Entry

What we noticed is that sometimes there is no preferred form for Bills setup, which means that our exports default to some custom form.

Check that the Standard Vendor Bill form is set as Preferred for Bills.

To access it, go to Setup > Users/Roles > Manage Roles > "Spendesk native integration" (Forms subtab):

💡 Sometimes, standard forms are inactive and NetSuite does not designate a form as preferred for the "Spendesk native integration." This can cause exports to fail. You can either make standard forms active again and designate them as preferred for the "Spendesk native integration" role, or make other custom forms preferred.

🔎 If you want to use custom forms, check that they are supported by the integration

Standard forms cannot be customized at the form level (meaning by entering the settings of the form itself). However it is possible to edit the settings of the fields Class, Department, and Location in order to decide if these fields should be mandatory or optional for standard forms, or if you want them at the line item level. Other custom segments can be applied to transaction forms at either body/transaction level or line level (please refer below to “Check that the mapping level is the one expected” for more details on body level and line level).

These limitations of how standard form can be customized makes that very often custom forms are being created in NetSuite (e.g. "Spendesk - Vendor Bill") with specific fields.

**However Spendesk is unable to adapt to each custom form created.

The following are the only four customizations that we support** for NetSuite exports:


  • Send Class per line, in transaction body or both

  • Send Department per line, in transaction body or both

  • Send Location per line, in transaction body or both

  • Send other custom segments in the transaction body and repeat on each line if they are mapped to a Spendesk analytical field

Once these settings are configured, they will be applied to all 5 exported transactions: Bills, Bill Credits, Bill Payments, Expense Reports, and Journal Entries. Therefore, these 5 transaction forms must have the same custom segments on them.

Note: Bill Payments do not have expense lines (so all segments are exported in the transaction body irrespectively of the customization in Spendesk).

🔎 Check that your mapping between Spendesk and NetSuite is correct

Spendesk analytical fields can be mapped with their NetSuite equivalent called Segments in Settings>Accountings>Analytical fields.

On NetSuite side we have to make a distinction between :

- Class, Department, and Location which are default Segments all customers have access to - they are often referred to as “Classifications” ;

- Custom Segments which can be created by each customers and will be as a result different for all customers These custom segments can be integrated both to Standard forms and to custom forms.

The important thing for everything to work well is simply to ensure that your setups are similar both on NetSuite and Spendesk.

You need to make sure that the Segment you have mapped is expected on the preferred form or, as opposite, that you have mapped all mandatory segments in your forms with Spendesk analytical fields

If the custom segment is expected on the transaction form (and is mandatory) but is not in the export, NetSuite will throw an error. Likewise, is you are sending a Segment that is not on the form, NetSuite will throw an error.

You can check which field are mandatory by looking at all the fields with a red star in the Expenses and Items tab of a Bill for example, as in the example below:

Expense lines with mandatory Department, Class and Location fields

If your mapping is incorrect, meaning that you either try to send a value that is not expected or that you are not sending a mandatory value, you might have an error message of the following kind:

You do not have permissions to set a value for element expense.location due to one of the following reasons: 1) The field is read-only; 2) An associated feature is disabled; 3) The field is available either when a record is created or updated, but not in both cases.

Here the error message specifically states that the Location is not expected in the form it is sent to.

There are two possible solutions:

  • Stop sending the Location per line by unchecking the “on each line” checkbox in the field mapping in Spendesk;

  • Add the Location field to the preferred form of the “Spendesk native integration” role on NetSuite by going to Customization>Forms>Transaction Forms.

🔎 Check that the mapping level is the one expected

In summary, all five transaction forms must comply with the four customizations available in Spendesk. While Standard Forms are the default preference, any other form can be manually set as preferred. To do this, navigate to Setup > Users/Roles > Manage Roles > Edit "Spendesk native integration" role > Forms subtab.

The goal is always the same: to ensure that preferred forms setup in Spendesk conforms to the customization set up in NetSuite. This includes the Class/Department/Location per line or in the transaction body, as well as other required custom segments in the transaction body.

Did this answer your question?