Stripe Payment Intents и charge.succeeded webhook, иногда не стреляя - PullRequest
0 голосов
/ 18 апреля 2020

Мы создаем PaymentIntents (с capture_method=manual в случае необходимости) в наших приложениях iOS / Android, когда пользователь размещает заказ.

Мы отправляем заказ в подключенное место, когда срабатывает charge.succeeded webhook. Если этого не произойдет в течение нескольких минут, мы истекли срок действия размещенного ордера на нашей стороне.

Интересно, что 2 раза из 10 мы не запускаем этот веб-крючок.

Мне интересно, будет ли на самом деле целесообразно слушать этот веб-крючок, чтобы решить, отправлять ли нам заказ на место подключенного аккаунта или нет, или есть ли лучший способ определить, что платеж действительно будет работать, как только мы попытаться захватить это.

Ответы [ 2 ]

3 голосов
/ 19 апреля 2020

Webhooks - рекомендуемый способ получения статуса платежного намерения, но вы также можете использовать API для получения его статуса.

Цитата из Stripe docs :

Технически возможно использовать опрос вместо веб-хуков для отслеживания изменений, вызванных асинхронными операциями - многократного получения PaymentIntent, чтобы вы могли проверить его состояние - но это заметно менее надежно и может создавать проблемы при использовании в масштабе , Stripe применяет ограничение скорости для запросов API, поэтому будьте осторожны, если вы решите использовать опрос.

В вашем случае я бы рекомендовал подождать, пока webhook, а затем через несколько минут позвоните либо PaymentIntents API или Charges API , если вы еще не получили веб-крючок.

1 голос
/ 20 апреля 2020

Скорее всего, здесь происходит что-то еще, поэтому я бы предложил вам обратиться к Stripe - веб-крючки должны срабатывать все время, и это действительно очень редкое явление, которого они не будут.

...