2

我一直在研究 Laravels 网站上有关 Cashier 的文档。从它的声音来看,它似乎正是我所需要的。与 Stripe 集成的基本订阅配置。我可以通过配置部分相当轻松地进行操作。然后它切换齿轮并讨论一下 BrainTree 集成。然后它直接创建订阅,引用以下代码:

$user = User::find(1);
$user->newSubscription('main', 'monthly')->create($stripeToken);

所以我的第一个问题是——“$stripeToken”从何而来?我觉得这里的解释存在相当大的差距。即使我运行代码,它也会出错,提示找不到 $stripeToken。

我从哪里设置/获取 $stripeToken?

我曾尝试关注其他有关使用 Laravel 设置 Cashier 的视频教程,但这些似乎都已过时,因为许多设置步骤在 Laravel 5.4 中不再相关。例如:

在一个教程中,它说您可以通过以下方式检查用户是否已经订阅了 Stripe 中的计划:

$user->subscribed('main')

在视频系列中,它显示他将数据库字段 (stripe_active) 从 0 更改为 1,以在视图中显示不同的消息。然而,使用新流程,甚至不再创建“stripe_active”字段。

所以 - 冒着这是一个开放式的模糊问题的风险,我提出了 3 个问题来开始。

a.) 谁能告诉我如何/在哪里设置 $stripeToken 以使文档中的代码正常工作?

b.) 谁能告诉我如何使用 Cashier 7.0 和 Laravel 5.4 检查 Stripe 中是否存在订阅?

c.) 是否有人知道任何使用最新版本完成此过程的好的教程/视频?

4

1 回答 1

2

你是对的 - 文档中有一个巨大的差距。

A)您需要在前端视图上创建一个表单,并自己生成令牌,您可以通过 javascript 捕获该令牌,然后通过POST. 使用Stripe Checkout最容易做到这一点,但使用Stripe Elements更可定制。

B)您可以User使用此处描述的内置方法查看 a 在 Laravel 中是否有订阅:https ://laravel.com/docs/5.4/billing#checking-subscription-status 。如果您询问如何通过Laravel 调用 Stripe 来获取 Stripe 订阅,看来您可以使用 Laravel Cashier 的依赖库来执行此$plans = Plan::getStripePlans();操作stripe/stripe-php

C)我发现本教程非常有帮助,目前它是最新的,尽管这可能会改变:http ://www.qcode.in/subscription-with-coupon-using-laravel-cashier-stripe/

于 2017-08-08T04:27:13.013 回答