Docschargebeedocs

HomeBillingPaymentsRevRecGrowthReveal
Support

Product Updates


  • Release Notes

Getting Started


  • Overview
  • Chargebee Billing Data Centers
  • Object Relationship Model
  • Understanding Sites
  • Chargebee Tech Glossary
  • Articles and FAQ

Implementing Chargebee


  • Implementation Guide
  • Go-live Checklist
  • Articles and FAQ

AI in Chargebee


  • Chargebee Agents
  • Chargebee Copilot
  • Chargebee MCP Server (Model Context Protocol)

Developer Resources


  • Developer Resources Overview
  • Articles and FAQ

Product Catalog


  • Product Catalog Overview
  • Coupons
  • Articles and FAQ

Subscriptions


  • Working with Subscriptions
  • Billing
  • Orders
  • Articles and FAQ

Customers


  • Managing Customers
  • Account Hierarchy
  • Email Notifications
  • Branding
  • Configure Multiple Languages
  • Articles and FAQ

Entitlements


  • Entitlements Overview
  • Features Overview
  • Feature Management
  • Managing Product Entitlements
  • Subscription Entitlements
  • Customer Entitlements
  • Grandfathering Entitlements
  • Articles and FAQ

Usage Based Billing


  • Understanding Usages
  • Setting up Usage Based Billing
  • Usage Alerts
  • Metered Billing
  • Articles and FAQ

Chargebee CPQ


  • Chargebee CPQ
  • Chargebee CPQ for Salesforce
  • Chargebee CPQ for HubSpot

Invoices, Credit Notes, and Quotes


  • Invoices
  • Credit Notes
  • Quotes [Legacy]
  • Transactions
  • Articles and FAQ

Taxes


  • Overview
  • Configuring Taxes
  • Country-specific Taxes
  • Articles and FAQ

Hosted Capabilities


  • Overview
  • Hosted Checkout
  • Hosted Self-Serve Portal
  • Hosted Pages Features
  • Additional Hosted Pages
  • Payment Components
  • Pricing Table
  • Managing Payments with Chargebee.js
  • Mobile-Optimized Hosted Pages
  • Articles and FAQ

Site Configuration


  • Users & Roles
  • Custom Fields & Metadata
  • Approvals
  • Mandatory Fields
  • File Attachments & Comments
  • Advanced Filter Options
  • Multicurrency Pricing
  • Multi-decimal Support
  • Configuring Reason Codes
  • Events and Webhooks
  • API Keys
  • Time Zone
  • Time Machine
  • Transfer Configurations
  • Articles and FAQ

Multi Business Entity


  • Multi Business Entity Overview
  • Customer Transfer Overview
  • Articles and FAQ

Mobile Subscriptions


  • Overview
  • Omnichannel Subscriptions
  • Omnichannel One-Time Orders
  • Mobile Subscriptions (Legacy)

Reports and Analytics


  • RevenueStory
  • Home Dashboard
  • Frequently Asked Questions
  • FAQs for Classic Reports Sunset
  • Articles and FAQ

Integrations


  • Sales
  • Customer Support and Success
  • Finance
    • QuickBooks Online
    • Xero
    • Sage Intacct
    • Oracle NetSuite
      • Setting up Token-based Authentication in NetSuite
      • Configuring Oracle NetSuite
      • Record Mapping in Oracle NetSuite
      • Configuring Multiple General Ledger (GL) Accounts in NetSuite for Discount Mapping in Chargebee
      • Sync Log Dashboard for NetSuite
      • Tax handling in Chargebee - NetSuite Integration
      • Objects and fields mapped between Chargebee and NetSuite
      • Common sync errors in Oracle NetSuite
  • Tax
  • Marketing
  • Stitch
  • Collaboration
  • Contract Management
  • Ecommerce Management
  • Articles and FAQ

Data Privacy & Security


  • Two Factor Authentication
  • SAML Single Sign-On
  • System for Cross-Domain Identity Management (SCIM)
  • EU-GDPR
  • Consent Management
  • Personal Data Management
  • Compliance Certificates
  • HIPAA Guidelines
  • PCI Recommendations and Integration Types
  • Articles and FAQ

Data Operations


  • Bulk Operations
  • Migration
  • Articles and FAQ
  1. Billing
  2. Integrations
  3. Finance
  4. Oracle NetSuite
  5. Tax handling in Chargebee - NetSuite Integration
  1. Billing
  2. Integrations
  3. Finance
  4. Oracle NetSuite
  5. Tax handling in Chargebee - NetSuite Integration

Tax handling in Chargebee - NetSuite Integration

Overview

NetSuite application offers Legacy Tax and SuiteTax modules to help simplify tax calculations. Currently, as part of the NetSuite Integration, we integrate 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 the customer's region to map taxes based on their location if a tax applies to the customer. If a tax is not applicable, Chargebee creates invoices without any tax details. The following flowchart displays the flow of tax sync workflow between Chargebee and NetSuite. It helps you understand how taxes are mapped based on different regions.

image

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

SuiteTax

This feature is enabled on request. 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. The SuiteTax engine is a bundle installed in NetSuite where the tax calculation occurs within NetSuite. It can also add localization tax for regions such as India. If the customer uses SuiteTax and installs the bundle for each region, 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 these steps 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
      image
    • 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.
      image
  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. You should create a tax agency (according to NetSuite's guidelines) for creating tax codes in NetSuite.

  3. For other regions, you must manually perform Chargebee-NetSuite tax mapping. 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.

    image

If tax mapping is not available for a specific country, 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.

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

To create the tax codes in NetSuite, follow these steps:

1. Create a Tax Control Account and Tax Type

To create a Tax Control Account and Tax Type in NetSuite:

  • 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 a Tax Agency in NetSuite:

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

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

    image
  • The naming format of the Vendor: <TAX_JURISDICTION>_<TAX_JURISDICTION_TYPE>_Tax

    • For the example shown above: <TAX JURISDICTION> = CALIFORNIA and <TAX_JURISDICTION_TYPE> = STATE" followed by "_Tax
    • If the concatenation is greater than 83 characters, 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.

    image

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 is shown below: CB_<TAX JURISDICTION>_<TAX JURISDICTION TYPE>@<RATE>
  • 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.
image

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 groups:

CB_US_<STATE>@<RATE>

  • 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
      image
  • The tax group is passed into the invoice line item of the "Tax Code" column:
    image
  • For other countries, follow these steps 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 tax information. We recommend having a NetSuite consultant for detailed configuration of the tax module within NetSuite based on your business needs.

SuiteTax in NetSuite

This feature is enabled on request. 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 NetSuite for each line item
  • Overrides Chargebee's tax rate and amount if they differ from Chargebee's invoice

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

Articles & FAQs

What is Suite Tax? What are it's uses?
Why is the discount item not calculated correctly? - NetSuite
How to create a non-posting discount item? - Netsuite
Netsuite SuiteTax - The record you are attempting to load has a different type: XXXX from the type specified: noninventorysaleitem.
'NetSuite request failed [Permission Violation: You need the Lists Documents and Files permission to access this page'
The record you are attempting to load has a different type: XXXX from the type specified: noninventorysaleitem - Netsuite SuiteTax

Show more

Was this article helpful?