有一堆不完整的Stripe付款意图可以吗?

问题描述 投票:0回答:2

我正在使用 JavaScript 和 PHP SDK 实现 Stripe 支付平台。

我对实现本身没有任何问题,但我不确定是否必须重用现有的 PaymentIntent,或者创建一堆不完整的 PayIntent 也完全没问题。

我在Stripe的文档中搜索了这个,但我似乎找不到与此相关的任何内容。

例如,在我的测试帐户中,我有以下内容:

这一切都是为了同一笔交易,因为我正在更改一些视觉效果并刷新浏览器。

我知道每个 PaymentIntent 都有一个 ID,但建议将其添加为查询参数并在刷新时检索它,还是最好始终生成新的 Payment Intent。

我的主要理由是避免收集大量不完整的付款意图。

stripe-payments reusability
2个回答
7
投票

Stripe 目前的默认集成路径是首先创建一个 PaymentIntent,以便您获得一个

client_secret
,您可以使用客户端通过 PaymentElement 呈现其 UI。这意味着,如果您的客户最终决定不付款,您最终会得到预期的不完整的 PaymentIntent。

这并不是真正的问题,只是出现在付款列表中可能会造成混乱。您还可以每天编写一个后台作业,通过您知道不会完成的任何 PaymentIntent 来取消,因为客户离开了,并且您没有任何数据可以联系他们以进行追加销售,例如,但这并不是真正需要的。

Stripe 现在(2023 年 2 月)还有一个测试版 (docs),它更改了默认集成路径。这简化了体验,因为您可以使用特定选项(例如金额和货币)呈现 PaymentElement 客户端。然后,您只需在流程结束时创建 PaymentIntent 当客户尝试付款时。该流程限制了不完整 PaymentIntents 的数量,因为您仅在客户真正付款时才创建它们。您仍然会得到一些,例如在客户银行拒绝之后。


0
投票

您可以将幂等密钥传递给订阅创建请求,后续请求将在长达 24 小时内返回相同的信息。

https://docs.stripe.com/api/idempot_requests

因此,您只需为每一包参数创建一个不完整的订阅。

© www.soinside.com 2019 - 2024. All rights reserved.