Я использую процесс Express Checkout с расширенная интеграция с сервером.
Поэтому я резервирую товары в режиме реального времени, как только пользователь нажал кнопку «Оформить заказ», и жду ответа «успех\неуспех». Пользователь может просто закрыть вкладку браузера, и это будет выглядеть как долгий процесс оплаты (код JS не может вызвать обработчик onCancel
).
Так что похоже, что я не знаю, закрыл ли пользователь браузер или просто заснул. Проблема в том, что я не могу ждать слишком долго (более ~5 минут) и хочу отменить платеж по истечении этого времени. И похоже, что я не могу отменить Платеж самостоятельно. Таким образом, пользователь может вернуться и оплатить через N минут (N > 5) товар, который не был зарезервирован и которого уже нет в наличии.
Этот ответ гласит:
у пользователя есть три часа, чтобы одобрить платеж PayPal
- Ответ о 3 часах немного устарел, поэтому есть ли у нас какие-либо свежие ДОКУМЕНТЫ о немедленном сроке действия платежа? Есть еще 3 часа для процесса экспресс-оплаты REST?
- 3 часа для меня слишком большой срок. Есть ли способ установить срок действия или тайм-аут для платежа во время создания?
- Есть ли способ отменить платеж? Payments API упоминаний об этом нет.