This is not a 100% fix to everything in the file:
/includes/modules/order_total/ot_coupon.php
But try changing the code to the code in RED:
Code:
case 'F': // amount Off
// $od_amount['total'] = zen_round($coupon->fields['coupon_amount'] * ($orderTotalDetails['orderTotal']>0), $currencyDecimalPlaces);
$od_amount['total'] = zen_round(($coupon->fields['coupon_amount'] > $orderTotalDetails['orderTotal'] ? $orderTotalDetails['orderTotal'] : $coupon->fields['coupon_amount']) * ($orderTotalDetails['orderTotal']>0), $currencyDecimalPlaces);
and see how that works for you ...
NOTE: this is not a solution for everyone, but a temporary fix for you at this time ...