Я использую Magento V. 1.9 и внедрил модуль дополнительной платы, который добавляет отрицательную скидку (например, + 5 €), когда общая сумма ниже 50 €.
Функция полностью реализована во всем магазине, и я уже могу покупать вещи по счету.
Когда я хочу что-то купить с PayPal, я получаю сообщение об ошибке «Произошла ошибка, обратитесь к администратору сервера». Как я могу обработать мою дополнительную скидку с PayPal? (Я уже пытался добавить скидку в PayPal).
Я уже пытался добавить скидку через новую статью (обозреватель). Я уже пытался добавить скидку через обозревателя, переопределяя TOTAL_DISCOUNT.
// Добавить статью (ошибка: ошибка ...)
public function paypalPrepareLineItems($observer)
{
/* @var $cart Mage_Paypal_Model_Cart */
$label = 'Mindestmengenzuschlag';
$qty = 1;
$cart = $observer->getEvent()->getPaypalCart();
$address = $cart->getSalesEntity()->getIsVirtual() ?
$cart->getSalesEntity()->getBillingAddress() : $cart->getSalesEntity()->getShippingAddress();
$feeAmount = $address->getExtraFeeRuleAmount();
$cart->addItem($label, $qty, $feeAmount);
return $this;
}
// Обновление итога (ошибка: сумма не совпадает ...)
public function paypalPrepareLineItems($observer)
{
/* @var $cart Mage_Paypal_Model_Cart */
$cart = $observer->getEvent()->getPaypalCart();
$address = $cart->getSalesEntity()->getIsVirtual() ?
$cart->getSalesEntity()->getBillingAddress() : $cart->getSalesEntity()->getShippingAddress();
$feeAmount = $address->getExtraFeeRuleAmount();
$cart->updateTotal(Mage_Paypal_Model_Cart::TOTAL_DISCOUNT, $feeAmount);
}