我正在尝试使用在线退款来实施支付网关。 在模型中我有
protected $_canCapture = true;
protected $_canRefund = true;
public function capture(Varien_Object $payment, $amount) {
....
return $this;
}
public function refund(Varien_Object $payment, $amount) {
....
return $this;
}
它正在捕获付款罚款,但是当我进入发票和贷记凭证时,我只能离线退款。
有谁知道我还需要什么?
由于
答案 0 :(得分:1)
为了使在线退款工作,捕获方法需要设置付款ID
$payment->setTransactionId($api->getPaymentId());
$payment->setParentTransactionId($payment->getTransactionId());
$transaction = $payment->addTransaction(Mage_Sales_Model_Order_Payment_Transaction::TYPE_AUTH, null, true, ""
);
$transaction->setIsClosed(true);
然后退款在线工作和退款()方法被称为