在Laravel 5.2中,Laravel Cashier条带不能创建订阅。

时间:2016-04-13 12:42:10

标签: php stripe-payments laravel-5.2 laravel-cashier

我正在使用Laravel 5.2和Cashier。 我想创建订阅

 $user->newSubscription('premium', 'monthly')->create($request->get('stripeToken'));

我收到此错误

RequestOptions.php第78行中的Api: Stripe API方法调用的第二个参数是可选的每请求apiKey,它必须是字符串或每个请求选项,它们必须是数组。 (提示:您可以通过" Stripe :: setApiKey()")设置全局apiKey。

1 个答案:

答案 0 :(得分:0)

我今天遇到了同样的问题 - 背后的原因是Laravel\Cashier\Billable::getStripeKey()方法通过使用getenv('STRIPE_SECRET')而不是实际使用配置来获取环境变量,这迫使你拥有环境变量名为STRIPE_SECRET - 我的命名不同,导致问题 - 所以请确保条带密钥的环境变量名为STRIPE_SECRET

导致问题的方法:

/**
 * Get the Stripe API key.
 *
 * @return string
 */
public static function getStripeKey()
{
    return static::$stripeKey ?: getenv('STRIPE_SECRET');
}