使用Node.js

时间:2015-10-03 16:45:57

标签: node.js stripe-payments node-modules

我目前正在将Node应用到我的Node.js api中。我注意到如果信用卡重复,条带不会抛出错误。我还注意到每张信用卡都有一个指纹属性,允许我手动检查重复信息。

但是目前我必须将卡片添加到我的客户手中,检查是否有重复,如果是重复则将其删除。

我没有找到另一种方法来使用节点模块。我错过了什么吗?

3 个答案:

答案 0 :(得分:2)

检索令牌服务器端时,指纹可用。

stripe.tokens.retrieve(
  "tok_16eUwpK5S7qVcORZ9ur0xOkl",
  function(err, token) {
    // token.card.fingerprint
  }
);

答案 1 :(得分:0)

条纹并没有给予他们这样的便利。我最喜欢的是,如果你想减少对条纹的调用,建议你在本地存储所有卡的指纹,并用它们来检查唯一性。在本地存储卡的指纹是安全的,它可以唯一地识别卡。

答案 2 :(得分:0)

Stripe多次保存同一张信用卡时不会抛出错误的原因是,它们有充分的理由有意这样做。其基本原理是,尽管信用卡是为单个用户注册的,但实际上它可以被多个人使用。如果您举个例子,您的家庭成员可以使用同一张卡进行购物。

例如:尽管Amazon不使用Stripe,但让我使用Amazon阐明以上内容。

  • 让我们假设亚马逊使用Stripe存储信用卡。
  • 您可以将信用卡另存为卡,以便以后购买。
  • 您的配偶也可以输入同一张卡并保存以备后用。
  • 这是常用的,所以Stripe认为最好允许它。

如果考虑Stripe上的Card对象属性(见下文),您会看到它具有两个重要值

  • id
  • 指纹

该ID用于识别信用卡,但是多次添加的同一张卡可以具有不同的ID值。

指纹是唯一识别卡的身份。您可以使用此值来检查同一用户是否再次尝试添加同一张卡。

卡片对象

{
   "id":"card_1GkRvi2eZvKYlo2CyZAhyK1J",
   "object":"card",
   "address_city":null,
   "address_country":null,
   "address_line1":null,
   "address_line1_check":null,
   "address_line2":null,
   "address_state":null,
   "address_zip":null,
   "address_zip_check":null,
   "brand":"Visa",
   "country":"US",
   "customer":null,
   "cvc_check":"pass",
   "dynamic_last4":null,
   "exp_month":8,
   "exp_year":2021,
   "fingerprint":"Xt5EWLLDS7FJjR1c",
   "funding":"credit",
   "last4":"4242",
   "metadata":{

   },
   "name":null,
   "tokenization_method":null
}