Name | Type | Description | Comments |
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 | Other documentation may refer to Document Committing, this is interchangeable with Document Recording |
Disable AvaTax Option | Required | The user must have an option to turn on or off the AvaTax Calculation service independent of any other Avalara product or service. | |
Enable client side logging | Required | Enables detailed AvaTax transaction logging within the application including capture of round-trip processing time. We need the complete request/response for each call made to Avalara services. It does not need to run all the time as we understand the database will grow unnecessarily large – you are free to only log the last week, 30 days, custom, or have a control for the next N hours, etc. The spirit of the requirement is to assist customers and support in troubleshooting exercises, so it needs to be retrievable by an end user (or an administrator). It should be specifically Avalara service calls. | |
Request time out definition | Suggested | Define a timeout value for AvaTax requests. | |
Display Prices with Tax Included | Conditional | Enable the tax inclusive flag in the GetTax Request. | Option to display prices with tax included is required for VAT badge. |
Enable AvaTax UPC | Suggested | When set to true: pass in UPC code into the Avalara ItemCode on the line level of the requests to our service. When UPC is unavailable, default to ItemCode.When set to false: use the default ItemCode mapping. See Product Master Management for more details. | Alternately, UPC can be enabled on the item level. |
User Implementation Guide | Required | The User Implementation 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. Click Here for a user guide template. | |
Address Validation Implemented | Required | An Address Validation utility is present in the application. |
Name | Type | Description | Comments |
Customer Code | Required | Identify customer code (number, ID) to pass to the AvaTax service. | |
Entity/Use Code | Required | This is a group of codes that indicate the type of exemption. See the standard codes, but be aware that users are able to create custom codes as well. It is best to manage this value in your application’s Customer record and pass it to AvaTax as CustomerUsageType at either the document or line level, whichever is applicable. | |
Exemption Number | Suggested | Customer record field populating exemption number in an AvaTax transaction. This is used for tracking those customers who have tax exempt transactions. | |
Line Level Exemptions | Suggested | Ability to identify individual items on a transaction as exempt from tax. | |
Line Level Exemption Override | Suggested | Ability to identify individual items on a transaction as Taxable to an otherwise exempt customer. Functionally, you will need to pass the value 'Taxable' in the CustomerUsageType field at the line level. | |
Ship-To Address Exemption | Suggested | Ability to individually identify customer, ship-to locations as Exempt, separate from the customers default address. |
Name | Type | Description | Comments |
Item Code | Required | Identify customer code (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 Code/SKU | Required | Association of an item or item group to an AvaTax Tax Code to describe the taxability (e.g. Clothing-Shirts – B-to-C). | |
Tax Code Mapping Group | Suggested | Association of a GROUP of items to an AvaTax Tax Code to describe the taxability of the group. | |
Pass UPC | Suggested | See note in Administration/Utilities Integration section. If the user elects to use AvaTax UPC, ensure that the appropriate field containing UPC data is mapped to the ItemCode parameter formatted as: UPC:+. Example: “UPC:1234567890000”. by formatting the value with “UPC:” identifier, our engine can pick up the UPC code, and the user can avoid mapping a tax code for that item. If no UPC data is available still default to the regular ItemCode mapping. | The UPC functionality is a premium upgrade to the Avalara AvaTax subscription providing taxability decision (taxable vs. non-taxable) without requiring an Avalara Tax Code assignment. |
Tax Code Lookup | Suggested | Pull in and surface Avalara Tax Codes within application. | |
Non Standard Items | Required | Association of Freight/Shipping and/or Handling charge to an AvaTax Tax Code to describe the taxability. |
Name | Type | Description | Comments |
DocCode | Required | Values that can come across to AvaTax as the DocCode. | |
CustomerCode | Required | Values that can come across to AvaTax as the Customer Code. | |
DocDate | Required | Value that comes across to AvaTax as the DocDate. | |
TaxCalculation Date | Required | Value that is used for Tax Calculation Date in AvaTax. | |
DocType | Required | DocType used for varying stages of the transaction life cycle. | |
Header Level-Destination Address | Required | Value that is sent to AvaTax for Destination Address at the header level. | |
Header Level - Origin Address | Required | Value that is sent to AvaTax for Origin Address at the header level. | |
Header Level - Point of Order Acceptance | Suggested | Value that is sent to AvaTax for PoA at the header level. | |
Header Level - Point of Order Origin | Suggested | Value that is sent to AvaTax for PoO at the header level. | |
Header Level - Exemption Override | Suggested | Area at Invoice screen where end user can check box to override existing Tax Exemption for the client. | |
Location Code | Conditional | Value that is sent to AvaTax for LocationCode at the header level. | If the application supports multiple 'origin' addresses, locationCode must be passed with the transactions. |
Exemption Number | Conditional | Value that is sent to AvaTax for Exemption Number. | Required if CustomerUsageType/Entity Use Code exemption functionality is not present. |
Line Number | Required | Value that is sent to AvaTax for the Line Number. | |
Item Code | Required | Value that is sent to AvaTax for the Item Code. | |
Item Description | Required | Value that is sent to AvaTax for the Item Description. | |
Quantity | Required | Value that is sent to AvaTax for the Quantity. | |
Amount (extended) | Required | Value that is sent to AvaTax for the Amount. | |
Tax Code | Required | Value that is sent to AvaTax for the Tax Code. | |
Line Level - Destination Address | Suggested | Value that is sent to AvaTax for Destination Address at the line level.</p | |
Line Level - Origin Address | Suggested | Value that is sent to AvaTax for the Origin Address at the line level. | |
Line Level - Point of Order Acceptance | Suggested | Value that is sent to AvaTax for PoA at the line level. | |
Line Level - Exemption Override | Suggested | Area on the Invoice screen at the line level where end user can check box to override existing Tax Exemption for the client specific to a single line of the Invoice. | |
Line Level - Point of Order Origin | Suggested | Value that is sent to AvaTax for PoO at the line level. | |
Verify Avalara Calculated Tax Amount is used in transaction | Required | Confirm that the integration is taking the Tax Amount value from the GetTax 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. | |
Freight items must be transmitted separately | Required | Freight Items must be sent to AvaTax as a separate line item with a configurable tax code. | |
GetTax call – Sales Order/Sales Invoices | Required | Ensure that invoices are processed through a logical document lifecycle. | |
PostTax/CommitTax Call – Invoices | Required | Ensure that invoices are committed/posted for reporting appropriately. | |
CancelTax call – voided/deleted Invoices | Conditional | When invoices are deleted/cancelled, this information must be transmitted to AvaTax. | If the source application supports void/delete, then the corresponding transaction on AvaTax must be updated with the current transaction status. |
Send discounts appropriately | Required | Standard discounts included in line-level extended amount, manufacturer’s coupons and hostess credits transmitted as additional line items. | |
Send optional header level data elements – Purchase order number | Suggested | Purchase order number associated with this transaction. | |
Send optional line (detail) level data elements – Entity Use Code (aka CustomerUsageType) | Suggested | Line level exempt triggers are required if line-level exemption can be managed in the application, and should be transmitted in a manner analogous to document-level exemption. | |
Send optional line (detail) level data elements – Destination address | Suggested | Required if destination (ship-to) address can be managed at the item line level. | |
Send optional line (detail) level data elements – Origin address | Suggested | Required if origin (ship-from, warehouse) address can be managed at the item line level. | |
Include Point of Order Origin in GetTax request | Conditional | Required if Point of Order Origin field is available in the source application. | |
Include Point of Order Acceptance in GetTax request | Conditional | Required if the Point of Order Acceptance is available in the source application. | |
Latitude/Longitude Support | Suggested | If host application captures GPS coordinates with Addresses; for US addresses, pass the Lat and Long along with address. This is especially useful in situations where a location or service site can only be pinpointed by geo location. | |
Send Location Code with Transaction | Conditional | If multiple origin addresses are supported, the corresponding origin Location Code must be included with the GetTax request. |
Name | Type | Description | Comments |
Pass connector identifier information via the TaxSvc.Profile.Client property | Required | Integrations must include information about the connector, such as name, version, and company name, as a signature to each transaction. | Example: TaxSvc.Profile.Client ='“Dynamics AX,9.0,MyApp for AX by ACME INC,1.0' |
Reasonable errors 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 application. | |
Reasonable ratio of GetTax 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 – Install Shield or equivalent where applicable | Required | Customers should have an easy and trouble free installation of the software. |