VAT Calculation Badge Requirements

Administration/Utilities

NameTypeDescriptionComments
AvaTax Configuration Window
Required

The AvaTax Configuration Dialog Window must allow the user to specify the configuration/connection information

AvaTax Test Connect Button
Required

Test the connection to the AvaTax service and verify the AvaTax credentials. This is an important element to allow for successful troubleshooting of the AvaTax Service.

Control - Disable Document Recording
Required

In order for this connector to be used in conjunction with other integrations to AvaTax, the user must be able to control which connector is used for recording documents to AvaTax. From a technical standpoint, simply use docType: 'SalesOrder' on all calls and suppress any non-tax calculation calls (i.e. VoidTransaction, CommitTransaction).

Request time out definition
Suggested

Define a timeout value for AvaTax requests

Enable client-side logging
Required

Users must have the option to retrieve detailed AvaTax transaction logging within the application, including the capture of round-trip processing time, and they need the complete request/response for each call made to Avalara services.

This logging does not need to run all the time, as doing so will cause the database to grow unnecessarily large. This can be set up to only log the last week, 30 days, custom, or have a control for the next N hours, etc. This requirement is to assist customers and support in troubleshooting exercises, so it must be retrievable by an end user (or an administrator). It should be specifically Avalara service calls.

Display prices with Tax Included
Required

Enable the tax inclusive flag in the tax calculation request

Option to disable AvaTax
Required

The user must have an option to turn on or off the AvaTax Calculation service independent of any other Avalara product or service

User Implementation Guide
Required

Users must have a way to access a User Implementation Guide. This guide should contain screenshots and information allowing the end user to configure for AvaTax, including where the company code is entered, where the credentials are entered, and where tax codes can be mapped within the application.

Item/Charge Integration

NameTypeDescriptionComments
Item Code
Required

Identify the itemCode value (number, ID) to pass to the AvaTax service.

Item Description
Required

Identify item/service/charge description to pass to the AvaTax service with a human-readable description or item name

AvaTax Tax Code Mapping - Item/SKU
Required

Users must be able to associate an item or item group to an AvaTax Tax Code to describe the taxability (for example, "Clothing-Shirts" – "B-to-C").

Non-Standard Items
Required

Users must have a way of associating Freight/Shipping and/or Handling charges to an AvaTax Tax Code to describe the taxability.

Tax Code Mapping Group
Suggested

Users should be able to associate a group of items to an AvaTax Tax Code in order to describe the taxability of the group.

Tax Code Lookup
Suggested

Users should be provided with a method for looking up tax codes.

Sales/Billing Documentation Integration

NameTypeDescriptionComments
Document Code
Required

Values that can come across to AvaTax as the docCode

Customer Code
Required

Values that can come across to AvaTax as the customerCode. This is used to identify any certificates linked to the customer

Document Date
Required

Value comes across to AvaTax as the docDate

Document Type
Required

Your integration must send docType values corresponding to the stages of the transaction life cycle

Ship From Address
Required

Value sent to AvaTax at the header and line levels for the address where items are shipped from

Ship To Address
Required

Value sent to AvaTax at the header and line levels for the address where items are shipped to

Goods or Place Service Rendered Address
Suggested

Your integration should be able to store at the header or line levels the full address where the goods are located when there is no transportation. This is required if your platform accepts this address

Import Address
Conditional

If your application supports Import addresses, then your integration must be able to store at the header or line levels the full address where goods are imported into

Line Number
Required

The value for each line within a transaction, specified using a unique line number

Quantity
Required

The value for the quantity of an item for each line of a transaction

Amount (extended)
Required

The value sent to AvaTax as the total amount for each line item in a transaction, keeping in mind the status of the isTaxIncluded flag

Include Tax in Line Amounts
Required

Users must be able to specify on each line in a transaction whether the total line amount includes tax

Tax Code
Required

Value sent to AvaTax as the taxCode for each line of a transaction

Shipping/Freight Handling in Transactions
Required

The handling of shipping and freight in AvaTax must match your application's implementation. For VAT transactions, freight can be included in the total amount or added as a separate line

Discount Transactions
Required

Users must ensure that discounts on transactions are processed appropriately

Verify Avalara calculated Tax Amount is used in Transaction
Required

Confirm that the integration is taking the Tax Amount value from the tax calculation response and using that to decorate the tax fields in the platform. Do NOT take our rate and use it to calculate the tax within the platform itself

Sales Order/Sales Invoice
Required

