Shopify taxes
Why Shopify-to-Odoo tax mapping is hard
Shopify's tax engine produces a tax line per applicable jurisdiction (state, county, city for US; VAT for EU; GST for India/Australia). Odoo's tax records are configured per company with their own jurisdictional rules. The mapping isn't 1-to-1 by default — the same Shopify tax line could correspond to several different Odoo tax records depending on how your books are set up. Get this wrong and your tax filings are wrong.
- Shopify produces a tax breakdown by jurisdiction at checkout.
- Odoo records tax against configured tax records (not raw rates).
- Tax-line shape differs across Odoo v16, v17, v18, and v19.
- Refunds and credit notes need to reverse the right tax records.