Question: What is AvaTax?
Answer: Avalara AvaTax is a cloud-based solution automating transaction tax calculations and the tax filing process. Apprise can be integrated with AvaTax to calculate US sales tax and Canada GST/HST automatically.
Question: How do I set up the AvaTax interface?
Answer: To use AvaTax Integration, you must first import the SSL certificate into Progress OpenEdge. For assistance, contact the Aptean Professional Services Team or Aptean Customer Success Team.
To set up the AvaTax interface:
Select AvaTax as the tax interface.
Select Mode as Test or Live.
The Test mode is connected to the AvaTax sandbox environment and the Live mode is connected to the AvaTax production environment. Each environment is completely separate and has its own credentials. The data in sandbox is not reported to the tax authority. When you are ready to go live, set the mode to Live and enter the connection information in the Live section.
NOTE Use the Test mode before going live.
Enter the Account Number, License Key, and Company Code.
These fields are required to connect to AvaTax. The Account Number is provisioned by Avalara, the License key is generated on the AvaTax website, and the company code is configured on the AvaTax website. Multiple companies can be configured in AvaTax, but, when doing so, ensure that you enter the one that Apprise uses.
Use the Test Connection button to test the connection to AvaTax and verify the AvaTax credentials.
In Tax Control Maintenance, on the Main tab:
Enter the Sales Tax Account used for G/L posting. Do this before posting any invoice, else the system performs unbalanced posting.
In Country Maintenance, on the Main tab:
Enter the ISO Country Code for the United States of America (and Canada if applicable) as two-character ISO 3166 codes:
NOTE The ISO 3166 codes are required to trigger the API call.
In Product Maintenance, on the Selling tab,
Assign appropriate Sales Tax Codes to products. You can also assign sales tax codes in a batch using Product Import or Product Change Import.
In AvaTax, tax code uniquely identifies the type of product and determines what tax rules and rates are applicable to the transaction. The tax code list is monitored by Avalara. On Avalara's tax code site, you can find all the available tax codes.
In Order Entry Additional Charge Maintenance, on the Main tab, assign appropriate Sales Tax Codes to additional charges. For more information, see AvaTax Integration - Dealing with Additional Charges.
If Sales Tax Code is left blank for a product or an additional charge, the default tax code P0000000 is used. In this case, AvaTax assumes you are creating transactions that refer to general Tangible Personal Property.
The Tax with Item option can be used for discount type charges. If this is selected, the system automatically uses the tax code of the associated line item (if charge is added at the item level).
NOTE Before processing any transactions in Apprise, ensure that you have set up the tax nexus properly in AvaTax. In other words, you must set up the regions where you collect tax.
To summarize, the basic setups required in AvaTax to fulfill the integration are as follows:
Question: Do I need to set up any sales tax jurisdiction in Apprise for the integration?
Answer: No. Sales tax jurisdictions are only used and required for the internal tax functionality.
When your system is integrated with AvaTax, AvaTax determines the correct taxing jurisdictions based on the addresses provided. Therefore, on the screens or imports (for example, Customer Ship to, Order Entry, or Order Import) where jurisdiction is a required field, Apprise automatically sets the jurisdiction to None.
Question: What transactions will have tax calculated?
Answer: Currently, Apprise supports the transactions listed in the following table.
Transaction Type |
Lifetime |
Example |
SalesOrder |
Temporary |
A quote for a potential sale |
SalesInvoice |
Permanent |
A finalized sale made to a customer |
ReturnOrder |
Temporary |
A quote for a refund to a customer |
ReturnInvoice |
Permanent |
A finalized refund given to a customer |
Based on their storage in AvaTax, transactions are classified as follows:
Temporary transactions, also known as tax estimates, are sent to AvaTax using the SalesOrder or ReturnOrder transaction type. Temporary transactions are not stored by AvaTax.
Permanent transactions are sent to AvaTax using the SalesInvoice or ReturnInvoice transaction type. Permanent transactions are stored in AvaTax and eventually reported to the tax authority.
NOTE For return orders or return invoices, if the line item is associated with a previous sales invoice line, the reference date of the associated invoice is used as the tax date to calculate tax. Otherwise, the transaction date is used as the tax date.
Question: Where can I see the API message details for each call made to AvaTax?
Answer: The Tax Interface Detail window displays the API Message details for each call made to AvaTax. To open this window, go to the Ship to tab in Order Entry or Invoice Entry, and click the Tax Interface Detail button. In this window, you can review all the API request and response details for the current order or invoice. You can also download the API messages to text files for further troubleshooting.
NOTE To free up the database space, use the Purge Data Utility and purge the old or unused tax interface details.
Question: How does tax exemption work in the integration?
Answer: Tax exemptions are classified as follows:
Blanket Exemption - A tax exemption where a customer claims exemption on all transactions for a region.
Currently, blanket exemptions must be set up in the AvaTax system. Make sure the customer code you set up for blanket exemptions in AvaTax is the same as the one that you have in Apprise. Else, the transaction is not exempted from tax due to a mismatch in the customer code.
Single Exemption - A tax exemption that applies only to a specific transaction.
In Customer Maintenance, EDI Distribution Center Maintenance or other windows, where a ship to address can be defined, the following settings are available:
Tax Exemption - Enter Yes or No.
Tax Exempt # - Used for tracking the customers who have tax exempt transactions.
Entity Use Code - A group of codes that indicate the type of exemption.
It provides information about how a transaction will be used by the customer, and information about the type of customer making the purchase. For example, a purchase made by the US federal government, which is designated for government use, is generally exempt or non-taxable for that specific use.
The list is retrieved by calling AvaTax API. This field is not validated as you can either select a standard code from the list or enter a custom entity use code. If the standard code is selected, the transaction is exempt. However, if the custom entity use codes are used, they must be set up as custom rules in AvaTax; otherwise, the transaction is not exempt.
When Tax Exempt is Yes, either Tax Exempt # or Entity Use Code is required, not both. Transactions marked as Tax Exempt will still be sent to AvaTax. AvaTax will report transactions as well as exempt dollar amounts based on the legal filing requirements.
When creating orders or invoices, the exemption values defined in the above screens are used as defaults. However, if required, the users can override them in Order Entry or Invoice Entry.
Question: How do Customer Portal and Mobile Sales Rep deal with taxes?
Answer: The Customer Portal and Mobile Sales Rep deal with taxes as follows:
Customer Portal
Apprise calls AvaTax to get tax estimates for all items in the shopping cart and displays the total tax amount during Order Confirmation.
Taxes are calculated again when creating the order (using the Order Import program).
Mobile Sales Rep
Apprise calls AvaTax many times before creating the order, for example,
when the cart is updated
when the ship to address is updated
when the required date or order date is updated
when the automatic additional charges are added or updated
when switching the customer and so on.
Taxes are calculated again when creating the order.
Question: How does Apprise deal with API errors returned by AvaTax?
Answer: Apprise deals with API errors returned by AvaTax as follows:
Orders
If you have selected Place Orders on Manual Hold on the Tax Info tab in System ID Maintenance, orders with API errors are created with zero tax and placed on manual hold using the assigned reason code. You will receive a generic warning indicating tax cannot be calculated on the screen or on the import log. You can then refer to the tax interface details for detailed error codes.
After errors are fixed, in Order Entry or Customer Service Hold Management, you can click the Calculate Sales Tax button to manually call AvaTax again. If tax can be calculated successfully, orders will be released from the manual hold automatically.
To notify users immediately about the orders with API errors, the alert "An order has been placed on manual hold" can be set up for the assigned reason code in Alert Wizard.
Invoices
The sales invoices, return credit memos, standalone invoices, or standalone credit memos are created with zero tax, but cannot be posted if they receive API errors. A generic error indicating tax cannot be calculated will show up on the report or screen. You can then refer to the tax interface details for detailed error codes.
These invoices with API errors are stopped from posting and they do not exist in AvaTax. After fixing the errors, you must undo the invoices in Invoices with Tax Interface Error Management first and then recreate the invoices. This must be processed in a timely manner, otherwise this can have a lot of impacts. After undoing and recreating the invoices, perform the following, as applicable:
Profitability - Refresh the scorecard data in Scorecard Data Refresh.
Cash Flow - Recalculate the cash flow data by clicking Show Data in Cash Flow Management Analysis.
Billbacks - Recreate billback invoices or vouchers in the Free Goods Billback Processing, Incentive Billback Processing, Sample Billback Processing, or Ship and Debit Billback Processing windows.
Retail Incentive Program - Reprocess retail incentive program vouchers in RIP Voucher Processing
To notify users immediately about the invoices with API errors, the alert "An invoice was created with zero tax due to tax integration errors" can be set up in Alert Wizard.
For more information about all AvaTax REST Error Codes, see REST Error Codes.
For more assistance, contact the Aptean Customer Success team.
Question: What is Location Based Reporting? How does it work in the integration?
Answer: Some US states require companies to file tax returns for each physical location individually. These forms are considered as location-based reporting forms.
If your company has physical locations in the US that require location based reporting, you must gather their addresses, and then add the locations to your company profile in the AvaTax system. While adding the locations in AvaTax, make sure you use the same location codes that you have in Apprise.
To send the sales location code for a transaction in Apprise to AvaTax as the reporting location code, select the Enable Location Based Reporting check box on the Tax Info tab in System ID Maintenance.
Question: In which situations will the system make no API calls to AvaTax to calculate tax, and leave tax as zero?
Answer: Apprise doesn't make any API calls to AvaTax to calculate tax under the following situations:
When you select the Skip Tax Calculation check box in the General tab in Order Class Maintenance for the order class of the order, the system won't send the invoices of the order to AvaTax.
When you select the Skip Tax Calculation check box in the Main tab in EDI Trading Partner Maintenance for the trading partner of the order, the system won't send the invoices of the order to AvaTax.
When you select the Skip Tax Calculation check box in the Main tab in Invoice Entry for a standalone invoice, the system won't send the invoice to AvaTax.
Question: How do I handle the Colorado Retail Delivery Fee?
Answer: Beginning July 01, 2022, the state of Colorado has imposed a $0.27 retail delivery fee on all deliveries by motor vehicle to a location in Colorado with at least one item of tangible personal property subject to state sales and use tax.
To handle the Colorado Retail Delivery Fee in Apprise:
In Order Entry Additional Charge Maintenance, create a new charge for the retail delivery fee using the field Charge Type and the value of the Sales Tax Code field as CF400000.
In Order Entry Automatic Additional Charge Maintenance, create an automatic additional charge header for the retail delivery fee for the state of Colorado, and then set the amount to 0.0001 for the currency USD.
On the created invoices for the orders that have the retail delivery fee applied, the system adds a separate Colorado Retail Delivery Fee charge with the amount 0.00 (0.0001 rounded to 0). When the Retail Delivery Fee Tax Code is passed, you can verify it is working by looking for a $0.27 fee that is calculated on the line item with the retail delivery fee tax code CF400000.