javascript - Stripe/node.js : how retrieve stripe subscription safely + increment 1

标签 javascript node.js mongodb stripe-payments

我刚刚开始探索 Stripe 在 node.js 中处理支付。我想创建一个如下所示的支付系统:

  1. 我创建了一个工作区,并开始以 10 美元/月的价格订阅 Stripe。
  2. 当有人加入我的工作空间时,我将额外支付 10 美元/月。

所以,当我想将一个人添加到我的订阅时。我将如何处理?我找到了以下函数,但我想知道两件事:

  1. 如何向此订阅添加一个人?它现在显示数量:2,但我如何简单地为每个用户递增 1?

  2. 在下面的示例中,我使用 ID 'sub_6OZnwv0DZBrrPt' 来检索此 Stripe 订阅。我想知道从哪里可以得到这个身份证?创建此订阅后,我可以将此订阅 ID 保存在工作区 mongo 数据库文档中,但我不确定将其保存在我的数据库中是否安全?如果您有任何建议,请告诉我。

这是更新订阅的函数

stripe.subscriptions.update(
    'sub_6OZnwv0DZBryPt',
    { quantity: 2 },
    (err, subscription) => {
      // asynchronously called
    }
  );

最佳答案

在 1.) 你需要 retrieve the current subscription基于存储的 ID。这可以这样做:

stripe.subscriptions.retrieve(
  "sub_6OZnwv0DZBryPt",
  function(err, subscription) {
    // asynchronously called
  }
);

subscription 对象将包含有关当前数量的信息(参见 example response and doc on the subscription object )。这就引出了你的第二个问题。

要检索订阅,您只需存储 ID。这样做是安全的,除非他们也有您的测试/实时 key ,否则该 ID 对其他人毫无意义。确保您保护这些 key ,并随意存储 subscription_id、customer_id 等 ID。

关于javascript - Stripe/node.js : how retrieve stripe subscription safely + increment 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54269659/

相关文章:

javascript - 数组更改时 knockout 不会更新?

node.js - 如何使用 Mongoose 获取 MongoDB 集合的大小(字节)?

node.js - 在nodejs中循环异步函数

mongodb - 查询 MongoDB 以获取数组中的多个 ObjectID

mongodb - MongoDB 聚合中的 $dayOfWeek 和时区

javascript - 为 Google Charts API 设置 JSON 格式

javascript - 隐藏提取错误

javascript - 如何在javascript中添加延迟

javascript - 从 nodejs 将 "$binary"键插入 mongodb 导致 must not start with '$' 错误

javascript - 如何在 JavaScript 中获取标签的 ID