代码之家  ›  专栏  ›  技术社区  ›  Wai Yan Hein

Laravel出纳(Stripe)使用现有客户和代币订阅

  •  0
  • Wai Yan Hein  · 技术社区  · 6 年前

    我正在开发一个涉及订阅付款的laravel应用程序。现在我正在努力用token订阅用户,但使用的是现有的客户。情况就是这样。在我的应用程序中,用户可以更新他们的支付/账单信息(基本上是卡)。当他们更新支付信息时,他们只是添加卡信息。然后,用户可以支付或订阅他们想要的任何东西。

    第一个用户将添加他们的付款方式或卡信息。所以我创造了这样的客户。

         $user->createAsStripeCustomer($token, array_merge($options, [
            'email' => 'email address',
         ]));
    

    因此,上述方法将为用户创建条带客户和卡。明天,用户可能要订阅一个频道。Laravel出纳提供以下订阅方法。

    $user->newSubscription('subscription-name', 'my-plan')->create($token);
    

    那么上述代码的问题是,我必须再次传递令牌。如果必须再次传递令牌,则必须在javascript中再次生成令牌。如果必须在javascript中再次生成令牌,则必须要求用户再次输入卡信息以获取令牌。那么,我该怎么做才能让用户使用现有的客户信息订阅呢?我该怎么做?

    0 回复  |  直到 6 年前
        1
  •  0
  •   Renny M. Roy    6 年前

    一种方法是每当您创建一个条带客户时,将该用户添加到一个免费订阅计划中,这样他在订阅之前不必支付任何费用。当用户启动订阅时,我们只需使用以下方法将订阅计划更改为所需计划:

    $user->subscription('main')
            ->skipTrial()
            ->swap('provider-plan-id');
    

    另一种方法是每当我们创建一个stripe客户时,要求用户选择一个订阅计划,并让他进入试用期,直到他订阅为止。