Tax-inclusive vs tax-exclusive pricing for US, UK and EU
- Type
- Applies to
- Medusa v2.x
- Updated
Short answer
US stores usually show prices before sales tax and add tax at checkout, while UK and EU consumer prices include VAT. In Medusa, you enable tax-inclusive pricing per region or per currency, set VAT and sales tax rates in tax regions, and use the Avalara tax provider or a custom one for address-level rates.
What tax-inclusive and tax-exclusive pricing mean
A tax-inclusive price already contains the tax, so the checkout total equals the shelf price. A tax-exclusive price is the net amount, and tax is added at checkout. For example, a tax-inclusive price of 120 GBP at a 20% VAT rate is 100 GBP net plus 20 GBP VAT.
In Medusa v2, a tax-inclusive price is one where Medusa calculates the tax amount from the price instead of adding it on top (Tax-Inclusive Pricing).
Which convention the US, UK and EU use
The table summarizes widely documented rules for consumer sales. It is general information, not tax advice; confirm your obligations with the tax authority or an adviser.
Sources: US rates from Avalara's state rate table, UK rates from GOV.UK, UK display rules from GOV.UK online selling, and EU rules from Your Europe on VAT rates and consumer pricing.
The practical result for a store selling in all three: show US prices tax-exclusive, and show UK and EU prices tax-inclusive.
How to configure tax-inclusive pricing per region or currency in Medusa
Medusa stores the setting as a price preference. A price preference targets either a Copy to clipboardregion_id or a Copy to clipboardcurrency_code and has an Copy to clipboardis_tax_inclusive flag. Only those two attributes are supported.
You set it in two places in the Medusa Admin:
- Per region: the "Tax inclusive pricing" toggle when you create or edit a region (Manage Regions), or Copy to clipboard
is_tax_inclusiveon the Create Region API route. - Per currency: the tax-inclusive toggle next to a currency in the store settings (Manage Store).
When a price matches both, the region's preference wins if the price belongs to that region. If you use tax-inclusive prices, Medusa's docs note that tax-inclusive promotions (v2.8.5+) are most useful with tax-inclusive prices, because the discount amount you enter is then treated as including tax (Tax-Inclusive Promotions).
How Medusa calculates the tax amount
Medusa's Tax Module calculates tax lines from tax regions. A tax region is the tax setup for one country.
- Each tax region has a default rate, and override rates for specific product types or other rules.
- Countries such as the US have sublevel tax regions for states or provinces. Sublevel rates can be combined with the parent's rate.
- Each tax region uses a tax provider. The default Copy to clipboard
tp_systemprovider applies the rates you enter.
The Avalara guide builds a tax provider that returns tax lines from AvaTax, creates an Avalara transaction when an order is placed, and syncs products to Avalara.
How to show the right price in the storefront
The Store API returns tax-aware prices when you pass both Copy to clipboardregion_id and Copy to clipboardcountry_code with Copy to clipboardfields=*variants.calculated_price. Each variant then has:
- Copy to clipboard
calculated_amount_with_tax: the price including tax. - Copy to clipboard
calculated_amount_without_tax: the net price. - Copy to clipboard
is_calculated_price_tax_inclusive: whether Copy to clipboardcalculated_amountalready includes tax.
Show Copy to clipboardcalculated_amount_with_tax in the UK and EU, and the net price in the US with tax added at checkout (Show Price with Taxes).
When Medusa is not the right choice
- You want tax filing and remittance handled inside the commerce platform. Medusa calculates tax lines; filing needs a provider such as Avalara or your accountant.
- You have no developer to connect a tax engine and need address-level US rates on day one. A hosted platform with a built-in tax service is faster to start.
Common questions
Can Medusa use tax-inclusive prices in the EU and tax-exclusive prices in the US at the same time?
Yes. Medusa stores the tax-inclusive setting per region or per currency, so an EU region can include VAT while a US region adds sales tax at checkout.
Does Medusa include VAT and sales tax rates out of the box?
Medusa's default tax provider applies the rates you enter in each tax region. For address-level rates, connect a tax provider such as Avalara using the official guide.
Does Medusa file or remit taxes?
No. Medusa calculates tax lines for carts and orders. Filing and remittance are handled by a tax service such as Avalara or by your accountant.
How does Medusa handle promotions on tax-inclusive prices?
Medusa supports tax-inclusive promotions (v2.8.5+), which the docs describe as most useful with tax-inclusive prices: the discount amount you enter is treated as including tax.