【问题标题】:Stripe Error - Your card's expiration year is invalid条纹错误 - 您的卡的到期年份无效
【发布时间】:2015-12-01 06:26:20
【问题描述】:

在测试模式下测试我的条带 js 帐户。我正在运行这段代码

Stripe.card.createToken({
  number: "4242424242424242",  
  cvc: "333", 
  exp_month: "02", 
  exp_year: "19", 
  address_zip: "11111", 
  address_country: "AX"}, 
stripeResponseHandler);

我不断收到此响应错误。

Your card's expiration year is invalid.

即使我将年份更改为2019,我仍然会收到错误消息。我仔细检查并使用了正确的测试密钥。出了什么问题,我该如何解决?

【问题讨论】:

  • 你尝试过其他年份吗? 2017 年? (我从来没有使用过有效期超过三年的信用卡。)
  • 12/2016 给了我同样的错误。这让我很难过。
  • 您是否查看了仪表板中的日志以确保您发送的正是您认为代码发送的内容?我猜你可能会继续在exp_year 中发送1916,它需要一个4 位数的年份
  • 这令人惊讶。我在这里设置了一个简单的 JSFiddle:jsfiddle.net/00Lnfdx3。如您所见,我正在与您进行相同的Stripe.card.createToken() 调用,并且成功返回了一个令牌。
  • 我现在遇到了完全相同的问题(3年后:))。 @jason328 你明白了吗?

标签: javascript stripe-payments


【解决方案1】:

可能是因为EndYear 是一个数字,而不是一个字符串。

看看这个:https://stripe.com/docs/api/tokens/create_card?lang=dotnet

【讨论】:

    【解决方案2】:

    基于Stripe documentexp_monthexp_year 需要是数字。

    exp_month:代表卡到期月份的两位数字 (例如,12)

    exp_year:代表卡到期年份的两位或四位数字 (例如,2021)

    Stripe.card.createToken({
      number: "4242424242424242",  
      cvc: "333", 
      exp_month: 02, 
      exp_year: 2022, 
      address_zip: "11111", 
      address_country: "AX"}, 
    stripeResponseHandler);

    you can set expiration in type of string too

    Stripe.card.validateExpiry('09 2022')  // true
    Stripe.card.validateExpiry('2024/09')  // true
    Stripe.card.validateExpiry('2024/09')  // true
    Stripe.card.validateExpiry('2024-09')  // true

    而且时间需要在未来

    【讨论】:

      猜你喜欢
      • 2017-05-16
      • 1970-01-01
      • 1970-01-01
      • 2017-08-28
      • 2018-01-23
      • 2015-03-17
      • 2014-04-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多