Skip to main content

Notifications

Retail Sales Tax Determination

There are a few different configurations and combinations when it comes to calculating tax.  The purpose of this article is to assist in becoming familiar with the basics on which Sales tax group will be applied in different scenarios.  The information provided below is valid as of the date the article was written, this is subject to change as we continue to improve the product. 

There are 2 parts to this blog: 

  1. MPOS/CPOS tax determination
  2. Ecommerce tax determination

 

MPOS/CPOS tax determination

 In Retail POS, the tax policy is taken into consideration in the following priority order of -> Customer tax -> Store tax.

  1. For Destination based tax to be taken into consideration, "Use Destination based tax" on the Store form should be enabled and the order should be a shipping order with the address set as the delivery address.

The following location on the Address of the Customer can be used as an override to always apply a specific Sales tax from the address.  If none is entered, the Tax engine determines the applicable taxes on the orders shipping address.

Customers Address sales tax group = Customer > Addresses > More options > Advanced > General > Sales tax

  1. If this first condition evaluates to false, then if Customer Based Tax is enabled on the Store form and there is a customer added to the transaction, the Customer's sales tax group is considered.

Customers Sales tax group = Customer > Invoice and delivery > Sales tax group

**Keep in mind that for a new customer, this takes on the Customer group from the Default customer assigned to the store.  If there is a Sales tax assigned to this group, this is then assigned to the Customer as the Sales tax group.

Stores Sales tax group = Store > Default customer > drill back on the customer record > General > Customer group > drill into the group > Default tax group

  1. If the second condition also does not evaluate to true, then the Store tax group is considered. 

 By design, the tax group policy checking does not have a tax fallback calculation between types of store taxes. That is, if the store is using Customer based tax and no tax group is found, it should return 0 instead of trying to calculate using store based tax.

BUT the Default customer will use the Store tax in this scenario.

Thus in order for the address based tax to work, in HQ the "Use Destination based tax " should be enabled on the store and for the transaction made, the newly created customer address should be assigned as the "Shipping address". 

 Setup Locations:

Customers Address sales tax group = Customer > Addresses > More options > Advanced > General > Sales tax

Customers Sales tax group = Customer > Invoice and delivery > Sales tax group

Stores Sales tax group = Store > Sales tax group

Default customer’s group Sales tax group = Store > Default customer > drill back on the customer record > General > Customer group > drill into the group > Default tax group

 Other setup:

  • Commerce parameters > Sales tax calculation > Recalculate or Don’t Recalculate
    • This parameter controls whether the creation of the Sales order and Invoicing in HQ will honor the calculated tax amounts from POS or if it should recalculate the tax values.
    • Doesn’t pertain to Online store at this time 

If a new customer is created in POS:

  • Using Destination based taxes – ensure you add an address > assign Sales tax group
  • Using Customer based tax – assign the proper Customer group which links the Sales tax group
  • Using Stores based tax – the customer assigned taxes will not matter.

 **No Customer (default customer) = Stores tax (assumes customer is local)

**Customer orders require customers

TAX EXEMPTION
There are 3 main ways to utilize Tax exemption at the POS.  

  1. Manually add a tax exemption code from the POS button grid operation
  2. Customer assigned Sales tax code exemption rate of 0.0%
    1. This is applicable if the Stores tax calculation is set to Customer based.
  3. Store configuration to calculate tax exemption
    1. You must set the Store form to use the option “Calculate customer tax exempt”
    2. On the Sales tax groups form, the Tax code must be marked as “Tax exempt”
    3. The Tax code marked as exempt must be the one that the Store is applying


Additional information can be found here:  Calculation of tax exemption - Commerce | Dynamics 365 | Microsoft Learn

 

 Below is a matrix outlining whether you have Destination or Customer based taxes configured in the Store along with the type of POS transaction.  The last column is what the system will determine as the Sales tax group to be used.

 

NOTE!!!  When testing Tax changes and it doesn't look like POS is reflecting the update, Retail stores (POS) will not make this update in the middle of the day/transaction.  Thus the tax setup is cached and may need an IISREST each time Tax is updated (such as changing the Stores Tax calculation methods)

pastedimage1633968497130v1.png

 

 

Ecommerce tax determination

First, I would like to note that there is also a related document on the Docs site that can be referenced at the following link:

Configure sales tax for online orders - Commerce | Dynamics 365 | Microsoft Docs

 

Customers creating orders in the online medium are normally provided with the option to either have their items shipped or picked up at a local store. Since these customers are in various tax regions, there is a need to calculate taxes based on the destination of the items on the order. To obtain the applicable taxes, the online store front utilizes the Commerce tax engine. Since it is also possible to assign different delivery methods to each line item in the cart, sales tax calculation will be performed for each line based on its destination.

  • For pickup in store or curbside pickup, the tax group is derived from the store selected to honor the pickup.  For this scenario the store should be configured with a Sales tax group, more details here:
  • For shipping to customer address, the delivery address of the line will determine the line Tax group.
  • There is an exception to the above rules if the Customer account has been directly assigned a Sales tax group. In this instance, the customer specified Sales tax will take precedence over a destination tax calculation. This is not a normal scenario but can occur when a specific tax has been defined in headquarters in the customer record. (Example: Tax exempt)

 

To allow the system to properly calculate “Destination based taxes”, it is recommended to configure the Default customer assigned to the Online store with blank values. The reason behind this is that new online customer accounts use the Default customer account as a template when created.  Any preconfigured values set on the default customer will be inherited on the new customer record. 

  • The Default customer should NOT have Sales taxes configured on the address nor the Invoice and delivery tab to avoid copying details to new customer records.
  • If there is a ‘Customer group’ linked to the default customer, it should NOT have a default Sales tax associated.

 

NOTE: At the time of this article, there is not a way to link an existing customer account in D365 Headquarters to one that wants to shop Online.  A customer must create a new online account.  This customer will then have 2 accounts in HQ, but only 1 is linked in the backend to an Online account.

 

Quick reference for Sales tax setup locations:

  • Customers Address sales tax group = All customers > Addresses > More options > Advanced > General > Sales tax
  • Customers Sales tax group = All customers > Invoice and delivery > Sales tax group
  • Stores Sales tax group = All stores > General tab > Sales tax group
  • Default customer = Online stores > Default customer > drill back on the customer record > General > Customer group > drill into the group > Default tax group

 

Below is a matrix of Tax group assignments and resulting Taxes:

pastedimage1633968563881v2.png

 

Comments

*This post is locked for comments