Получить адрес для выставления счета из кассы Stripe? - PullRequest
1 голос
/ 06 апреля 2020

Я создаю сеанс проверки в Node, вот так. https://stripe.com/docs/api/checkout/sessions/create

Я установил для параметра billing_address_collection значение required и теперь задаюсь вопросом, могу ли я получить адрес для выставления счета, полученный из запускаемого веб-крюка checkout.completed.

Я не могу найти хороший способ получить адрес для выставления счета из сеанса проверки.

Есть ли способ сделать это? Или я должен просто собрать эту информацию перед отправкой пользователя на сессию проверки?

1 Ответ

2 голосов
/ 06 апреля 2020

Платежный адрес можно получить через Checkout. Он не будет жить в объекте CheckoutSession, но вместо этого в объекте PaymentMethod.

Когда вы получаете событие checkout.session.completed, оно имеет поле payment_intent с идентификатором объекта PaymentIntent. У объекта PaymentIntent, в свою очередь, есть нужный вам способ оплаты. Поэтому вам нужно go из CheckoutSession -> PaymentIntent -> PaymentMethod, чтобы получить платежные данные.

Как это сделать: в обработчике событий webhook получите [0] PaymentIntent и expand PaymentMethod (передавая expand: ['payment_method']).

Метод оплаты имеет платежные реквизиты под billing_details га sh [2]

[0] https://stripe.com/docs/api/payment_intents/retrieve

[1 ] https://stripe.com/docs/api/expanding_objects

[2] https://stripe.com/docs/api/payment_methods/object#payment_method_object -billing_details

...