Transaction processing overview

To calculate a tax result, Determination processes transactions in a specific sequence. This sequence takes into account multiple factors, such as the location of the transaction and any custom configurations that are unique to your business and customers.

How it works

Transaction processing begins when Determination receives a request to calculate tax for a transaction. The transaction data gets evaluated module-by-module, starting with TransEditors and ending with tax code qualifiers. The results from 1 module can be used by subsequent modules.
Next is the transaction processing sequence.

1 - TransEditors

TransEditors are customizable rules that modify XML input before a transaction's calculated for tax. Using TransEditors, you can modify the XML transaction data sent from your business source system to Determination based on the criteria you specify.

2 - Product qualifiers

Product qualifiers allow product taxability to be designated by your specific conditions. For example, you want to assign a clothing commodity code to each transaction that includes a specific GL and product code combination.
You can reference a product code or commodity code that's associated with a company when adding or editing a product qualifier. In the search list:
  • The available product codes are the product codes configured in your product mappings.
  • The available commodity codes are the commodity codes provided by your tax data provider or the commodity codes configured in your product mappings.

3 - Allocations

Allocations split individual line items into logical components and increase the accuracy of your tax liabilities.
For example:
  • Your company sells gift baskets with food and non-food items. Gift baskets get invoiced as 1 line item at $50.00 each. The food items are $30.00 and the non-food items are $20.00. Since food isn't taxable in many jurisdictions, you allocate 60% of the transaction to food and 40% of the transaction to a taxable product. Consequently, your tax liability's reduced.
  • Your company sells computers that have component parts from several sources in different jurisdictions. The invoice shows a single item valued at $1,000.00. The component parts include a monitor worth $300.00 shipped from California, a processor worth $500.00 shipped from Arizona, and network equipment worth $200.00 shipped from New Jersey. You allocate 30% to California, 50% to Arizona, and 20% to New Jersey. In addition, you take the 1 product code from the invoice and substitute 3 product codes. Consequently, the taxability's more accurate for your sales transactions.

4 - Locations

You can use these shortcuts rather than passing the complete location information (country, province, state, county, city, district, postal code, and geocode) in the transaction data sent from your business source system.
  • Locations:
    You can name and define individual locations.
  • Location sets:
    A location set can include 1 of each type of your defined locations. When an invoice gets created, you can specify that you want to use a location set to set the correct locations. For example, when ACME Widgets, Inc. ships widgets to the west coast for distribution, they ship them from a manufacturing plant in Massachusetts to a warehouse in California. When the widgets get shipped to the east cost for distribution, they ship them to a warehouse in Pennsylvania. A West location set and an East location set can be configured.

5 - Standard authorities

Authorities are government and (sometimes) private entities that assess and collect transaction taxes.
For example:
  • California (a U.S. state) collects a state sales and use tax.
  • British Columbia (a Canadian province) collects a provincial sales tax (PST).
  • Spain (a country) collects impuesto sobre el valor anadido (IVA), which is a value added tax (VAT).
Determination content provides data for worldwide tax authorities. You can use these authorities to meet your calculation needs, and you can add custom data to meet your business requirements. In addition, you can add custom authorities (for example, certain excise tax authorities) that aren't provided by Determination content.

6 - Custom authorities

You can configure custom authorities to handle industry or company specific transaction tax scenarios. Read this article for details.

7 - Date determination

The dates your business source system provides are converted by Determination to calculation-specific dates. To generate a tax calculation, the invoice date must be passed in the XML input. All other dates are optional.
If only the invoice date is passed, Determination uses either the default logic or your determination date configurations to determine the following:
  • Tax determination date
  • Tax exchange rate date
  • Tax point date
Date determinations include currency conversions, the application of rates, rules and exemption certificates, and all other date-specific validations and calculations.

8 - Exemptions and licenses

Exemption certificates allow you to correctly calculate tax on transactions when part or all of the transaction is tax-exempt.
Each exemption certificate:
  • Applies to a specific customer.
  • Is valid in 1 or more countries or related authority types or authorities (U.S. and international), or state or related authority types or authorities (U.S. only).
  • Is valid for a transaction that meets certain criteria, including a specific product or service.
  • Has an exemption amount or rate associated with the exempted product or service.
  • Can be valid for one or more transactions.
Licenses allow authorities to group customers that share common attributes. For example, you can designate a customer who is an exporter in Ireland as a member of the Class 13a Trader group, which is subject to specific tax treatment.
In most cases, there's a specific document or relationship between the license holder and a tax authority that must be tracked and managed. In Determination, you can manage the relationship of license types associated with a company to individual licenses on a per-licensee basis.
Exemption certificates can be used to specify tax treatment. The difference between exemption certificates and licenses is that licenses influence authority rule selection and the calculation method. Exemption certificates allow for full or partial exemption from tax for a transaction.

9 - Product mapping

Most often, internal product codes don't match the product codes used by Determination exceptions list. In Determination, you can use product mapping to cross-reference product exceptions to your source system's product codes. You can then apply product-specific rates and rules to each transaction.

10 - Custom rates and rules

Determination tax data includes standard rates and fees for each tax authority. These rates and fees get applied to documents using 1 or more tax rules. You can add custom rates, fees, and rules to either standard or custom authorities to meet your specific business requirements.

11 - Standard rates and rules

Determination tax data includes rates and fees for each tax authority. These rates and fees are applied to documents using 1 or more tax rules.
A tax rule can point directly to a rate code or it can point to a rate set that maps a material list or product to a rate code found in the rate set. Based on the rule, only 1 rate code per authority is applied.
Determination identifies the product being taxed after it determines the authorities with an interest in collecting tax on a transaction. Using the authority's tax rules, Determination then maps the product being taxed to a specific rate or treatment.
Using a tax rule, you can link products to tax rates or fees and calculation methods. You can take into account exemptions, special tax situations, withholding rates as well as unusual calculation processing and invoice descriptions.

12 - Tax code qualifiers

Tax code qualifiers let you create or modify ERP (enterprise resource planning) tax codes based on the elements in the tax result.
There are 2 types of tax code qualifiers:
  1. Static:
    A static tax code qualifier replaces the existing ERP tax code with a constant value when the condition is met.
    1. When a static tax code qualifier group gets selected for an invoice, Determination evaluates each tax result against all the associated tax code qualifiers by order number until a matching qualifier's found. (All of the qualifier's conditions match the tax result). After Determination selects a qualifier, the ERP tax code for the tax result gets replaced with the qualifier's static tax code value.
  2. Dynamic:
    A dynamic tax code qualifier replaces the existing ERP tax code with the value of a selected number of fields from the XML elements for the invoice and line input and the tax output.
    1. When a dynamic tax qualifier group gets selected for an invoice, Determination replaces the ERP tax code for each tax result with a new tax code value specified by the first active tax code qualifier. The new tax code includes a string of concatenated elements associated with the qualifier. Determination evaluates against defined conditions before the new tax code value's applied. Elements are applied in the order you specify and all applicable elements get applied.