The price mode on an order in Brightpearl dictates whether the order row prices displayed are inclusive or exclusive of tax. This then ensures that Brightpearl calculates the tax correctly - either adding it on top, or splitting it out.
Tip: The price mode on the order is for display purposes only - if you'd like to ensure your customers only receive invoices displaying the tax one way or another, you can do so by making sure the columns on your invoice template are set appropriately. Read more here.
Prices include tax
In 'Prices include tax' mode, the 'price' and 'total' will display including tax. The tax breakdown will only be displayed at the bottom of the page, in the totals section.
In this example, the price of £12.99 is including tax and therefore 20% tax is calculated as being part of £12.99.
Notice how the tax column is hidden, and the total represents the row total.
Prices exclude tax
In 'Prices exclude tax' mode, the 'price' and 'total' will display excluding tax. There is an additional column, labeled 'Tax', which lists the row tax.
In this example the list price/price of £12.99 is excluding tax and therefore 20% tax is added on top.
Notice how the tax column is displayed and the total does not represent the row total, but the total net.
How is the price mode set?
Manually created orders
The price mode on a manually entered order is dependent on the price list used.
If the 'Show prices as gross' option on a price list is set to 'Yes', an order created using that price list will automatically have a price mode of 'Prices include tax'. If it's set to 'No', any order created using that price list will have a price mode of 'Prices exclude tax'.
This setting can be changed under Products > Price lists, by clicking the pencil next to the relevant price list.
The API only accepts net prices and a separate tax value, and both values are required.
Some integrated platforms provide the tax value directly, such as Magento, Bigcommerce and Shopify. Others, like Amazon, calculate the tax within the connector, and some, like eBay, allow you to choose what method to use.
The price mode assigned to the order is variable, but in general:
- Online stores (Magento, Shopify and Bigcommerce) always uses 'Exclude tax' mode
- Amazon and eBay default to 'Include tax'
However, there is one overriding rule which all integrations with Brightpearl adhere to:
The price mode is always “Prices exclude tax” when Brightpearl calculates a tax value which is different from that received via the API.
Brightpearl will always use the tax value sent via the API, overriding what Brightpearl would calculate within the order. This isn’t a problem, except for when this override happens the tax column must be shown on the order row so that a “manual tax” entry can be made.
An order for a single item, for which the customer paid £4, including 20% tax. This will be sent via the API as:
£3.33 net + £0.67 tax
When the order is created in Brightpearl, the line item is added with a tax inclusive price of £4.00 and a tax code of T20 (20%). Brightpearl performs its own calculation for tax and agrees that tax would be £0.67. Therefore the price mode remains as “Prices include tax”.
An order for a single item, for which the customer paid £3.99, including 20% tax. This will be sent via the API as:
£3.33 net + £0.66 tax
When the order is created in Brightpearl, the line item is added with a tax inclusive price of £3.99 and a tax code of T20 (20%). Brightpearl performs its own calculation for tax and disagrees - it thinks it should be £0.67.
In this case, the calculated value received via the API is overridden and manual tax is added. However, in order to apply manual tax Brightpearl needs the tax column to be shown. The tax mode is therefore switched to “Prices exclude tax”.