条带连接共享卡源不起作用

时间:2019-01-10 09:14:59

标签: node.js stripe-payments

我正在将客户及其来源保存在我的平台上,并试图为我的关联帐户创建费用。我能够成功创建目标费用,但是在创建直接费用时遇到了麻烦。

我尝试根据以下内容创建令牌:https://stripe.com/docs/connect/shared-customers

如果我仅使用客户创建令牌,则错误为:

'您提供的客户未指定来源。客户的默认来源是来源,无法与现有客户共享。'

即使文档中说您需要“该客户的卡或银行帐户ID,如果您要为特定的卡或银行帐户而不是默认帐户付费”。

我找不到一个可以同时指定来源或代替客户的参数。

我尝试通过以下方式与关联的帐户共享客户选择的来源:https://stripe.com/docs/sources/connect#shared-card-sources 导致错误:

'直接将信用卡号发送到Stripe API通常是不安全的。我们建议您使用映射到您正在使用的测试卡的测试令牌,请参阅https://stripe.com/docs/testing。'

我尝试将测试令牌(tok_visa)附加到我的客户,并为此创建费用,但结果相同。

每次我都取得成功时,即使我只是发送Stripe提供的令牌或源ID,也都会遇到关于发送数字不安全的错误。

我已经尝试过了:

const newToken = await stripe.tokens.create({
        customer: customerId,
    }, {
        stripe_account: stripeAccountId,
    }).catch((e) => {
        console.log(e);
    });

这:

const newToken = await stripe.sources.create({
        customer: customerId,
        usage: 'single_use',
        original_source: sourceId,
      }, {
        stripe_account: stripeAccountId,
      }).catch((e) => {
        console.log(e);            
    });

我唯一获得的成功是使用测试令牌(tok_visa)创建直接计费,完全绕过了令牌/源的共享。没有其他组合似乎起作用。但这使我迷失了如何在需要时获得真实的共享令牌。

1 个答案:

答案 0 :(得分:0)

我发现我应该使用来源,而不是令牌。事实证明,我不小心将整个newToken用作收费来源。现在,我正在将newToken.id传递给负责人。