Stripe - 一次性卡和延迟收费

Stripe - single-use cards and delayed charge

我们的网站目前要求客户在每次下订单时提供他们的 CC 数据。几天后,由于合并订单、更改发货方式等原因,我们从卡中扣款的金额经常与结帐时显示的金额不同。

我们想迁移到 Stripe,但我们不想改变当前的行为。在阅读 Stripe 文档时出现了一些问题:

1) Stripe.js 允许创建没有客户的源。这对我们来说似乎很理想,但来自 Stripe 文档的以下文本引起了我们的注意:

A card source must be used within a few minutes of its creation as CVC information is only available for a short amount of time. Card sources do not expire, but using them after a delay can result in a charge request that is performed without CVC information. The consequences of this can be higher decline rates and increased risk of fraud.

所以我们不应该在几天后对 Source 充电?如果是这样,对于附加到客户的来源来说,这不也是一个问题,因为他们的 CVC 也被遗忘了吗?

2) 为了简单起见,我们宁愿避免在 Stripe 中创建客户和管理他们的来源。 Stripe 有一次性资源的概念,可以在不将它们附加给客户的情况下收费,但文档说在创建它们时需要金额。我们不知道结帐过程中的确切金额,所以我们是否可以将更大的数字作为我们未来收费的上限,并在向源收费时提供确切的金额?

所以你是对的,CVC 无论如何都丢失了,但这不是 Stripe 试图提出的重点。当您将 Source 附加到客户时,Stripe 将 运行 在银行卡上进行 0 美元或 1 美元的授权,以确保其有效。这使他们可以立即捕获过期或无效的卡。这也让他们可以将 CVC 发送给银行,因为他们此时已经拥有它,以捕获无效的 CVC,这对于打击欺诈很重要。

如果您要创建一个源并且几天不充电,这在技术上是可行的。风险在于,当您收取费用时,银行将看不到 CVC,也无法告诉您它是否正确,从而增加了欺诈风险。

为避免这种情况,Stripe 建议您将来源保存在客户身上。这只是一项额外的 API 请求,可让您立即捕获无效卡片。然后,几天后,当你在 customer/source 上创建费用时,银行可能仍会拒绝它(例如资金不足),但你会降低向坏卡收费的风险并在标记化时立即发现问题。这对您的企业更好,但对客户也更好,以防他们输入错误的 CVC 或有效期等。