为什么只在源中保存条纹卡,而不在卡中保存?

时间:2018-07-14 08:56:55

标签: stripe-payments

我将我的信用卡保存在Stripe中,为什么只在来源中保存

enter image description here

不是在卡下?

enter image description here

我已按照文档中的说明使用stripe.customers.createSource保存卡(https://stripe.com/docs/api#create_card

我想这就是stripe.customers.listCards不返回任何内容的原因

1 个答案:

答案 0 :(得分:6)

库中的方法stripe.customers.createSource只是向/v1/customers/cus_123/sources发出POST请求,以向其中添加源。源本身的类型取决于您在客户端创建时所使用的内容。

如果您在客户端tok_123上创建卡Tokens,则客户将获得Card object card_123。如果您在美国使用ACH借记并创建了银行帐户代币btok_123,则还可以获得Bank Account object。这是API中已存在多年的传统方法。

最近,Stripe发布了一个名为Source的新高级对象,您可以在documentation中阅读有关Sources的更多信息。无论使用哪种付款方式(卡,SEPA借记卡,支付宝,Sofort等),这都可以使您拥有一个唯一的对象。这使得处理代码中的逻辑变得容易得多,因为对象具有相同的形状和属性,这些形状和属性特定于每种付款方式,都存在于您知道要以不同方式处理的子哈希中。这些Source对象的ID的格式为src_123

在这里,您的客户已附加了来源。这意味着在客户端,当您收集卡的详细信息时,您正在积极创建源而不是令牌。这是由于您用于创建它的方法/调用。在Elements中,您将使用createSource()而不是createToken(),而在移动SDK中,它们将默认创建源。

最终,由于Sources具有更高的可扩展性,并且将来可以处理您的国际业务增长,因此是进行新集成的更好方法。我建议保持Sources向前发展。