问题标签 [laravel-cashier]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
550 浏览

laravel - 具有额外功能(模块或插件)的条带订阅

我需要对我当前的订阅系统进行更改,并且我需要添加选项,让用户根据他们想要的功能(模块)按订阅收费。这是一个例子:

BasePlan1_2015:10 美元

特色 1:5
美元 特色 2:10
美元 特色 3:5 美元

在续订账单时,具有 BasePlan1_2015 和 Feature1 和 Feature2 的用户应支付
10 美元 + (5 美元 + 10 美元) = 25 美元。

到目前为止,我有两个选择:

选项 1:监听创建的发票的 webhook,并根据所选功能应用发票行。用户第一次选择他们的功能时,我会将它们添加到发票中,然后开具发票。然后我会在每个收到所需发票行的 webhook 处添加。

选项 2:即时创建新计划。我会在我的数据库中存储每个功能的成本,当用户选择功能组合时,我会即时创建计划,将总和等于基本订阅的成本加上所选功能,然后订阅它们那个具体的计划。如果有人删除或添加新功能,我会创建一个新计划(如果尚未创建)并按比例分配。

我倾向于第二种选择,因为它更加自动化,并且很可能在更新时一切都在 Stripe 端完成。

到目前为止,这两个是我能想到的唯一选择,但我有一种感觉,可能还有别的选择。

有没有人在 Stripe 使用过或正在使用类似的东西并且有其他选择?

编辑 1
@koopajah 我知道选项 2 更复杂(已经对其进行了测试,感觉并不难管理),但到目前为止,我无法理解选项 1。我了解它应该如何工作,但我发现很难把它放在代码中。基本上,当用户开始添加或更改功能以及我可能需要按比例分配他们未使用的时间时,我的问题就出现了。我使用的是年度订阅,由于计费周期较长,我必须按比例分配。

您对我可以查看并更好地理解如何执行选项 1 的软件包或资源有任何想法吗?
此外,我不能真正测试带条纹的 webhook,但前提是我每天订阅并等待几天来看看 webhook 是如何工作的。

更新 1 遇到选项 3(从这里Stripe FAQ):
有一个 BasicPlan1_2015 1 美元。基本计划的数量为 10 => 10 美元。每个功能都会有一个分配给它们的数量编号:

Feature1:数量 5 表示 5 美元
Feature2:数量 10 表示 10 美元
Feature3:数量 5 表示 5 美元

现在,当用户添加或删除一项或多项功能时,我只需更新计划数量,我想一切都应该可以正常工作。

具有功能 1 和功能 2 的 BasicPlan1_2015 的数量应为 10 + (5 + 10) = 25,每个计费周期产​​生 25 美元的费用。

现在,比较所有三个选项,我更倾向于选项 3。只有一个计划、多个选项和相同的结果,而其他选项要求我有多个计划或使用 webhook!

0 投票
1 回答
1136 浏览

laravel - Laravel Cashier:恢复单笔付款

成功付款后,我将条带 ID 存储在 mysql 表中。使用该 ID,我想检索存储在条带数据库中的所有详细信息。

那么是否可以通过条带 id 恢复单笔付款?

谢谢

0 投票
1 回答
1198 浏览

laravel - Laravel Cashier - 更新卡生成一个新的条纹用户 + id

我正在使用 Laravel 的 Cashier 来处理我在 Laravel 5.1 上的订阅计划。每次我用

在 Stripe 上生成了一个新客户,带有一张新卡、新 ID 但相同的电子邮件,而实际上它应该只更新客户的卡。我查看了文档,但没有发现可能有什么问题。有人可以帮忙吗?

0 投票
2 回答
1608 浏览

php - 使用 Laravel 收银员“扩展”用户对 Stripe 的订阅?

我使用 Stripe 来管理订阅服务,并使用 Laravel Cashier 作为 Stripe 服务的 API 接口。

我有一种情况,我想为用户注册一项服务,然后偶尔将他们的订阅延长到原始订阅结束日期之后任意数量。Stripe 支持这一点,推荐的做法是使用“订阅更新”端点并传递一个新trial_end值和一个proratefalse/null 值。

我想知道 Laravel Cashier 是否支持此功能。我试过了:

但是,我的条纹仪表板似乎没有显示更改注册。

这是我可以专门使用 Cashier 完成的事情,还是我需要使用原生 Stripe API?该StripeGateway课程确实有许多与试验和结束日期有关的方法,但我在解读它们的预期功能时遇到了麻烦。谢谢。

0 投票
1 回答
547 浏览

laravel-4 - 如何使用 Laravel Cashier 4 从 Stripe 计划中删除优惠券

