From c574375b598b565f8d69dd76e2156f3677f82313 Mon Sep 17 00:00:00 2001 From: Janusz Dobrowolski Date: Wed, 13 Apr 2011 11:10:44 +0200 Subject: [PATCH] Fixed shipping tax calculation for tax exempt customer. --- taxes/tax_calc.inc | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/taxes/tax_calc.inc b/taxes/tax_calc.inc index 7d124d7d..f0941695 100644 --- a/taxes/tax_calc.inc +++ b/taxes/tax_calc.inc @@ -193,21 +193,19 @@ function get_tax_for_items($items, $prices, $shipping_cost, $tax_group, $tax_inc } foreach ($item_taxes as $item_tax) { - if ($item_tax['rate'] !== null) { - $index = $item_tax['tax_type_id']; - $rate = isset($ret_tax_array[$index]['rate']) ? $item_tax['rate'] : 0; // use customer tax group on shipment + $index = $item_tax['tax_type_id']; + if ($item_tax['rate'] !== null && $ret_tax_array[$index]['rate'] !== null) { if($tax_included==1) {// 2008-11-26 Joe Hunt Taxes are stored without roundings - $ret_tax_array[$index]['Value'] += ($shipping_net * $rate / 100); - $ret_tax_array[$index]['Net'] += $shipping_net; + $ret_tax_array[$index]['Value'] += ($shipping_net * $item_tax['rate'] / 100, $dec); + $ret_tax_array[$index]['Net'] += $shipping_net; } else { - $ret_tax_array[$index]['Value'] += ($shipping_cost * $rate / 100); - $ret_tax_array[$index]['Net'] += $shipping_cost; + $ret_tax_array[$index]['Value'] += ($shipping_cost * $item_tax['rate'] / 100, $dec); + $ret_tax_array[$index]['Net'] += $shipping_cost; } } } } } - //print_r($ret_tax_array); return $ret_tax_array; -- 2.30.2