node.js - Stripe 结账 : Avoid creating new customer for every payment

标签 node.js stripe-payments

我正在创建如下 strip 结账 -

stripe.checkout.sessions.create({
    payment_method_types: ['card'],
    line_items: [
      {
        price_data: {
          currency: "USD",
          product_data: {
            name: "Product Name",
            images: ["ProductImage"]
          },
          unit_amount: "200",
        },
        quantity: 2,
      },
    ],
    mode: 'payment',
    success_url: "https://example.test/success",
    cancel_url: "https://example.test/cancel",
  });

我没有任何客户登录。我希望在与电子邮件相对应的 strip 末端仅创建 1 个客户。 由于我没有客户登录信息,因此在创建结帐 session 时无法传递客户 ID。

有没有办法使用结帐付款表单中添加的电子邮件来验证客户。我们可以为此使用任何 webhook 或事件吗?有什么指点吗? TIA。

最佳答案

如果您不存储客户对象 ID 并在创建结账 session 时传递它们,并且您不希望为每个成功的 session 创建新的客户对象,那么您可以传递 customer_creation parameter以防止这种情况发生。

stripe.checkout.sessions.create({
    payment_method_types: ['card'],
    line_items: [
      {
        price_data: {
          currency: "USD",
          product_data: {
            name: "Product Name",
            images: ["ProductImage"]
          },
          unit_amount: "200",
        },
        quantity: 2,
      },
    ],
    mode: "payment",
    success_url: "https://example.test/success",
    cancel_url: "https://example.test/cancel",
    customer_creation: "if_required"
  });

关于node.js - Stripe 结账 : Avoid creating new customer for every payment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70801558/

相关文章:

node.js - 需要更新的 Twitter 流 nodejs api

javascript - 需要输入 URL 模板占位符查找和替换功能

stripe-payments - Stripe 中的批处理事务

node.js - 运行azure函数时找不到mssql Node js包

node.js - 限制用户访问其他用户内容的最优雅的方法是什么?

database - Stripe 在后端使用什么进行存储?

ruby-on-rails - 关闭 Rails 中 Stripe 订阅按比例分配以全额退款

javascript - 从 react 组件卸载时卸载纯粹的 strip

ios - strip 创建用户 firebase 云函数

node.js - 如何从 Google API 获取用户信息配置文件?