我正在尝试使用Stripe Webhook来获取有关下订单的所有信息,并使用它来完成我的订单。然而,我似乎找不到包含我需要的所有信息的正确事件/触发器。到目前为止,我发现的两个非常好的是order.payment_succeeded
和payment_intent.succeeded
。
order.payment_succeeded
有我需要的所有信息,除了没有买家的账单地址/信息。
另一方面,payment_intent.succeeded
具有除了行项目/订购产品列表之外的所有信息。
有没有一个活动将账单、发货和订单信息集于一身?如果不是,这两个事件中的哪一个先发生?至少我可以以某种方式存储数据,并根据传入的信息进行更新。。。?
为了获得计费信息,当您收到order.payment_succeeded
事件时,您需要扩展订单[1][2]上链接的收费对象。发货地址是事件订单有效负载[3]的一部分。
尽管如此,Orders API已被正式弃用。如果可能的话,如果您想向客户收费,收集他们的账单信息[4]和发货信息[5],我们的建议是使用Stripe Checkout[6]。当用户成功完成签出时,您将收到的事件将包括checkout.session.completed
[7]。使用此事件的有效负载(即Checkout Session对象(,您可以查询API中包含在Checkout Session中的行项目[8]。
Stripe中的事件没有保证的顺序[9],但order.payment_succeeded
表示充电成功。
[1]https://stripe.com/docs/api/orders/object#order_object-充电
[2]https://stripe.com/docs/api/charges/object#charge_object-账单_详细信息
[3]https://stripe.com/docs/api/orders/object#order_object-运输
[4]https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-billing_address_collection
[5]https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-shipping_addr_collection
[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-订购