首页 > 解决方案 > (Stripe API) 可以获取bank_account token,但不能获取card token

问题描述

我能够为 a 创建客户端令牌bank_account,但无法以相同的方式为card(Stripe Connected Account) 创建客户端令牌;文档表明这些过程几乎相同。

bank_account

使用以下客户端(JS),我可以创建一个令牌;令牌被退回。

result = stripe.createToken('bank_account', {
        account_holder_name: 'Test Account Holder',     
        account_holder_type: 'individual',
        account_number:'000123456789', // Stripe test account number
        routing_number: '110000000', // Stripe test routing number
        currency: 'usd',
        country:'US'
}).then(function(result) {
    console.log("OK");
    console.log(result);
}).catch(function(error) {
    console.log("ERROR:");
    console.log(error);
});

不使用card

但是,当我将bank_account参数替换为card参数和以下必需参数时,我收到以下错误:

result = stripe.createToken('card', {
        number: '5200828282828210', // Stripe testing card
        exp_month: '12',
        exp_year:'2020',
        cvc: '1234',
        currency: 'usd',
        name:'Test Account Holder Name',
        default_for_currency: true      
}).then(function(result) {
    console.log("OK");
    console.log(result);
}).catch(function(error) {
    console.log("ERROR:");
    console.log(error);
});

Error: Invalid value for token type: value should be one of the following strings: account, bank_account, pii, apple_pay. You specified: card.

我的困惑:

该错误表明我使用了一些其他参数,而card不是这些参数之一。

我知道这pii基本上适用于 SSN(美国),我刚刚bank_account成功使用,并且card版本(根据他们的文档)似乎是相同的。我account只是尝试破解它(无济于事),apple_pay显然不适用。

为什么我会收到此错误?我该如何解决这个问题并接收card令牌。

标签: javascriptstripe-payments

解决方案


card应该是您提供的卡片对象的键 - 您有一个逗号,应该有一个冒号。

result = stripe.createToken('card': {
    number: '5200828282828210', // Stripe testing card
    exp_month: '12',
    exp_year:'2020',
    cvc: '1234',
    currency: 'usd',
    name:'Test Account Holder Name',
    default_for_currency: true      
}).then(function(result) {
  console.log("OK");
  console.log(result);
}).catch(function(error) {
  console.log("ERROR:");
  console.log(error);
});

推荐阅读