#stripe-payments #webhooks
#stripe-платежи #webhooks
Вопрос:
Я пытаюсь использовать Stripe Webhooks, чтобы получать всю информацию о размещаемых заказах и использовать ее для выполнения моих заказов. Однако, похоже, я не могу найти правильное событие / триггер, который содержит всю необходимую мне информацию. Два, которые я нашел до сих пор, которые довольно хороши, — это order.payment_succeeded
и payment_intent.succeeded
.
order.payment_succeeded
содержит всю необходимую мне информацию, за исключением того, что в ней нет платежного адреса / информации покупателя.
payment_intent.succeeded
с другой стороны, содержит всю информацию, за исключением позиций / списка заказанных продуктов.
Существует ли событие, содержащее информацию о выставлении счетов, доставке и заказе одновременно? Если нет, то какое из этих двух событий произойдет первым? По крайней мере, я могу как-то хранить данные и обновлять их на основе поступающей информации …?
Ответ №1:
Чтобы получить платежную информацию, вам нужно будет развернуть объект оплаты, связанный с заказом [1] [2], когда вы получаете order.payment_succeeded
событие. Адрес доставки является частью полезной нагрузки заказа на событие [3].
При этом API заказов официально устарел. Мы рекомендуем, если это возможно, и если вы хотите взимать плату с клиентов, собирать их платежную информацию [4] и информацию о доставке [5], использовать Stripe Checkout [6]. События, которые вы получите, когда пользователь успешно завершит оформление заказа, будут включать checkout.session.completed
[7] . Используя полезную нагрузку этого события, которое является объектом сеанса проверки, вы можете запросить API для позиций [8], которые были включены в сеанс проверки.
События из Stripe не имеют гарантированного заказа [9], но order.payment_succeeded
это означает, что оплата прошла успешно.
[1] https://stripe.com/docs/api/orders/object#order_object-charge
[2]https://stripe.com/docs/api/charges/object#charge_object-billing_details
[3] https://stripe.com/docs/api/orders/object#order_object-shipping
[6] https://stripe.com/docs/payments/accept-a-payment
[7] https://stripe.com/docs/api/events/types#event_types-checkout.session.completed
[8] https://stripe.com/docs/api/checkout/sessions/line_items
[9] https://stripe.com/docs/webhooks/best-practices#event-ordering