Paypal — ОФОРМИТЬ ЗАКАЗ.ЗАКАЗ.УТВЕРЖДЕН, но нет ОПЛАТЫ.ЗАХВАТ.Завершено

#paypal

#paypal

Вопрос:

Я использую Paypal Orders API (v2) на веб-сайте, и несколько раз появлялись approved order ошибки, которые отсутствовали captures complete .

Я получаю это событие для всех заказов:

 CHECKOUT.ORDER.APPROVED
 

Но для некоторых заказов это событие не происходит:

 PAYMENT.CAPTURE.COMPLETED
 

Как это происходит, это потому, что кредитная карта клиента была отклонена?

Ответ №1:

Снижение — один из возможных сценариев.

Переход на страницу просмотра заказа и отсутствие нажатия на последнее действие, которое запускает захват, — это другое.

Это обычные события и не указывают на какие-либо проблемы.

Теоретически некоторая техническая ошибка также может прервать процесс и привести к такому типу сбоев, но это маловероятно, если вы не получите конкретные сообщения о проблеме.

Ответ №2:

Убедитесь actions.order.capture() , что функция вызывается правильно.

У меня была проблема, когда я хотел, чтобы мой сервер подтвердил, что платеж прошел успешно. Итак, я заменил onApprove функцию вызовом моего сервера. Когда мой сервер запрашивал заказ, он всегда говорил, что это так APPROVED , но деньги никогда не переводились.

Проблема заключалась в том, что вы не заменяете onApprove функцию, скорее, onApprove функцию все еще нужно вызвать actions.order.capture() . Затем этот метод переведет деньги и пометит заказ как COMPLETED .

Комментарии:

1. Вау, спасибо, приятель. Это очень полезно. Я действительно смущен этим потоком, потому что API подписки не нуждается в вызове capture, поэтому я сразу же проверил его на сервере. Я бы не знал, если бы не нашел ваш ответ!

2. Большое спасибо! Это вызывало у меня серьезную головную боль.