Automating taxable and non taxable items

Although not well documented, Frappe Support and other experienced users suggest using Item Tax to handle non-taxable items.

I feel something is missing or I’m doing something wrong.

In New York, there are 83 tax jurisdictions with unique rates. I created 83 Tax Categories, 83 Tax rules and add the Tax Category to the customer or customer’s address. This helps to assign the correct jurisdiction for the account head and rate.

I’ve tried to use Tax Rules to assign the tax category. In Tax rule there are fields for Item and Item Group. These are misleading because the tax rule only applies the tax category, it has no impact on the tax calculation. This means Item/Item Group is essentially ignored.

Enter Item Tax. This seems to solve most of the problems. I created 83 Item tax templates and assigned all 83 to the Non Taxable Item Group. When creating a Sales Invoice, my tax calculation is correct.

In the Item Tax Template I use the same account head as the matching jurisdiction’s Sales Taxes and Charges Template. This keeps the child table limited to the single jurisdiction rate. If I use unique accounts for taxable and non-taxable, the system will assign tax all items in the invoice.

Now the issue:
Eventhough the tax is calculated correctly, there is no record of the taxable amount. I think it’s a bit odd that the child table has a total for the full invoice, not the taxable amount.

Before I go create a complex Sales Tax report to try and calculate the taxable amounts, I’m asking here if I’m doing something wrong.

How are others handling Taxable and non-taxable items in the same invoice?

Does anyone know why the total row in the Sales Taxes and Charges table is a running total of the invoice and not the items getting taxes applied?

Should I eliminate the use of Sales Taxes and Charges templates and only use Item Tax Template? I still think I’ll be missing “Taxable Amount” due to the way the Taxes and Charges child table in Sales Invoice calculates the total.

In this case you should only use item tax templates as both tax mechanism either on item line level as well as on document level cannot be used at same time resulting chaos.

Further item tax temple can be configured on item, item group and brand as pre set and will apply relevant tax template automatically either with a Rate or in case of zero rated item as well.

and then Tax Break section is down there capturing each line item with respective tax detail can be handled for print format or any report format as well.

Thank you @ahsantareen. In your example are you only using Item Tax templates?

What I don’t like:
Why is the total amount combining taxable and non taxable here in the Taxes and Charges? I think this is because you are using the same account head for the zero amount, yes?
If only using Item Tax Template, why the need for a zero percent assignment?

In the item tax detail, the total taxable still shows 200 (100 taxed + 100 not taxed), so the problem still exists, Taxable amount is not acccurate.

In New York State, there are two main variables to consider when applying tax:

  1. Where (Which jurisdiction) did transaction occur, this determines the rate and tax account.
  2. What type of product, it it taxable or not taxable. Even this can have variables, for example some products like gasoline/fuel and cigarettes get additional taxes, but I’m not dealing with these yet.

I think I need the document level tax to assign the correct jurisdiction, unless you have another method.

The only think I can think of is to have two unique accounts per jurisdiction, one at zero percent for non taxable items and one at the actual tax rate. If the accounts are unique I can query the DB based on a naming scheme to break out the jurisdiction’s taxable and non-taxable sales. To keep the invoice clean, I can set condition if zero amount don’t print the tax jurisdiction account that has zero rate.