First Store project underway for a UK store charging VAT.

I'm (probably) going to enter prices ex-VAT into the database as they do ship internationally, but I generally want to display them inc-VAT throughout the site. The only place I'm likely to split things out is in the checkout.

Is there a "best practice" for this? I've got my VAT setup and UK is the default country, but I can't figure out how to add tax to the price displayed using a {store_field:price} tag.

Quite happy to get my hands dirty with add-ons/extensions etc, but not if I don't have to.


  • See my answer here as to why this is a bad idea Commented May 9, 2014 at 16:19
  • ok, that's going to take some digesting! But I'm already encountering rounding issues so I suspect you're right Commented May 10, 2014 at 20:33

1 Answer 1


Had the same issue so wrote a Tax plugin, I've just uploaded it but still needs instructions adding.

Template Tags - either as tag pairs or single tags:

  • {exp:tax:only} - display only the tax
  • {exp:tax:price} - display the price with tax
  • {exp:tax:none} - display the non-taxed price

If using as single tags, use the value or price parameter to set the numerical price value. Value passed can already be inclusive or exclusive of tax - default is that tax is already included in price.


  1. {exp:tax:only value="10" rate="20" currency="£" show_currency="yes"}
  2. {exp:tax:only rate="20" currency="£" show_currency="yes"}10{/exp:tax:only}

Will both output: £2.00


  • included (is the tax already included in the passed price value)
  • value or price (the number/string to use - for single tags only)
  • rate (rate of tax, any non numerical characters will be stripped)
  • show_currency (show the currency symbol on output - defaults to no)
  • currency (what currency symbol to use - can also take any character passed as a value or within the tag pair)
  • position (where the currency symbol should appear, options are "before" and "after" - defaults to before)
  • decimals (show decimal points - defaults to yes)
  • thousands (show the thousands character - defaults to yes, character can only be defined through config settings)
  • rounding (how the calculations should be rounded, options are "up", "down", "nearest")

All the above defaults can be defined in the EE config file:

  • tax_rate
  • tax_included
  • tax_currency
  • tax_position
  • tax_decimals
  • tax_thousands
  • tax_show_currency
  • tax_rounding
  • tax_decimal_places
  • tax_thousand_symbol
  • tax_decimal_symbol

Decimal places, decimal character and thousand character can only be set via config variables.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.