条带api检查现有卡

tae*_*kni 12 php laravel stripe-payments stripe-connect

我确定我在这里遗漏了一些明显的东西,但是我无法理解如何检查现有卡片对顾客的看法.

我在laravel应用程序中使用条带连接api来代表其他人管理付款,基本过程如下:

  • token通过stripe.js付款表单创建并提交条带
  • 如果客户存在于本地数据库中,我会抓住他们stripe_id,否则使用令牌作为源/卡创建新客户
  • charge然后使用检索到的或新客户创建astripe_id

目前,如果客户退回并使用不同的卡,由于收费仅包括客户而非来源,因此无论如何都将对其默认卡收费.

我想做的是:

  • 创建条纹 token
  • 检查customer本地数据库等
  • 检查card客户卡的指纹
  • 如有必要,card在客户的记录上创建新的
  • 使用两者customercardids 创建费用

简单地说:我无法看到过程card_id中生成持久性的位置; 在stripe.js响应中使用的那些以及在条带仪表板中创建的那些看起来都是唯一的,这意味着每次充电都会创建一个全新的卡片对象.

我知道我可以检索存储在客户帐户中的卡片列表 - 但是我card_id从哪里获取初始搜索?

我在这里看到了一个涉及此问题的问题 - 在创建新卡片之前,我是否可以检查条带是否已经存在? - 但我不知道Ruby,所以不能做头或尾.

编辑:

更简单的版本 - 有没有办法在这里获得fingerprint条纹文档中描述的内容 - https://stripe.com/docs/api/php#card_object - 无需先创建卡片对象?

koo*_*jah 19

所以这里的想法是使用fingerprint上的对象或令牌对象,而不是ID本身那些会有所不同,如果你多次添加相同的卡.

当您获得新的卡片令牌时,您可以通过Retrieve Token API 检索它并fingerprintcard哈希中查找.

您将在数据库中保留与特定客户和/或卡相关联的已知指纹列表,以便您可以检测重复的卡.

注意:确保使用密钥来获取这些信息.否则,如果您使用可发布密钥,则可能无法获得指纹值.