Each product in DPD can have a tax class assigned. A tax class is a set of tax rules which define what taxes DPD should collect for a specific product. Using tax classes you can define tax rates for a specific location - country, state, or a specific ZIP / postal code.
You can manage tax classes on the Taxes page under Settings in the left menu. To create a new tax class, click the + Add Tax Class button on the Taxes page. To define a new tax class the name and at least one tax rule are required.
Tax Rules can be defined by:
- Country Code - code of a country a tax is active for. You can specify a valid country code, or enter the * (asterisk) symbol for "any country" condition.
- State / Region Code - code of a country state a tax is active for. A value should be a valid state code for a country specified in the first column. Also you can specify the *(asterisk) symbol for "any state" condition.
- ZIP - ZIP code a tax is active for. You can leave this field empty if you want a tax to be active for any ZIP code within the specified country and state. This field is useful if your state or region collects taxes based on county or city.
- Rate - tax rate, as a percentage of the cart subtotal before shipping.
- Tax name - tax name, for example Sales Tax, GST, or VAT. Do not use a same tax name for different taxes. This name will be displayed on the cart beside the tax amount, so be sure to enter valid names.
- Compound - indicates that a tax should be compound (stacked). Please read the Managing Multiple Taxes section below.
How DPD Applies Taxes
When DPD calculates taxes for a product it first finds the tax class assigned to that product. DPD then groups tax rules in a class by name and determines which rule, by specificity, to apply.
For example, with the following configured sales tax rules:
And the Address:
123 Any Street
MyTown, NC 27284
DPD would match on the 27284 area code, since it's most specific, and charge the customer the 10% tax rate for that rule. The tax will appear in the cart like so:
If the address were instead:
MyCity, NC 30001
DPD would match on the NC rule since the most specific zip rule does not apply and charge the customer the 7% NC tax rate.
If the address were in another state it would apply the general US country tax rate of 5%, and if the customer was from outside the US then DPD would apply no tax.
DPD will automatically sort your tax rules when you save them first by name, then by specificity. If you have any question about what order your taxes will be applied, simply save your tax class. The order they are listed is the order they will be evaluated when an order is placed.
Managing Multiple Taxes
For some jurisdictions you may need to apply more than one tax to a same order item - for example a federal and provincial tax. DPD allows to apply multiple taxes to the same order item. To define multiple tax classes you need to specify different Tax Name values for your tax rules. For example, if you need to apply a federal tax (for example GST) to all customers from Canada and also a provincial tax (PST) for customers from British Columbia you can use the following tax configuration:
In this example, all orders in Canada (CA) would have the GST and Sales Tax items applied. This will appear in the shopping cart like so:
If the buyer is from British Columbia where we have defined the PST tax rule as valid, their order would include that tax also:
The value in the Compound column determines whether the tax should be additive or compound (stacked).
Amounts for additive taxes are calculated using the following expression:
additive tax amount = subtotal * tax_rate/100.
Compound taxes are calculated using the following expression:
compound tax amount = (subtotal + additive tax amount) * tax_rate/100.
Compound taxes use a sum of the item subtotal and additive tax value as an input. In order to make the PST tax compound, you need to specify Yes in the Compound column:
It does not matter what order you define additive and compound taxes in, additive taxes will always be applied before compound taxes.