使用 Stripe.js 指定授权 [notification_method] 客户端?

Specifying mandate[notification_method] client-side with Stripe.js?

我首先要创建可重复使用的 SEPA 源 creating a client_secret server-side:

await stripe.setupIntents.create({
  payment_method_types: ["sepa_debit"],
  customer: "..."
});

然后我将 client_secret 作为选项传递给 <Elements />

<Elements
  stripe={...}
  options={{
    locale,
    clientSecret: setupIntentClientSecret,
    ...
  }}
>

客户输入他们的 SEPA 借记数据后,我 confirm the setup 客户端通过:

await stripe.confirmSetup({
  elements,
  confirmParams: {
    return_url: window.location.href
  },
  redirect: "if_required"
})

现在,SEPA debit best practices提到

Source objects provide tooling to help you notify your users compliantly. At Source creation it is possible to specify a mandate[notification_method].

那么如何在客户端指定此 mandate 属性?我想这根本不可能,我需要 update the newly created source 服务器端?

编辑: 源更新将不起作用,因为通过调用 stripe.confirmSetup 创建的对象是 payment_method,而不是 source

您共享的文档(link) is for the older SEPA integration path using the Sources API. Instead, you should refer to this guide 引用授权集合并使用新的 API,包括设置意图、支付方式和支付元素(根据您共享的代码)。