订阅结帐会话中的付款意图为空
payment intent is null in a subscription checkout session
我正在按照本教程使用 php 集成条带:
https://phppot.com/php/manage-recurring-payments-using-stripe-billing-in-php/
(我的网站有一些订阅计划并重定向到条纹结帐表格)。然而,对于最后一步,我决定不使用 webhooks,我选择像本教程中那样存储信息 https://www.codexworld.com/stripe-checkout-payment-gateway-integration-php/(我知道它不是用于订阅,但我只是使用此中的 success.php 代码收集客户信息和付款意向详细信息的教程)。
我测试了它,通过了条纹结帐表单,成功后我打印了结帐会话对象并注意到该对象的 payment_intent 字段是空的!所以我无法加载付款意向对象并获取其信息,尽管付款已成功进行并且显示在仪表板上。知道为什么吗??
编辑:
根据结帐会话 (https://stripe.com/docs/api/checkout/sessions/object) 的文档,payment_intent 字段存储支付模式下结帐会话的 PaymentIntent 的 ID。就我而言,我有订阅模式而不是付款模式。但是,如果我仍然想获得 $intent->status ,我可以使用会话对象 $checkout_session->payment_status 的 payment_status 字段吗?
如果订阅付款真的没有 paymentintents ,那么为什么付款会出现在控制面板的付款部分?
根据您传入的 mode
,将填充 payment_intent
、subscription
或 setup_intent
中的一个,其余为 null
.
完成 Subscription
后,您的用户会收到发票,因此它被视为付款并将显示在“付款”仪表板中。您可以检索 Subscription
并访问 latest_invoice
字段以获取 Invoice
对象。 Invoice
对象包含 payment_intent
字段。这可能就是您要找的。
使用 webhook 会简化流程,因为您可以收听 invoice.payment_suceeded
以检索 PaymentIntent ID。
我正在按照本教程使用 php 集成条带: https://phppot.com/php/manage-recurring-payments-using-stripe-billing-in-php/ (我的网站有一些订阅计划并重定向到条纹结帐表格)。然而,对于最后一步,我决定不使用 webhooks,我选择像本教程中那样存储信息 https://www.codexworld.com/stripe-checkout-payment-gateway-integration-php/(我知道它不是用于订阅,但我只是使用此中的 success.php 代码收集客户信息和付款意向详细信息的教程)。 我测试了它,通过了条纹结帐表单,成功后我打印了结帐会话对象并注意到该对象的 payment_intent 字段是空的!所以我无法加载付款意向对象并获取其信息,尽管付款已成功进行并且显示在仪表板上。知道为什么吗??
编辑: 根据结帐会话 (https://stripe.com/docs/api/checkout/sessions/object) 的文档,payment_intent 字段存储支付模式下结帐会话的 PaymentIntent 的 ID。就我而言,我有订阅模式而不是付款模式。但是,如果我仍然想获得 $intent->status ,我可以使用会话对象 $checkout_session->payment_status 的 payment_status 字段吗? 如果订阅付款真的没有 paymentintents ,那么为什么付款会出现在控制面板的付款部分?
根据您传入的 mode
,将填充 payment_intent
、subscription
或 setup_intent
中的一个,其余为 null
.
完成 Subscription
后,您的用户会收到发票,因此它被视为付款并将显示在“付款”仪表板中。您可以检索 Subscription
并访问 latest_invoice
字段以获取 Invoice
对象。 Invoice
对象包含 payment_intent
字段。这可能就是您要找的。
使用 webhook 会简化流程,因为您可以收听 invoice.payment_suceeded
以检索 PaymentIntent ID。