What is TaxCloud
TaxCloud is an online service that calculates US sales tax.
US sales tax has no single national rate. The tax on a sale is the sum of state, county, city and special district rates, and it depends on where the goods are delivered. Rates change during the year, and some product types are taxed differently from state to state.
TaxCloud keeps these rules up to date. A business sends the products, prices and delivery address, and TaxCloud returns the correct tax.
TaxCloud features
| Feature | Description | Used by this module |
| Tax calculation | Calculates sales tax for more than 13,000 US tax areas | Yes |
| Address verification | Checks and corrects US addresses, for example by adding the ZIP+4 | Yes |
| Product tax codes (TIC) | Codes that tell TaxCloud how a product is taxed | Yes |
| Exemption certificates | Removes tax for exempt customers, such as resellers or non-profits | Yes |
| Order and refund records | Stores completed sales and returns | Yes |
| Reports and filing | Prepares state tax returns; filing and payment depend on the TaxCloud plan | Uses the sales reported by Odoo |
| Streamlined Sales Tax (SST) | Free calculation and filing for eligible businesses in participating states | Managed in TaxCloud |
What TaxCloud is not
- It is not an accounting system. Odoo stays the book of record for invoices, payments, and the general ledger.
- It does not decide legal obligations. Registration in each state and product classification still need tax-adviser input.
- It is built for US sales tax. It is not a solution for VAT or GST in other countries.
About the module
Our TaxCloud connector adds automated US sales tax to Odoo 20 Community and Enterprise, with address verification, tax exemptions and full request logs.
Benefits:
- Correct tax for each delivery address instead of a flat rate.
- No manual tax tables to maintain.
- Fewer errors from wrong or incomplete addresses.
- TaxCloud reports match the sales recorded in Odoo.
- Every request to TaxCloud is logged.
How the integration works
The integration is a conversation between Odoo and TaxCloud at specific moments in the sales process. Staff keep working in Odoo as they do now.
| Step | Moment in Odoo | What happens behind the scenes |
| 1 | Customer address is verified | A user clicks “Verify address”. If TaxCloud can improve it (for example a missing ZIP+4), the user sees the corrected version and chooses whether to accept it. Editing an address clears its verified status; optionally, unverified addresses are also checked silently when tax is calculated. |
| 2 | Quote sent, order confirmed, invoice posted, or POS / online order paid | Odoo sends the products, prices, quantities, shipping charge, ship-from and delivery address. TaxCloud replies with the tax for each line, and Odoo shows it on the document. |
| 3 | Invoice is posted or POS order is paid | Odoo tells TaxCloud the sale is final, so it appears in TaxCloud’s tax reports. |
| 4 | Credit note or POS refund | Odoo tells TaxCloud the sale was reversed, fully or partly. |
The custom modules
The integration is delivered as four Odoo 20 add-ons: a core connector for invoices, plus Sales, Point of Sale and eCommerce extensions installed only where needed. Each can be installed, upgraded or switched off on its own, without changing Odoo’s standard modules. Together they contain these parts:
| Part of the module | What it does |
| Settings screen | Stores the TaxCloud connection details, the tax template and the default product code for each company, with a Test Connection button. |
| Customer addresses | Adds the “Verify address” button, the confirmation step for corrected addresses, and a tax-exemption ID. |
| Products | Adds a TaxCloud tax code (TIC) on products and product categories, with a company-wide default. |
| Quotes, orders, invoices, POS and eCommerce | Requests tax from TaxCloud and shows it on each line, skipping repeat requests when nothing has changed. |
| Request log | Records every request and response, with credentials hidden, for support and audit; old entries are cleared after a set number of days. |
| Reporting | Reports posted invoices, credit notes and paid POS orders to TaxCloud on a schedule, with Pending and Errors filters. |
| Safety rules | A 20-second timeout and automatic retries; if TaxCloud stays unreachable, the document is held rather than taxed wrongly. |
Module features
- Automatic tax calculation. Tax for each line is requested from TaxCloud and applied exactly as returned. Each rate is saved as a normal Odoo tax, for example "Tax 9.375%".
- Correct tax address. Shop sales are taxed at the shop. Delivered orders are taxed at the customer's delivery address.
- Address verification. A Verify button on US contacts shows the address suggested by TaxCloud. The user decides whether to apply it. Addresses can also be checked automatically during tax calculation.
- Product tax codes. A TaxCloud tax code (TIC) can be set on a product or a product category. A company default is used when none is set.
- Tax exemptions. A TaxCloud exemption certificate ID can be set on a customer.
- Shipping and discounts. Shipping is included in the tax request. Order discounts are not applied to shipping or fees.
- No repeated requests. TaxCloud is called again only when the order changes.
- Sales reporting. Posted invoices, credit notes, paid POS orders and refunds are reported to TaxCloud every 15 minutes. Failed reports are marked as errors and can be retried.
- Safe handling of errors. If TaxCloud is not available, the document is held. Tax is never set to zero or guessed.
- Request log. All TaxCloud requests and responses are logged. The API key is never stored in the log.
Supported apps
The connector has four modules. The core module is required; the others are optional.
| Module | Covers | Tax is calculated |
| TaxCloud Odoo Connector | Invoices, credit notes, address verification, reporting, logs | When an invoice is posted |
| TaxCloud Odoo Connector - Sales | Quotations and sales orders | When a quotation is sent or an order is confirmed |
| TaxCloud Odoo Connector - Point of Sale | POS orders, receipts and returns | When the payment screen opens |
| TaxCloud Odoo Connector - eCommerce | Website checkout | During checkout |
Requirements: Odoo 20 (Community or Enterprise) and a TaxCloud account. Tax is calculated only for documents that use the TaxCloud fiscal position.