这确实是一场噩梦。我真的需要你的集体思想的帮助:
在加拿大,各省的税收计算方式不同:
Alberta - 5%
British Columbia - 5% GST and 7% PST
计算每种产品价格的直接税很容易......我遍历购物车中的所有商品并按产品价格计算税额。即使物品免于PST,我也可以检查......
棘手的部分是当我必须以折扣申请优惠券代码时!
显然,任何折扣都需要应用于税前金额......但我需要单独处理每个项目以计算税额。我不能扣除说,总计20美元,因为每件商品都有自己的定价...这意味着当我处理每件商品时,我需要知道折扣后价格是多少。
但请记住一些产品如何免除PST?好吧,这就是这里的复杂因素:
Item 1 - $24.99 - GST (5%) and PST (7%)
Item 2 - $11.99 - GST (5%)
Discount - $20.00
我如何才能应用购物车折扣,但保持税收的完整性?
答案 0 :(得分:0)
你能做这样的事(伪代码)吗?
$item_price = $10
$final_price = ((($item_price * $discount) * $gst) * $pst)
然后将折扣设置为1的倒数。
即。没有折扣:$discount = 1.0;
20%的折扣:$discount = .8;
编辑:实际上 - 你还没有给出足够的信息。如果折扣占总数的百分比 - 那么我上面的代码就可以了。
但如果您的折扣是“固定”价格 - 那么您就有问题了。您是从第一件商品中取出价格,还是将其平均分配到购物车中的所有商品上?无论如何都会有税收影响。
假设你想在所有项目中分配价格 - 那么这样的事情就可以了:
$discount = $20;
$num_of_items_in_cart = 5;
$discount_per_item = $discount/$num_of_items_in_cart;
$final_price = ((($item_price * $discount_per_item) * $gst) * $pst)