Skip to main content

Error messages and frequently asked questions on NetSuite integration

Updated this week

When using our NetSuite native integration, you may occasionally encounter error messages during the export process. These messages are designed to help you quickly identify and resolve issues with your accounting setup and prepared payables. Common reason types for export failures include:

  • Authentication and connection errors

  • Accounting settings errors

  • Failed export errors

How to resolve export errors

For a comprehensive guide on setting up and troubleshooting your accounting integration, please refer to our detailed article on Main error messages and solutions with native integrations.

Most export issues can be resolved by reviewing and updating your accounting settings. Each error message provides specific guidance on what needs to be corrected.

What to do if you are still blocked

If you encounter persistent errors or need additional assistance with our NetSuite integration, don't hesitate to contact our support team.

How to fix common export issues

You can face export issues with NetSuite integration blocking you to get successful exports. It may have different root causes. Here a short guide of steps you can follow.

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'.

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.

Check that custom forms 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 in the section 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 > Accounting Setup > Mapping.

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.

It is important to ensure that your setups are similar 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.


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.

Frequently asked questions

You also might have specific questions related to NetSuite or the NetSuite integration. We do not have all the answers and we recommend you to reach out your NetSuite integrator for further needs as NetSuite is a very complex and powerful accounting software.

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 understand 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?

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 Settings > Accounting Setup > Accounting integration, just under the Switch integration dropdown.

I want to connect my sandbox, will I lose some payables or will they be exported twice?

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 Customer Success Manager, before you connect NetSuite with Spendesk. This will allow you to export them manually to your NetSuite production environment while testing the export through the integration on your Sandbox.

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.

What about payables that are outside the current accounting period?

First of all, make sure the invoice/expense date on your payable is correct - this error happens often due to simple typos.

Then, make sure this date falls into a valid and open accounting period (Setup > Accounting > Manage Accounting Periods) and a tax period (Setup > Accounting > Manage Tax Periods) in NetSuite. If your expense date is before the current accounting period, you may want to post it to the current accounting period anyway. NetSuite has a feature to allow posting in the current period (or the next open period) even if the posting date falls into a closed period. Under Setup > Accounting > Accounting Preferences allow transaction date outside of posting period. If you do not want to allow this, mark this expense as exported and manually create it in NetSuite.

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 uploaded to Spendesk after export?

If you export the payable without a receipt attached and then later attach the receipt to Spendesk, 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 failed to export, what can I do?

There are many reasons for which settlements might fail to export. The first thing to do is check the export error that's given on the failed settlement export and to follow any advice given in that message before retrying the export.

If that does not fix your failed export, you should also 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'. You can then click Refresh accounting settings on Settings > Accounting Setup > Accounting integration on Spendesk.

What can I do with expenses that I don’t want to export into NetSuite?

For some reasons, you might not want to export certain 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 button will be displayed to allow you to “Mark it as manually exported”.

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.

Note: 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 it possible to keep both NetSuite approval flows and Spendesk approval flows?

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.

Why can't I use 'Other current liability' accounts from NetSuite as accounts payable in Spendesk?

NetSuite doesn't allow creating Bills, Expense Reports or Bill Payments using this type of accounts. You receive the following error message if you try: "Invalid account reference key 535 for subsidiary 5."


Only accounts of type "Account payable" are accepted by NetSuite. This is why we no longer make accounts of type "Other current liability" available as accounts payable in Spendesk. Note that "Other current liability" accounts will still appear under Expense accounts in Spendesk.

How to solve the error 'You do not have permissions to set a value for element tranid'?

This can happen no matter the kind of expense you are try to export. It is often linked to the fact that you didn’t allow the override of auto-generated numbers in NetSuite. To solve this, please follow the steps:

  • You need to go under Setup > Company > Auto-Generated Numbers.

  • On this page, go to the sub-tab Document Numbers and make sure that Allow override is checked for 'Invoice', 'Expense report', 'Payment'.

Once this is done, you can retry your export. You should now have permissions to set a value for tranid and your export will succeed.

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

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

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.

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.

If you come across other issues with our NetSuite native integration, you can contact our customer support team using the chatbot.

Did this answer your question?