Loader

 

V9 - QuickBooks automated sales tax: Handling tax-exempt customers in SOS


 

SOS Inventory accounts that sync with QuickBooks Online and use its automated sales tax feature can manage the status of non-taxable (as well as taxable) customers within SOS.

 

SOS Inventory enables the Taxable field of the customer Edit page (Quick add > Sales > Customers) by default. If you uncheck the Taxable box, a new field appears: Tax exempt reason.

 

If a customer is tax-exempt, selecting the Tax exempt reason is required. As is true for any tax-exempt customer in SOS Inventory (even those who do not use QuickBooks’ automated sales tax), the checkboxes in the Tax column on sales transactions are grayed out. SOS will not add any sales tax, regardless of what is selected in the Tax code or entered in the Tax % fields.

 

Specifying the reason for a customer's tax exemption also applies to customer bulk edits/imports and API POSTs/PUTs. In these cases, you must provide a TaxExemptReasonId code, which maps to a recognized tax exemption reason in QuickBooks Online.

 

Refer to the chart in the section below, Tax exempt reason field options and TaxExemptReasonId codes.

 

Tax exempt reason field options and TaxExemptReasonId codes

The Reason Description column in the chart below shows the options available for the Tax Exempt Reason field in the Customer definition.

 

The chart’s ID column shows their corresponding number codes—the TaxExemptReasonID, which must be used for customer bulk edits/imports and API POSTs and PUTs. If you are performing a customer bulk edit/import or use API, also review the section Designating tax exempt reasons in customer bulk edits/imports and API for additional important information.

 

ID Reason description
1 Federal government
2 State government
3

Local government

4

Tribal government

5 Charitable organization
6 Religious organization
7 Educational organization
8 Hospital
9 Resale
10 Direct pay permit
11 Multiple points of use
12 Direct mail
13 Agricultural production
14 Industrial production / manufacturing
15 Foreign diplomat
99 Other

 

 

Designating tax-exempt reasons in customer bulk edits/imports and API

Customer bulk edits. If FALSE is entered in the Taxable field for a customer, you must specify the reason by entering a number code in the TaxExemptReasonId column of your spreadsheet.

  • Enter the appropriate ID number in the TaxExemptReasonId column. Do not enter the description.
  • Through March 31, 2026, if no TaxExemptReasonId is provided for a non-taxable customer, SOS Inventory will automatically default the reason to 99 (Other). Starting on April 1, 2026, all imports with non-taxable customers that do not include a TaxExemptReasonId will fail. This field is considered mandatory.
     

API POSTs/PUTs. Whenever you POST or PUT a customer with Taxable = false, you must also provide a valid TaxExemptReasonId.

  • Important: TaxExemptReasonId must be passed as a string containing a numeric value (e.g., "4" or "99"), not as an integer.
  • Through March 31, 2026, if no TaxExemptReasonId is provided for a non-taxable customer, SOS Inventory will automatically default the reason to "99" (Other). Starting on April 1, 2026, all POSTs and PUTs for non-taxable customers without a TaxExemptReasonId will be rejected with a 400 Bad Request error.
     

Changing a customer’s tax status

If a customer’s tax status changes, you can make that change to the customer definition in SOS Inventory (either individually or via a bulk edit) or make the update in QuickBooks Online. The change(s) made in one application will sync to the other.

 

 

Was this information helpful?