Tax handling in Chargebee - NetSuite Integration 


NetSuite application offers Legacy Tax and SuiteTax modules to help simplify the tax calculations. Currently, as part of the NetSuite Integration, we are integrating with the tax module. SuiteTax replaces existing tax functionality (hereafter referred to as Legacy Tax), and these features are not built to coexist in a single environment.

Legacy Tax Sync Workflow 

In Chargebee, taxes are applied whenever an invoice is generated for a subscription, renewal, or a one-time charge. Chargebee checks for the customer's region to map taxes based on their location if a tax applies to the customer. If a tax is not applicable, then the invoices are created without any tax details. The following flowchart displays the flow of tax sync workflow between Chargebee and NetSuite. It helps understand how the taxes are mapped based on different regions.


If the customer's Chargebee account is integrated with Avalara for tax calculation in the NetSuite connector, then we support tax sync only for the United States (US) region. For other regions, it is recommended to use the Chargebee's Tax module.


Contact support  to avail this feature.

SuiteTax is a customization model offered by Netsuite. It automatically identifies the customer's shipping or billing information to calculate the taxes for each item in the invoice. SuiteTax engine is a bundle installed in NetSuite where the tax calculation occurs within NetSuite. It also can add localization tax for regions such as India. If the customer uses SuiteTax and installs the bundle for each region, then there are pre-defined taxes. The tax rates are created as part of the custom field, which is not loaded in the Standard Rate field.

Configure Taxes in Chargebee 

Follow the steps below to configure tax and manage tax mapping in Chargebee:

  1. While configuring the integration, under Manage Tax Mapping,

    • You can choose between SuiteTax and the Legacy tax module by enabling the toggle button

    • You can also enable the tax configuration to send tax information from Chargebee to NetSuite. If you do not enable this option, taxes will not be synced from Chargebee to NetSuite.

  2. For the United States (US) region, the tax codes and tax rates are passed to each line item and tax codes are created in NetSuite. A tax agency should be created (according to NetSuite's guidelines) for creating tax codes in NetSuite.

  3. For other regions, Chargebee-NetSuite tax mapping has to be done manually. The read-only tax codes are derived from the tax configuration in Chargebee and the options to list the tax codes are configured in NetSuite. The tax rates between Chargebee and NetSuite tax codes are mapped when invoices are synced for other countries.


If tax mapping is not available for a specific country, then Chargebee will look for the default Tax Code mapping and send them as part of each line item.

Configure Taxes in NetSuite 

For the US region, the NetSuite connector creates and maps the tax codes to each line item.

  • The tax codes are created under United States Nexus.
  • The tax codes and tax groups are created in NetSuite through this integration.
  • If a tax code and tax group are available already, then the existing data is used. Otherwise, a new tax code or tax group is created.

To create the tax codes in NetSuite, do the following:

1. Create a Tax Control Account and Tax Type

To create Tax Control Account and Tax type in NetSuite, do the following:

  • Tax Control Accounts are GL Accounts for Taxes. Create a Tax Control Account in Netsuite under Accounting > Tax Control Account > New.
  • Create a Tax Type in NetSuite under Accounting > Tax Type > New.

2. Create a Vendor (Tax Agency)

To create Tax Agency in NetSuite, do the following:

  • Navigate to List > Relationship > Vendor in your NetSuite account.

  • Before creating a Tax Code, a Vendor with the "Tax Agency" category should be created in Chargebee. See the screenshot below for example:

  • The naming format of the Vendor:


    • For the example shown above,

    • If the concatenation is greater than 83 characters then create the vendor name by
      fetching the jurisdiction code instead of the jurisdiction name.

      <tax_juris_code><TAX_JURISDICTION_TYPE><Tax format>
  • Associate a tax account to a Vendor by setting it up under the Financial module of your NetSuite account.

3. Create Tax Codes

  • To create a Tax Code in NetSuite, navigate to Accounting > Tax Codes in your NetSuite account.
  • The naming format for Tax Codes will be as shown below:

  • For the US region, Chargebee creates the tax codes. The following fields are passed by default:
    • Tax Name or ItemId
    • Rate
    • Tax Type
    • A subsidiary with the "include children" checkbox enabled
    • Tax Agency
  • Chargebee does not send a Tax Control Account. NetSuite assigns it by default.

4. Create a Tax Group

A Tax Group is used to combine multiple Tax Codes.

To create a Tax Group in NetSuite,

  • Navigate to Accounting > Tax Group in your NetSuite account.

  • Chargebee creates the Tax Group in NetSuite for the US regions.

  • The naming format for Tax Group:


  • Chargebee sends the following fields:

    • Tax Name or ItemId
    • Rate (Sum of the rate from tax codes)]
    • Subsidiary including children is checked
    • List of individual tax codes that make a Tax Group
  • The tax group is passed into the invoice line item of the "Tax Code" column :

  • For other countries, follow the steps below as part of the tax configuration:

    • Create Nexus for each country.
    • Create tax codes with the following details:
      • Tax Rate
      • Tax Agency
      • Tax Type
      • Available on (Both, Sales Transaction, or Purchase Transaction)
      • Subsidiary

The above setup is mandatory for Chargebee to send the tax information. It is recommended to have a NetSuite consultant for detailed configuration of the Tax module within NetSuite based on your business needs.

SuiteTax in NetSuite(Beta) 

Contact support  to avail this feature.

The following actions take place when the SuiteTax module is enabled in Netsuite:

  • Creates Invoice and Credit memo
  • Calculates the tax for each line item in the Invoice
  • Fetches the tax details (Tax Details Reference, Tax Type, Tax Code, Tax Basis, Tax Rate, Tax Amount) from the NetSuite for each line item.
  • Overrides Chargebee's tax rate and amount if they differ from Chargebee's Invoice

The tax code and other tax-related information for each line item are not updated since the SuiteTax engine does not allow override.

Was this article helpful?