微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Stripe 中保存自定义帐户客户的信用卡

如何解决在 Stripe 中保存自定义帐户客户的信用卡

我们正在构建一个平台。 在我们的平台中,我们在 Stripe 中创建了 Custom Connect Accounts。 对于这些自定义连接帐户,我们创建客户帐户。本质上,客户帐户是我们在平台中的 Custom Connect(公司)帐户的最终客户。 现在我们要存储客户帐户的信用卡信息(对于特定的自定义连接帐户)。

我们按照说明 here 创建了一个 setupIntent。代码如下,这里的stripe_account是自定义连接(公司)账户的account_id,customer['id']是客户账户的id -

    intent = stripe.SetupIntent.create(
      customer=customer['id'],stripe_account = stripe_account
    )

我们将这个 intent.client_secret 传递给我们的前端。在 Javascript 中,我们称之为 -

setupForm.addEventListener('submit',function(ev) {
  ev.preventDefault();
  stripe.confirmCardSetup(
    clientSecret,{stripe_account : stripe_account},{
      payment_method: {
        card: cardElement,billing_details: {
          name: cardholderName.value,},}
  ).then(function(result) {
    if (result.error) {
      // display error.message in your UI.
    } else {
      // The setup has succeeded. display a success message.
    }
  });
});

但是我们得到了错误,没有这样的 setupintent:'seti_1IBkyZ4ZQzThevDR3MR433aI'。显然,这里不接受从 Stripe 生成的 setupintent。我们做错了什么?

解决方法

此错误的可能原因是您不是 initializing Stripe.js with the stripeAccount Setup Intent 所在。您的 Stripe.js 初始化代码应如下所示:

var stripe = Stripe('pk_test_YOUR_PUBLISHABLE_KEY',{
    stripeAccount: 'acct_CONNECTED_ACCOUNT_ID'
});

这将允许 Stripe.js 代表连接的帐户(这是设置意图存在的地方)发出请求。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。