Overview
↑ Back to topAvalara AvaTax provides seamless integration with Avalara’s tax calculation and management services. You can easily and automatically get and charge the appropriate tax rates for your store based on your origin address and your customers’ addresses, and manage all tax reporting in your AvaTax dashboard. AvaTax is available for merchants in almost every country!
Avalara AvaTax allows you to charge appropriate tax automatically and track tax records for your WooCommerce transactions, and can also enable AvaTax address validation for your customers. Set your default product and tax shipping codes, override product codes as needed for categories or individual products, and you’re on your way!
Avalara for WooCommerce supports the following tax types:
- Sales tax
- VAT
Requirements
↑ Back to top- An Avalara account
- WooCommerce 3.9.4 or newer
- WordPress 5.6
- PHP 7.4.3 or newer (you can see this under WooCommerce > Status)
- Taxes enabled on your WooCommerce store (head to WooCommerce > Settings, and ensure that the Enable tax rates and calculations checkbox is selected. If not, select it and click the Save changes button to continue)
- Make sure you have your WooCommerce store set up on your WordPress account and your store URL is publicly accessible.
Documentation
For instructions to install and configure the Avalara plugin, visit Avalara for WooCommerce documentation on the Avalara Knowledge Center.
To access the latest release information, see Avalara for WooCommerce Release Notes on the Avalara Knowledge Center.
Plugin Compatibility
↑ Back to topSubscriptions
↑ Back to topAvaTax works with WooCommerce Subscriptions to properly assess tax on initial and recurring orders.
For an initial order, tax is calculated on the initial total and recurring total separately, so that customers are shown accurate totals at checkout for both components of the order.
If you use a payment gateway that supports recurring total modifications, then AvaTax will also recalculate taxes before the order is processed by the payment gateway. This ensures that your customers are always charged the correct renewal amount while letting you account for changes in customer address or tax regulations automatically.
Please be sure you’re using version 1.4.1+ of the plugin to recalculate renewal tax.
Customer/Order/Coupon Export
↑ Back to topAvalara AvaTax is compatible with WooCommerce Customer / Order CSV Export – when active, AvaTax data will automatically be added to order and customer exports.
For the orders export, the VAT ID for a customer will automatically be added to the export file if available. The column name will be vat_id
and this will appear after the billing_company
column if set, or at the end of the row if not.
For customer exports, the customer VAT ID and tax exemption code are automatically added as new columns titled vat_id
and tax_exemption
, respectively. These are included after the billing_company
column if set, or at the end of the row if not.
Local Pickup Plus
↑ Back to topWhen Local Pickup Plus is used with AvaTax, the pickup location is used as the ShipTo address for that order or line item rather than the customer address, ensuring that taxes are appropriately calculated for the item’s destination.
If more than one shipping location is allowed per order, then AvaTax will change the ShipTo address for each item so that taxes are calculated individually per item using the pickup location as the destination.
Troubleshooting
↑ Back to topHaving trouble? Follow these steps to make sure everything is setup correctly before posting a support request:
- Please ensure that your site meets the plugin requirements.
- Check the FAQs to see if they address your question.
- Confirm that your Account Number and License Key are correct.
- If your gateway submits paid transactions (such as a credit card), but these orders are not sent to Avalara immediately, it usually means your gateway does not properly trigger the
woocommerce_payment_completed
action. While we’re happy to help debug this issue, it will need to be fixed by the payment gateway. Using the PayPal Standard gateway is a good way to compare this. - If tax is incorrectly calculated, you’ll need to get in touch with the Avalara team since the rates are pulled from there. To get help, sign in to Avalara Global Support and open a support case. Depending on your support plan, you may also be able to access live chat or call support.
- If tax is not calculated at all, please review the order notes for error sources and confirm that your origin address and tax codes are set.
- If you manually created the order, please ensure you follow the correct steps for manual orders.
- Enable logging and submit a help request with the log so we can review the transaction notes to help troubleshoot.
For Developers
↑ Back to topAvalara AvaTax has several hooks available so that WordPress developers can customize its behavior. If you find that you need additional hooks, please submit a thread to our help desk to request the hooks you need.
Filters
↑ Back to topapply_filter( 'wc_avatax_validate_address_button_label', $label )
– lets you change the label for address validation from “Validate Address”
apply_filters( 'wc_avatax_checkout_origin_address', $origin_address, $cart )
– filters the tax origin address at checkout. Origin address is an array of address fields, $cart is the WC_Cart instance.
apply_filters( 'wc_avatax_checkout_destination_address', $destination_address, $cart )
– filters the tax destination address at checkout. The destination address is an array of address fields, $cart is the WC_Cart instance.
apply_filters( 'wc_avatax_order_origin_address', $origin_address, $order )
– filters the tax origin address when processing an order. Origin address is an array of address fields, $order is the WC_Order object.
apply_filters( 'wc_avatax_order_destination_address', $origin_address, $order )
– filters the tax destination address when processing an order. The destination address is an array of address fields, $order is the WC_Order object.
apply_filters( 'wc_avatax_tax_origin_address', $address )
– filters the tax origin address right before sending data to AvaTax.
apply_filters( 'wc_avatax_tax_destination_address', $address )
– filters the tax destination address right before sending data to AvaTax.
apply_filters( 'wc_avatax_order_ready_statuses', $statuses )
– filters an array of order statuses that allow manual order sending
Actions
↑ Back to topdo_action( 'wc_avatax_after_checkout_tax_calculated' )
– fires after calculating tax for a cart at checkout.
do_action( 'wc_avatax_after_order_tax_calculated', $order_id )
– fires after calculating tax for an order.
do_action( 'wc_avatax_order_processed', $order_id )
– fires when an order is sent to Avalara.
Questions & Support
↑ Back to topHave a question before you get started? Please fill out this pre-sales form.
Already purchased and need some assistance? Get in touch with support.