This question has been asked a few times, but I've not found a satisfactory answer, or the responders have not seemed to understand the issue, so here goes.
I have stores with Opencart and Magento, and those platforms assume that product prices include any tax that you may assign to them. (I'm in the UK so our VAT tax rate is 20%)
So, for example, a taxable product with a price of 9.99 is assumed to be 8.32 + Tax when it comes to checkout.
It seems that AbanteCart ADDS the tax to the product price instead, rather than assuming it's included. So a taxable product at 9.99 becomes 9.99 + tax at checkout - 11.99.
I can zero rate my products, but if a B2B customer requires a VAT invoice, then this is problematic.
System > Settings > Checkout > Display Prices With Tax set to no just removes "inc. Taxes" off the product page.
Is there a way of getting AbanteCart to include tax rather than add tax to product prices? I use Magento so am not afraid of a little coding if it's possible.
It seems like a good platform for what I need, but I can't be doing trying to work out all my prices ex-VAT, what with all the rounding up/down issues.
TIA.
Hello andmoss123,
There are multiple aspects here and I try to understand what you ask.
I assume you want to enter price with the the tax and automatically recalculate to base price without tax.
Challenge is with multi regional stores, as tax class is connected to the customer's location (delivery address).
If your business is only in one location it will not be a problem, but we need to cover all the scenarios in the platform.
I think this can be solved with adding 2 extra fields. Price Including tax and tax class/value selection
After entering price with tax, base price will be calculated based on selected tax class/value
This can be done with the JavaScript on tax class/value selection event.
After base price is calculated and form is saved, the storefront will use base price with tax class appropriate to the location.
See similar form image from prestashop
Does this work or you looking for something different?
I'm struggling with the same problem, I'm from Portugal where the tax rate is 23% and I'd like to have my products on the site already with VAT and rounded and I can't, I have to have strange prices on my site and in Prestashop that doesn't happen, I'll give you an example, I want to sell a product at 8€ and I can't, I have to sell it at 8.89€ or 8.91€ in Prestashop I choose the 23% rate for and put 8€ in the final price and it automatically does the rest like you can see in the foto.
One thing that must be reconsidered in the include tax in the pricing is how the product page calculates if the quantity is more than one and displays on the checkout page. Currently the algorithm used in core code is simply to multiply the price inc tax by the quantity. But this introduces a rounding error of .01
And if there is more than one item , the difference can even be larger.
A demo product of Skinsheen is 29.50 , tax is 8.5%
Price incl tax is 32.01
Currently - the product page and the checkout page with show 96.03 for a qty or 3
32.01 X 3 = 96.03
But the correct amount is 96.02 for qty
(29.50 x 3) x 1.085 = 96.02
Refer to the screen shot for more information as pricing is displayed to customers at checkout - it is confusing for customers. And somewhat problematic when pushing info to an invoicing processor like Moloni for Portuguese clients, as it introduces the .01 difference , if the core coding wasn't re-written for the Moloni push (which is what we had to do for our Moloni extension)
Additionally, in Nuno's desire to round to even numbers with the INCL tax pricing - the base price needs to have more than 2 decimals or the rounding can make the difference even larger.
I know all this llegrand, it's a shame that Abantecart doesn't work the same way as Prestashop, you've done a brilliant job with the Moloni extension, but Abantecart should change this pricing thing so that in the future I and others can have a site where the prices match, because having prices end up in strange numbers isn't very nice.
Hey Nuno,
I made the post here as this is a bit of a different issue - we adjusted the core coding for your site for the Moloni invoicing to work correctly on the product page etc. But thought Devs should be aware of this for all admins using incl tax in the pricing. The have moved the checkout issue to github for a solution and that will be a good thing.
You are still wanting to "back into" a retail price by adjusting the incl tax to be rounded. The issue then becomes how many decimals for the retail price, how to handle the rounding for display on the product page, and how to work with the number of decimals places the Invoicing company (Moloni) uses in their reconstruct of the line items. Moloni uses 6 decimals, and refigures the line items then rounds. You can see how there are several places that are concerned in the decisions.
Cheers all, welcome to the confusion of decimals and rounding
Lee
We discussed this internally and will try to implement in 1.3.5. Feedback will be appreciated. Once it is ready on 1.3.5 branch we will let you know.
Quote from: andmoss123 on October 10, 2023, 05:44:51 PM
This question has been asked a few times, but I've not found a satisfactory answer, or the responders have not seemed to understand the issue, so here goes.
I have stores with Opencart and Magento, and those platforms assume that product prices include any tax that you may assign to them. (I'm in the UK so our VAT tax rate is 20%)
So, for example, a taxable product with a price of 9.99 is assumed to be 8.32 + Tax when it comes to checkout.
It seems that AbanteCart ADDS the tax to the product price instead, rather than assuming it's included. So a taxable product at 9.99 becomes 9.99 + tax at checkout - 11.99.
I can zero rate my products, but if a B2B customer requires a VAT invoice, then this is problematic.
System > Settings > Checkout > Display Prices With Tax set to no just removes "inc. Taxes" off the product page.
Is there a way of getting AbanteCart to include tax rather than add tax to product prices? I use Magento so am not afraid of a little coding if it's possible.
It seems like a good platform for what I need, but I can't be doing trying to work out all my prices ex-VAT, what with all the rounding up/down issues.
TIA.
please test our solution in the dev version v1.4.0 (https://github.com/abantecart/abantecart-src/tree/1.4.0) and let us know