我将我的信用卡保存在Stripe中,为什么只在来源中保存
不是在卡下?
我已按照文档中的说明使用stripe.customers.createSource
保存卡(https://stripe.com/docs/api#create_card)
我想这就是stripe.customers.listCards
不返回任何内容的原因
答案 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向前发展。