Avalara Integration Functionality

James Jordan
James Jordan
  • Updated

Avalara AvaTax is a cloud-based solution automating transaction tax calculations and the tax filing process. Avalara provides real-time tax calculation using tax content from more than 12,000 US taxing jurisdictions and over 200 countries, ensuring your transaction tax is calculated based on the most current tax rules.

Requirements

  • A valid subscription to Avalara’s AvaTax Pro product is required. AvaTax Basic does not provide API access.
  • You will need a paid Avalara Connector subscription with ServiceTrade. When purchased, the integration will be turned on for your account and you may proceed with configuring the settings.
  • Tax tables and groupings must be set up in AvaTax.

How it Works

ServiceTrade will call Avalara’s AvaTax service to get the correct tax rates on a per line item basis for Quotes and/or Invoices. This can happen automatically or based on a button-press of “Get Avalara Taxes” which is provided via a Chrome Extension and appears on Quotes and/or Invoices. It is also configurable as to whether tax rates are updated automatically for field invoices, independently of the automatic setting for Quotes/Invoices generated in the office. This allows manual tax rate retrieval in the office and automatic tax rate retrieval in the field if desired.

The tax information from AvaTax is stored as a tax rate on the item on the Quote/Invoice. The determination of the tax rate, and the taxability of the item, is done entirely by AvaTax. The method of getting the rates differs by configuration option:

Option A: Automatically

  • Each time a Quote/Invoice is updated in a way that could result in a tax rate change (i.e. an item is added/removed, or the quantity/price is changed, etc) then our middleware triggers on the updated webhook.
  • The middleware calls AvaTax, then updates the ServiceTrade Quote/Invoice:
    • Tax rates for the line items are updated
    • A tag is added to the Quote/Invoice that says “UPDATED-TAX” so the user is aware that the tax rates have been updated by the middleware.
  • If any errors are encountered, a tag of “AVALARA-UPDATE-ERROR” is added to the Quote/Invoice.
  • Note: The user must refresh the page if they want to see the latest tax information. The middleware cannot force the page to refresh.

Option B: Manually with the Chrome Extension button

  • Each user must install the Chrome Extension in order for the manual “Get Avalara Taxes” button to appear on the Quote/Invoice pages.
  • When the button is clicked, a call is made to AvaTax to get the updated tax rates.
  • The Quote/Invoice is updated:
    • Tax rates for the line items are updated
    • A tag is added to the Quote/Invoice that says “UPDATED-TAX” so the user is aware that the tax rates have been updated by the middleware.
  • If any errors are encountered, a tag of “AVALARA-UPDATE-ERROR” is added to the Quote/Invoice.
  • Note: It is a configuration option to block the user from being able to print, send, or submit the Quote/Invoice until the “Get Avalara Taxes” button has been pressed, to ensure that the latest tax information has been obtained.

AvaTax handles transaction creation differently depending on the ServiceTrade entity type of either a Quote or an Invoice:

Quotes:

  • The transaction type for Quotes is “SalesOrder”
  • Transaction Document Codes are based on the ServiceTrade Quote Number.

Invoices:

  • The transaction type for Invoices is “SalesInvoice:
  • The transaction will begin as “Uncommitted” and it is a configurable option to have the transaction committed either when the Invoice is transitioned to a status of “Pending Accounting” (which usually means it has been submitted to an accounting system) or when the Invoice is transitioned to a status of “Processed.”
  • Transaction Document Codes are based on the ServiceTrade Invoice Number.

Limitations / Caveats

  • Avalara Tax Integration is responsible only for applying the correct tax amount to each line item on the ServiceTrade invoice.  It is NOT responsible for tracking or recording the tax authorities that have jurisdiction over a given customer location, or the tax liability to any of those authorities.  The tool is only responsible for determining which items on a ServiceTrade invoice are taxable, and what the total tax rate for those items is, per the Avalara tax rules.
  • Any scenario in which the returned tax total from AvaTax differs from the summation of each tax rate multiplied by each line item price may not be accurately handled. An example of this is parts of Alaska where there is a cap on the maximum tax that can be charged, which differs from the actual real calculation of tax due. ServiceTrade does not allow the tax total to be set independently of the line item rates and prices math.

Configuration

You can manage your Avalara Avatax authentication, settings, and tax code mappings via Toolbox tools.

  • Avatax Settings - Available in the Administration page of the Toolbox
    • Credentials - Username and password (the connection can be tested using the "Test" button)
    • Company Code - Company profile identifier in the AvaTax Admin Console.
    • Document Recording - Enables tax document submission to Avalara’s AvaTax service for record keeping. With this setting enabled, transactions will be posted and committed to the AvaTax Admin Console. 
    • Quote Taxes - Enables tax calculation for Quotes
    • Automatic Tax Application for Invoices - Enables automatic tax calculation for invoices. See options A and B above.
    • Automatic Tax Application for Field Invoices - Enables automatic tax calculation when a field invoice is created and moves to "Needs Review" status.
    • Automatic Tax Application for Quotes - Enables automatic tax calculation for quotes. See options A and B above.
    • Environment - Use Sandbox to connect to the Avalara Sandbox test environment, or Production for the Avatax Production environment.
  • Tax Group Mapping - Available in the Invoices section of the Toolbox
    • Item Type Mapping - Map ServiceTrade items by item type to an Avalara Tax Group Code (Translation Code)
    • Item Code Mapping - Map a specific ServiceTrade item code to an Avalara Tax Group Code (Translation Code). The most specific of these two settings will apply, so an Item Code Mapping entry will override an Item Type Mapping entry.

Was this article helpful?

/