There's a piece of code in the ot_group_pricing like this:
$discount = ($order_total - $gift_vouchers) * $group_discount->fields['group_percentage'] / 100;
$od_amount['total'] = round($discount, 2);
$ratio = $od_amount['total']/$order_total;
/**
* when calculating the ratio add some insignificant values to stop divide by zero errors
*/
I don't have any idea why a small ratio to avoid divide by zero errors would be calculated this way ...
With my 15,10eur test purchase and 3% discount, it sets the ratio to:
0.45 / 15.1 = 0.0298013245033
0.45 is the right discount, but for somereason the 0,029801... is added to the discount a bit further down in the code.... Why?
Anyway, I got my discounts working by adding a truelly insignificant ration of 0.0000000001
So replace
**$ratio = $od_amount['total']/$order_total;
**
with
$ratio = 0.0000000001;
in the module code and it should work!