Your integration must mirror your system's workflow as it relates to orders and invoices and use the appropriate document types

Commit Transactions
Required

Your integration must mirror your system’s workflow for a transaction lifecycle when committing documents

EU Invoice Messaging
Required

Display and store any messaging returned by the AvaTax engine on the customer invoice

VAT Code in Responses
Required

Display and store the VAT code returned by the AvaTax engine in the ERP transaction record

Currency Code
Required

The three-character currency code at the document level sent to AvaTax for transactions

Exchange Rate
Suggested

Your integration should allow users to specify an exchange rate for transactions

Exchange Rate Currency Code
Conditional

If your application allows users to input an exchange rate, then you must allow users to also include the currency code for the exchange rate

Exchange Rate Effective Date
Conditional

If your application allows users to input an exchange rate, then you must also allow users to specify the effective date of the exchange rate in a transaction

Business Identification Number
Required

Users must have a way to specify the customer's business identification number (also known as VAT Registration ID). This data element should be found directly on the transaction header

Country Code
Required

The value sent to AvaTax as the two-character countryCode in transaction addresses

Transport
Required

Users must be able to specify who in the VAT transaction is responsible for handling the transportation of the physical goods

Is User the Importer of Record
Suggested

Your integration should allow users to specify whether the user is the importer of record for a transaction

Second Hand Goods
Suggested

Users should be able to specify whether the goods being sold in a VAT transaction are second hand (used)

Counterparty Registered Through Fiscal Representative
Suggested

Your integration should allow users to specify whether the counterparty in a sales transaction is registered through a fiscal representative in a given country calculating VAT

Avalara Client Registered Through Fiscal Representative
Suggested

Your integration should allow users to specify whether the Avalara client is registered through a fiscal representative in the given Nexus country for VAT

Server Audit Clarity and Installation Requirements

NameTypeDescriptionComments
Pass Connector Identifier Information via the X-Avalara-Client HTTP Header
Required

Integrations must include information about the connector, such as name, version, and company name, as a signature to each transaction

Reasonable Messages on Server-Side Analysis
Required

There should be no errors except those that would result from normal (but invalid) user input (e.g. invalid address data). Such errors must be logged/displayed appropriately to the system

Reasonable Ratio of Tax Determination and Address Validation calls to Committed Documents
Required

In a normal workflow, we expect to see (on average, including abandoned carts) up to 10 tax calculations per finalized document. In a straight-forward order entry process, the number of calls should be about three to five

Demonstrate and Document Installation of Software
Required

Users should have an easy and trouble-free installation experience

Advanced Feature - Input VAT

Advanced Features contain functionality that we suggest building into your integration on top of what is included in the Certification Badge. The requirements and the respective ‘type’ values below apply only to the Advanced Feature, and “required” components are not mandatory to achieve the Certification Badge.

NameTypeDescriptionComments
Purchase Order/Purchase Invoice
Required

Users must be able to create quotes or estimates using purchase orders and purchase invoice document types

Point of Order Origin Address
Required

The address sent to AvaTax as the PoO at the header or line level for where the order was accepted by your supplier, such as a call center, business office where purchase orders are accepted, and server locations where orders are processed and accepted

Point of Order Acceptance Address
Required

The address sent to AvaTax as the PoA at the header or line level for where the order was accepted by your supplier, such as a call center, business office where purchase orders are accepted, and server locations where orders are processed and accepted

Goods Place or Services Rendered Address
Required

The address sent to AvaTax at the header or line level for where the goods are located when there is no transport

Import Address
Required

The address sent to AvaTax at the header or line level for where goods are imported into

Option to Defer Import VAT
Required

Users should be able to specify whether a customer can defer import VAT until the return is filed

Comparison of Vendor Tax and Self-Assessed Tax
Suggested

ERP systems must allow users to compare what AvaTax calculates as the tax versus what was actually received on the invoice

Advanced Feature - Triangulation

Advanced Features contain functionality that we suggest building into your integration on top of what is included in the Certification Badge. The requirements and the respective ‘type’ values below apply only to the Advanced Feature, and “required” components are not mandatory to achieve the Certification Badge.

NameTypeDescriptionComments
Triangulation Transactions
Required

Users should be able to specify whether the transaction is related to a prior or subsequent supply of goods

Middleman VAT ID
Required

Users should be able to specify the VAT ID of the middleman in triangulation scenarios

Goods Place or Services Rendered Address
Required

Users must be able to specify at the header or line levels, the address where the goods are located when there is no transport in triangulation scenarios.