TaxJar for WooCommerce provides sales tax calculations and reporting for WooCommerce merchants and developers.
We recommend reading the WooCommerce sales tax guide before getting started.
Requirements ↑ Back to top
- WordPress 4.0+
- WooCommerce 2.0+
- A TaxJar account with API token
Installation ↑ Back to top
- Download the TaxJar for WooCommerce .zip file from WordPress.org.
- Go to: WordPress Admin > Plugins > Add New and Upload Plugin with the file you downloaded with Choose File.
- Install Now and Activate the extension.
More information at: Install and Activate Plugins/Extensions.
Sign up for a TaxJar account ↑ Back to top
- Go to: app.taxjar.com/api_sign_up/
- Sign up for a TaxJar free trial by entering your email address and password.
- Copy your SmartCalcs API Token. Or leave window open for copy/paste in below setup.
Setup and Configuration ↑ Back to top
On your WordPress/WooCommerce site:
- Go to: WooCommerce > TaxJar.
Copy and paste your API token from your new or existing TaxJar account into the box under Step 1: Activate your TaxJar WooCommerce Plugin.
- Save changes.
This opens Step 2: Configure your sales tax settings on the same screen.
4. Go to: WooCommerce > Settings > Base Location and verify your shipping info BEFORE enabling TaxJar.
TaxJar automatically detects your shipping state and country by looking at your Base Location.
If you make changes, don’t forget to Save changes. If everything is correct, no need to save.
- Go back to: WooCommerce > Settings > Integration.
Enter Ship From City and Ship From Zip Code to ensure correct tax calculations. The state and country are pulled from your Base Location.
- Tick the checkbox for Enable TaxJar Calculations. Sales Tax Reporting is covered in the section below and need not be enabled at this time.
- Tick the checkbox for Enable logging under Debug. Optional but recommended as it can be helpful for troubleshooting purposes.
The TaxJar log file is located at:
- Save changes.
Once TaxJar is enabled for your WooCommerce store, a list of nexus states/regions appears under the Sales Tax Calculations checkbox.
Sales tax is only collected in these regions, so confirm that all of your Nexus addresses are saved in TaxJar.
- Select Manage Nexus Locations to review, add, delete or update your existing Nexus addresses on your TaxJar account.
- Select Sync Nexus Addresses if you made changes.
Currently we support:
- One address per state/region in the U.S. and Canada
- One region from your store’s Base Location in other countries
To exempt certain product categories such as clothing from sales tax, create a custom tax class and assign it to your products:
- Go to: WooCommerce > Settings > Tax.
Next to “Additional tax classes” there’s a box where you can type in a new tax class.
3. To set up a clothing tax class, add “Clothing – 20010” on a new line:
20010 is the clothing product tax code passed to our sales tax API for exemptions. If your products belong in another category, you can find a list of categories and tax codes we support here: https://developers.taxjar.com/api/reference/#categories
- Once you add a new tax class, make sure your products are assigned to the new tax class. When editing a product, change the tax class to “Clothing – 20010” under the General tab and save it:
Now we’ll pass a product tax code with this product when making calculations through our sales tax API. For variable products, make sure each variation tax class is set to “Same as parent”:
Sales Tax Reporting ↑ Back to top
To import orders into TaxJar for the Sales Tax Report:
- Go to: WooCommerce > Settings > Integration.
Tick the checkbox for Enable order downloads to TaxJar for Sales Tax Reporting.
3. Save changes.
A connection is automatically set up to your store in TaxJar and begins importing orders.
How SmartCalcs Works ↑ Back to top
Your store seems to be calculating sales tax correctly, but how many SmartCalcs API calls are made per order?
The latest version of our plugin only makes live API calls when the order resides in a state where you have Nexus. This saves you a lot of API calls and money.
API calls are cached using the WordPress Transients API. If you have a customer repeatedly loading the checkout page without changing their shipping info, your store will not make additional API calls. On average, the SmartCalcs integration makes 2-3 API calls per order in a Nexus state.
API calls are only made under three conditions:
- Checkout process for a nexus state
- Cart shipping and tax estimate for a Nexus state
- Calculating taxes from an order inside WooCommerce > Orders
Our SmartCalcs integration hooks onto the
woocommerce_calculate_totals action, only if sales tax calculations are enabled.
After a customer completes an order using SmartCalcs, our plugin stores the rate region ID and sales tax amount (both order and shipping tax) in your database.
How Reporting Works ↑ Back to top
TaxJar automatically queues up an import to pull order and refund transactions from your store for the last 60 days, after the connection between WooCommerce and TaxJar is made. Store transactions continue to be imported on a nightly basis.
If you sign up for a paid TaxJar subscription, you can request a backfill import for older transactions.
To import transactions from your store into TaxJar, your store is connected using the WooCommerce REST API. Our plugin automatically generates API keys after enabling order downloads to TaxJar.
We break up imports into smaller jobs, divided by day to minimize load on your server. Orders must be in a
refunded status for TaxJar to import them. This ensures that only completed orders and refunds are imported into the system.
International Stores ↑ Back to top
TaxJar supports checkout calculations powered by SmartCalcs in more than 30 countries, including VAT in the EU and Canada. To perform international calculations, set the country as your Base Location under WooCommerce > Settings > General.
FAQ ↑ Back to top
The Sales Tax Reporting feature isn’t importing orders, what’s the issue? ↑ Back to top
If you experience connection issues, review this support article on ways to troubleshoot. Ensure that your server meets WooCommerce system requirements. Your PHP memory limit should be 64 MB or higher (128 MB+ recommended). If you’re unsure about requirements, contact your hosting provider.
Questions & Feedback ↑ Back to top
Have a question or need assistance? Get in touch with our WooCommerce sales tax experts.
To help us help you, please include your TaxJar plugin version in your support email and include any relevant log entries if you’re having difficulties. You can find the plugin version under Plugins > Installed Plugins.