Мы используем платежную систему UsaEPay для нашего сайта (но я думаю, что эта проблема / вопрос сохраняется и для других способов оплаты).
Система работает так, что «Авторизация и захват» пакетирует транзакцию, и каждую ночь UsaEPay отправляет заказы в банк для окончательной обработки.
Теперь метод возврата не будет работать, потому что до пакетирования доступно только аннулирование.
В бэкэнде нет кнопки «Пустота», только «Возврат» (который выдает ошибку бэкэнда в тот же день).
Есть идеи по отмене заказов A & C?
Ответы:
Мне пришлось работать над очень похожей задачей с Брэйнтри, в которой они также разрешали возмещение только после того, как заказ был выполнен, и до этого можно было только аннулировать. Это не основная ошибка Magento, так как это нечто специфическое для (некоторых) платежных шлюзов. Кроме того, конкретные вызовы API отличаются, поэтому имеет смысл, что команда Magento не может предоставить общее решение.
Решение, которое применимо к этому случаю, состоит в том, чтобы выполнить вызов AJAX, посмотреть, не завершена ли транзакция, и если это так, сделать вызов «void» вместо «refund». Если поставщик модулей UsaEPay не сделает это за вас, это то, что вы должны реализовать.
источник
Я не могу точно сказать
UsaEPay
, но вы можете аннулировать только тот заказ, который не был выставлен счет при использовании authorize.net . в authorize.net , когда вы «авторизуетесь и захватываете», аннулирование больше невозможно. возможно это то же самое сUsaEPay
?источник