Setting up Tax Codes

Setting up Tax Codes

Under normal circumstances WooCommerce uses tax classes to determine how the add tax to orders and shipping by using table of rates based on the billing or shipping address in the order (or shop base address).

Each product and the shipping classes can be assigned a tax class to determine which table of tax rates to use.  The rates are based on location (Country, State, City & Zip/Postcode) and priority (to allow application of multiple tax rates).  Each rate is given a name and this name is combined with the location elements (Country, city etc) and priority to create a tax rate code that is stored in WooCommerce orders against product and shipping (e.g. GB-VAT-1).

If no tax rate is found for a location, then the tax is set to zero (0.00) and other tax-related fields are left blank (null).

It is usual to set rates for all locations you sell/ship to, applying the relevant rates.

Normally, not assigning a tax class for an item (product or shipping) or not having codes for all locations is ok, if you are happy that it does not apply any tax.  However, Sage 50 requires tax to be given tax codes (T Codes) to classify tax for various reasons (e.g. government tax returns) and Woosage uses the WooCommerce tax rate code to facilitate this via a mapping table.

We recommend that your rates include default rates (i.e. rates that apply if none of the other rates match the location information), but we have also included a default rate that will be used for mapping a T-code in such cases.

Some retail/consumer sites setup WooCommerce so that tax calculations are not performed in WooCommerce and all prices include tax.  You must setup WooCommerce to calulate tax even if it is not shown to the online customer or the Sage tax codes will be incorrect and no VAT will be shown.
An example “Standard” tax class table in WooCommerce might contain:

Country Code

State Code

Postcode / ZIP

City

Rate %

Tax Name

Priority

Compound

Shipping

*

*

*

20

VAT

1

 

Yes

*

*

*

*

0

ZERO

1

 

 

In the above example the first line determines that UK (GB) orders will be taxed at 20%, including shipping charges (this is shown as a tick in WooCommerce).  The second line determines that orders for all other locations will be zero-rated (assuming all products have a “Standard” tax class).

The resulting tax WooCommerce tax code for the first line one would be GB-VAT-1 and the second line would be ZERO-1 (see below)

The same would apply if the second line was omitted and although WooCommerce would still show zero tax on the order for outside the UK, this would create problems for assigning T-code in Sage.

If you use other tax classes to apply tax to product or shipping, then these work in exactly the same way and you should define tax code for each class to cover each region you sell/ship to.

All tax codes defined in WooCommerce must be mapped to a T-code in the Tax Codes tab of the Woosage Desktop Client application.

Each tax class entry that is used in WooCommerce must be mapped to an appropriate Sage tax code.  Standard, Reduced and Zero Rates are provide by WooCommerce when installed and we recommend removing tax classes that are not used.

During WooCommerce order processing a tax code is inserted in to the order.  The form of the WooCommerce tax code is Country code-Tax name-Priority (e.g. GB-VAT-1) and this is obtained by concatenating the following fields from WooCommerce/Settings/Tax/Standard Rates, Reduced Rates and Zero Rates (see figure 4 below) with a “-“ (minus) character between each:

  1. Location components, such as Country code (e.g. GB)
  2. Tax name (e.g. VAT)
  3. Priority (e.g. 1)

The Sage tax codes are T0 through T99 and typical default codes are shown below, but you should check your Sage installation:
  1. T0 Zero rated
  2. T1 Standard Rate
  3. T2 Exempt
  4. T4 Sales to other EU countries (where applicable)
  5. T5 Reduced
  6. T9 Non-taxable
For example, VAT in the UK is typically mapped as GB-VAT-1 to T1 as indicated in the first row of the tax codes table shown below.
The above table must include a WooCommerce tax code that will be used as a default (see , to be assigned to order elements that do not have tax codes.  This code does not have to exist in your WooCommerce tax class rates table as it is purely to assign a T code in Sage where tax codes are missing from line items and shipping charges If WooCommerce has been setup correctly it should get used by Woosage (See Website Settings).

Note that in the above table ZERO RATE-1 has no country code and may be defined in WooCommerce as shown below.

Country Code

State Code

Postcode / ZIP

City

Rate %

Tax Name

Priority

Compound

Shipping

*

*

*

*

0

ZERO RATE

1

 

 Yes

Do not enable automated taxes using WooCommerce Services to automatically set tax codes as this dynamically generates names for codes based on customer location, which are not always consistent.



    • Related Articles

    • Tax Code Mapping

      This article covers setting up the tax codes in WOssage, which allows you to map tax codes from WooCommerce to Sage.  It assumes that you have correctly setup taxes in WooCommerce based on the type of products you sell and where your customers are ...
    • Woosage50 Tax Settings

      By Default Woosage50 uses the tax calculations from the website order when creating a Sales Order or Sales Invoice in Sage. This is done to ensure the tax figures that the customer has been presented with in the checkout are used in Sage, avoiding ...
    • Setting Sage Customer Account Codes via the Woosage Plugin

      The Woosage plugin adds a field to the website user account details (shown below) to allow the Sage Account Code to be added to order generated by the user (when logged on), so that the order is imported to the relevant Sage account.    Add a Sage ...
    • Product Codes (AKA SKU or Stock Codes)

      Sage Code Restrictions. A requirement of Woosage is that the SKU codes in WooCommerce must match the Product (Stock) codes on Sage in order to process orders and update website products. While WooCommerce can have SKU codes up to 255 characters in ...
    • Order Classifications (Nominal and Department Codes)

      Woosage allows you to override your default nominal and department code settings in Sage when Woosage is processing orders. Sales Nominal Codes By default, Sage posts product sales invoices to the sales nominal code associated with each product, ...