我确定我在这里遗漏了一些明显的东西,但我无法理解如何针对客户检查现有卡。
我在一个 laravel 应用程序中使用 stripe connect api 来代表他人管理付款,基本流程如下:
token
通过付款表格创建stripe.js
并提交条带- 如果客户存在于本地数据库中,我抓取他们的
stripe_id
,否则使用令牌作为源/卡创建新客户 charge
然后使用检索到的或新的客户创建astripe_id
目前,如果客户返回并使用不同的卡,因为费用只包括客户而不是来源,无论如何都会从他们的默认卡中收取费用。
我想做的是:
- 创建条纹
token
- 检查
customer
本地数据库等 - 检查
card
客户卡上的指纹 - 如有必要,
card
在客户记录中创建新的 - 使用
customer
和card
ids创建费用
简单地说:我看不到持久化card_id
是在哪里生成的;响应中使用的stripe.js
以及在条带仪表板中创建的那些似乎都是唯一的,这意味着每次收费都会在条带中创建一个全新的卡片对象。
我知道我可以检索存储在客户帐户中的卡列表 - 但是我从哪里获取初始值card_id
以进行搜索?
我在这里看到了一个涉及此问题的问题-我可以在创建新卡之前检查是否已经存在条纹卡吗?- 但我不了解 Ruby,所以无法确定它的头部或尾部。
编辑:
更简单的版本 - 有没有办法获得fingerprint
条带文档中描述的内容 - https://stripe.com/docs/api/php#card_object - 而无需先创建卡片对象?