Jump to content

Wrong VAT Calculation with Vouchers


Recommended Posts

Hi, 

 

my shop has the following problem:

 

Customer orders products for 100€ but one product (10€) could not be delivered so the invoice will be changed to 90€ and the missing product deleted. Therefore he gets a voucher in his account over 10€ for his next purchase.

 

the big problem now is that if the customer applies his 10€ voucher in the next purchase the 10€ are actually displayed as 8,x € and those reduce the value of the products and therefore also the overall VAT generated by the products. 

the final sum for the customer stays the same but my VAT is too low. 

 

calculation describtion like it is right now:

.) product 1 without vat

.) product 2 without vat

.) - part of voucher (for example 25,25€ voucher was applied as 22,44€)

.) shipping without tax

.) Total VAT (from voucher reduced produts + shipping vat)
.) INVOICE SUM

 

according to my accountant this is wrong, because the 10€ from the customer/voucher have to be considered like a payment. 

 

calculation should be like this:

 

.)products without vat

.)shipping without vat

.)total vat

.)SUM

.)-Voucher/discount 

 

I have already talked with a prestashop agency which reported my that they setup a clean shop and it worked like discribed above. So i setup a new shop as well and it does not work .....

 

I have looked for all options and possible code adaptions before my time but i cant find anything. Any clue where i can find the neccessary file to edit vat/cart calculation or option in the backend?

 

attached the vat calculation from my dev environment with updated prestashop 1.6.1.5

thanks a lot in advance

post-1031182-0-84479500-1466599682_thumb.jpg

Link to comment
Share on other sites

  • 3 weeks later...
  • 3 years later...

Old Topic but for anyone coming here with the same problem:

To have the VAT corrrectly calculated in invoice email with voucher change in classes\PaymentModule.php:

'{total_tax_paid}' => Tools::displayPrice(($order->total_products_wt - $order->total_products) + ($order->total_shipping_tax_incl - $order->total_shipping_tax_excl), $this->context->currency, false)); 

to

'{total_tax_paid}' => Tools::displayPrice(($order->total_paid_tax_incl - $order->total_paid_tax_excl), $this->context->currency, false));

cheers

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...