条纹 – 如何处理订阅与免费的计划,没有信用卡需要在注册时间

我们开始在Redsmin (我们的项目之一)上实施Stripe,我想我们可能错过了一些东西。 下面是它的工作原理:

  1. 要使用我们的产品,用户必须select一个计划(免费,s,m,xl,xxl …),然后input其login名/密码,然后可以免费试用30天。 当用户提交表单时,我们的服务器使用指定的计划和没有信用卡的方式调用条带create_customer (因为我们希望免费提供30天而不需要信用卡),我们用返回的customer_idsubscription_id更新我们的用户模型。

  2. 我们build立了一个webhook来接收条带事件,所以在30天之后,我们的webhook 应该会收到一个customer.subscription.updated事件,其中object.status == active我对吗?

  3. 不过,由于我们在注册时没有为用户指定关联的卡,我们应该快速接收另一个customer.subscription.updated事件与object.status == unpaid权利? 然后在我们这边停用用户帐户,强制它进入我们的计划select页面。

  4. 从那时起,用户可以select免费的计划或我们的高级计划之一:

  5. #场景1如果用户select免费计划,我们只是重新激活它的帐户在我们身边,别的什么都不做,因为我们在条带上configuration了免费计划,花费0 $。 我们的免费计划是否实施了正确的stream程? 有更好的方法吗?

  6. #情景2如果用户select一个收费计划,我们将他redirect到一个信用卡表格,然后将被发送到条纹,我们更新条纹客户帐户与临时卡令牌。 接下来我们该怎么办?

    • 我们是否应该等待条纹给我们一个事件? 如果是的话,什么事件? customer.subscription.updatedcharge.succeeded ? 那么object.status的价值是什么呢?
    • 我们是否应该直接重新激活用户帐户并等待来自条带的确认? 如果是这样,那么我们应该等待的事件名称和数据是什么?

在第2部分中,你这样做:

我们build立了一个webhook接收条纹事件,所以在30天后,我们的webhook应该会收到一个customer.subscription.updated event.status == active是我吗?

您也可以考虑实施customer.subscription.trial_will_end webhook,这个webhook将在客户试用期结束前三天发送,并允许您向客户发送通知以更新他们的付款信息。

这样,如果用户决定去更新他们的付款信息,Stripe将能够在客户试用结束后立即付款,他们将能够不中断地继续使用您的服务。

#场景1如果用户select免费的计划,我们只是重新激活其帐户在我们身边,别的什么都不做,因为我们configuration了条纹的免费计划成本0 $。 我们的免费计划是否实施了正确的stream程? 有更好的方法吗?

据我所知,这是使用Stripe实现免费计划的最佳方式,我可能只是确保客户没有发送任何发票,除非它是必需的。 我怀疑,如果用户使用免费的计划,用户会希望在每个帐单期间收到发票。

#场景2如果用户select一个收费计划,我们将他redirect到一个信用卡表格,然后发送到条纹,我们用临时卡令牌更新条纹客户帐户。 接下来我们该怎么办?

  • 我们是否应该等待条纹给我们一个事件,如果是的话,是什么事件? customer.subscription.updated? charge.succeeded? 那么object.status的价值是什么呢?
  • 我们是否应该直接重新激活用户帐户并等待来自条带的确认? 如果是这样,那么我们应该等待的事件名称和数据是什么?

一旦用户select了一个计划并更新了他们的付款信息,我会马上激活他们的账户,只要条形码的订阅更新的响应成功了。

只要您已经从您的条纹仪表板configuration了您的订阅首选项,您应该能够让Stripe处理付款失败时将执行的操作。 只要确保你实现了customer.subscription.updated webhook,因为这将是Stripe发送给你的webhook,如果它们将订阅标记为未付或取消,允许你相应地更新你自己的logging。