How to Manage Conditional Sales Tax in Dynamics 365 for Finance and Operations

Sales tax is a form of indirect tax that, as an organization, you’re required to charge your customers based on certain types of sales transactions (sales of goods or rendering of services) if you have a nexus in the territory of a government entity that levies the sales tax. (Nexus, also called “sufficient physical presence” is a legal term that refers to the requirement that companies doing business in a state must collect and pay sales tax on sales in that state.)

Let’s take a look at how to manage conditional sales tax in Dynamics 365 for Finance and Operations.

Sales Tax Accounting

Whenever you invoice your customer for a sales transaction, the below table shows what accounting entry  gets booked in Dynamics 365 for Finance and Operations system:

Sales tax payable is a current liability account that appears in a company’s balance sheet; it projects the amount of sales tax liability to regulatory authority for invoices billed to customers.

Using Dynamics 365 for Finance and Operations, at the end of the sales tax settlement period (on a monthly or quarterly basis), you’re expected to remit to the tax authority the total tax liability accounted throughout that period.

In most scenarios, you’re liable to pay sales tax to the regulatory authority as soon as you invoice your customer. At that point, it’s really immaterial to consider whether or not your customer will pay the sales tax component on a future day.

Hence, if your customer doesn’t pay you for the sales tax component, you would have to issue a credit memo to lower your sales tax liability account balance by the tax component, and adjust the account receivable balance accordingly. And if you have already remitted that amount to the tax authority during last settlement period, the customer’s non-payment becomes a reduction in your next sales tax remittance.

Benefit of Using Conditional Sales Tax

Well, there’s an easier way to tackle this situation. If the regulatory authority allows you to book sales tax liability on a payment basis instead of at the time of invoicing, you can allow Dynamics 365 for Finance and Operations to book the actual sales tax liability only when customer payment is made to partially or fully settle the invoice. This feature is called ‘conditional sales tax’.

With your ERP system configured to calculate sales tax on a payment basis for a specific tax authority, you’re liable to remit the authority only for the proportionate sales tax amount for which payment has been made during that settlement period.

Here’s an example to clarify further:

Company ABC has reached a consensus with Tax Authority XYZ to account for sales tax liability on a payment basis.

ABC manages its financials using Dynamics 365 for Finance and Operations, where the sales tax settlement period is set-up on a quarterly basis.

On May 15, 2018, ABC bills it’s customer for $2000.00 + 5% sales tax ($100.00), making the total invoice amount $2100.00.

ABC receives a partial payment of $900 on June 5, 2018.

Hence, when ABC generates sales tax payment at the end of the current quarter, it will only be accountable for the proportionate tax amount (i.e. $42.86) to remit to the tax authority.

Configuring Conditional Sales Tax in Dynamics 365 for Finance and Operations

[For our demonstration, we’ll say that the company in our example has an agreement with the Tennessee state tax authority to account for sales tax liability upon receiving customer payment.]

1. First we need to enable Dynamics 365 to account for sales tax at the time of customer payment. To set this up, we need to navigate to General ledger > Ledger setup > General ledger parameters > Sales tax. Set the slider to enable ‘Conditional sales tax’.

2. The next step is to define a balance sheet account code to temporarily account for the sales tax liability at the time of invoicing. Navigate to General ledger > Chart of accounts > Accounts > Main accounts. Add a new account code ‘Sales tax awaiting settlement’ with account type ‘Liability’ and posting type ‘Sales tax’:

3. Now we need to configure a dedicated ledger posting group and tax settlement period definition for conditional sales tax:

As shown above, the sales tax payable account against the conditional sales ledger posting group would be the newly configured ‘Sales tax awaiting settlement’ main account code.

Don’t forget to define the settlement period specific to

4. Next, define a dedicated conditional sales tax code and map that to the ledger posting group and settlement period already configured:

*** Make sure that you have associated the actual state sales tax code, which you need to report to the tax authority, as ‘Payment sales tax code’ against the conditional tax code.

This mapping will ensure that upon customer payment, proportionate tax liability will be transferred from the sales tax awaiting settlement account to the actual sales tax liability account mapped with the reporting sales tax code:

5. Now define a dedicated sales tax group for conditional sales tax:

The conditional sales tax code should be associated with this tax group.

6. You would then need to map the conditional sales tax code with the generic item sales tax group applicable for all states:

7. Once basic setups are completed, associate your customer account with the newly created conditional sales tax group:

Understanding Conditional Sales Tax Functionality with Real-Time Transactions

In this section we’ll try to understand the conditional sales tax feature with the help of some real-time transactions:

1. Let’s start with booking a sales invoice with the below mentioned details against our previously selected customer account ‘US-008: Sparrow Retail’:

Sales Amount: $3600.00

Sales Tax: $252.00 ($3600.00 * 7%)

Invoice Total: $3852.00

2. Once the sales order is invoice posted, let’s run the sales tax payment report with the actual reporting tax code to analyze sales tax liability upon invoicing:

As we can observe, it returns a blank report for the current quarter. Which means that invoicing doesn’t impose any obligation on actual sales tax liability.

Rather, if we execute the same report against the conditional sales tax code, it will reflect the sales tax balance in the current quarter:

3. If we observe the sales invoice voucher entries, things get even clearer:

As we can see, the sales tax amount is recorded against the sales tax awaiting the settlement account code instead of the actual tax payable account.

4. Let’s now book a partial payment of $2500.00 during the same quarter and apply it to the already booked invoice:

5. As soon as the remittance is applied to the invoice entry, the system will transfer a proportionate sales tax amount to the reporting sales tax code from the conditional tax code.

From an accounting entry standpoint, it gets transferred from the sales tax awaiting settlement account code to the actual sales tax payable account.

6. If we remember, this sales tax balance transfer is invoked by the payment tax code associated with our conditional sales tax code:

7. Now if we execute a sales tax payment report for the reporting tax code, it will reflect a proportionate tax amount:

8. In parallel, if we execute the report against the conditional sales tax code, we’ll observe that it has retained the remaining tax balance:

[Please note that we have used the Tax > Declarations > Sales tax > Report sales tax for the settlement period for our comparative analysis.]


Based on the specifics we mentioned above, it’s evident how beneficial a conditional sales tax feature can be for sales tax liability. For further questions on how Dynamics 365 for Finance and Operations can help your payment processes, please contact us today.