Изменение:
$coupon = Mage::getModel('salesrule/coupon');
на:
$coupon = Mage::getModel('salesrule/rule');
getDiscountAmount
не существует в /app/code/core/Mage/SalesRule/Model/Coupon.php
, но отображается в /app/code/core/Mage/SalesRule/Model/Rule.php