我目前正在尝试实施一种将人们换成新计划的方法。我遇到的问题是旧计划中的优惠券结转并且不向用户收费。每次我尝试删除旧优惠券时,它似乎都不允许。

想法受到赞赏。干杯。

0 投票
1 回答
835 浏览

php - 如何使用 Laravel Cashier (4.2) 为 Stripe 订阅加税

我想对刚刚将用户交换到的订阅征税。这是我的尝试:

我查看了 Laravel Cashier 文件,在文件中找不到任何与税收相关的StripeGateway.php代码。我最大的恐惧是在这个版本的 Laravel Cashier 中无法做到这一点。

0 投票
1 回答
274 浏览

laravel-4 - 如何使用 Laravel Cashier 模拟下一个 Stripe 计费周期

我想看看当用户的下一个计费周期触发时会发生什么,以确保我的 GST 计算是正确的。也许我的术语是错误的,但我似乎找不到任何明确的文档来执行此操作。干杯。

0 投票
3 回答
1125 浏览

php - 无法在 Laravel Cashier 4.2 中设置订阅试用,因此不会立即向客户收费

我目前正在使用带有 Stripe 的 Laravel Cashier (4.2)。我使用的当前 Stripe API 版本是 2014-06-17。在创建订阅时,我尝试了各种方式来设置试用结束日期。我已经尝试了此代码的各种变体:

当我查看发送给 Stripe 的请求时,trial_end总是null. 任何想法表示赞赏。

Laravel Cashier官方文档说明如下:

$user->subscription('monthly') ->withCoupon('code') ->create($creditCardToken);

订阅方法将自动创建 Stripe 订阅,并使用 Stripe 客户 ID 和其他相关计费信息更新您的数据库。如果您的计划在 Stripe 中配置了试用版,则试用结束日期也将自动设置在用户记录中。

如果您的计划具有未在 Stripe 中配置的试用期,您必须在订阅后手动设置试用结束日期:

$user->trial_ends_at = Carbon::now()->addDays(14);

$user->save();

试用日期的手动设置似乎不起作用。我尝试了官方文档概述的方法,并且由于某种原因未应用试用期,因此总是立即向用户收费。

我查看文档的次数越多,我就越认为如果它不在 Stripe 端,它甚至不支持试用期。关键是:“如果您的计划有未在 Stripe 中配置的试用期,您必须在订阅后手动设置试用结束日期”,但此时,订阅已经创建,因此费用已经被做成了……

0 投票
5 回答
4307 浏览

php - 创建订阅后如何使用 Laravel Cashier 将优惠券添加到 *Stripe 订阅*

根据 Stripe 文档,您似乎可以将优惠券作为一个整体应用于客户,但您也可以将优惠券应用于他们的订阅。在创建订阅后,我正在尝试将优惠券应用于客户的订阅。我正在使用 Laravel Cashier 4.2。

这是我尝试过的:

这是错误消息:

我可以将该applyCoupon()方法作为一个整体用于客户,但不能用于实际订阅......感谢您的想法。

Stripe 文档仅显示如何从订阅中删除折扣: 折扣对象。我能在他们的文档中找到的唯一其他信息是:

优惠券和折扣

如果您想为某些客户提供折扣,您可以在仪表板中创建优惠券代码。优惠券有折扣百分比和期限,因此您可以创建优惠券,例如 10% 的终身折扣或一个月 50% 的折扣等。优惠券还可以附加到期日期,在此之后无法使用。下面是为用户订阅添加折扣的示例。在本例中,我们已经创建了一个名为 50OFF1MONTH 的优惠券:

curl https://api.stripe.com/v1/customers/cus_4fdAW5ftNQow1a \ -u sk_test_4LOIhlh19aUz8yFBLwMIxnBY: \ -d coupon=50OFF1MONTH

但是,这不是很有帮助。再一次,Laravel 的文档有点优雅,并且缺少有关该主题的任何信息。

我想知道我是否只需要完全使用新优惠券重新创建订阅对象......但这并不理想,因为您需要一个卡片令牌。

更新 1

我可以确认这确实将优惠券应用于订阅本身

然而,问题再次是如何在事后添加优惠券。

0 投票
0 回答
278 浏览

php - 订阅税未在 Laravel Cashier 的 PDF 发票中显示为行项目

在为用户创建新订阅时,我现在在tax_percent每次创建新订阅时都包含一个。收费金额是正确的,条纹端的一切看起来都很好。但是,当通过 Laravel Cashier 下载发票的 PDF 时,GST 不会显示为行项目。

我正在查看该receipt.blade.php文件,但没有迹象表明它目前正在这样做。我看到的唯一可能显示税收的地方是:

但是,$invoice->invoiceItems()数组似乎是空的。关于为什么的任何想法将不胜感激。