udaykumar77/stripe

此包最新版本(v1.0)没有提供许可证信息。

stripe 与 Laravel 简单集成

v1.0 2016-09-02 10:22 UTC

This package is not auto-updated.

Last update: 2024-09-23 14:02:45 UTC


README

Stripe 是在线和移动应用中接收支付的最佳方式。我们每年为世界各地具有前瞻性的企业处理数十亿美元。

安装(Laravel Cashier)

Composer

首先,将 Stripe Cashier 包添加到您的 composer.json 文件中,并运行 composer update 命令

"laravel/cashier": "~6.0"

服务提供者

接下来,在您的应用程序配置文件中注册 Laravel\Cashier\CashierServiceProvider 服务提供者。

Laravel\Cashier\CashierServiceProvider::class,

数据库迁移

在使用 Cashier 之前,我们还需要准备数据库。我们需要向您的用户表中添加几个列,并创建一个新的订阅表以存储所有客户的订阅

Schema::table('users', function ($table) {
    $table->string('stripe_id')->nullable();
    $table->string('card_brand')->nullable();
    $table->string('card_last_four')->nullable();
    $table->timestamp('trial_ends_at')->nullable();
});

Schema::create('subscriptions', function ($table) {
    $table->increments('id');
    $table->integer('user_id');
    $table->string('name');
    $table->string('stripe_id');
    $table->string('stripe_plan');
    $table->integer('quantity');
    $table->timestamp('trial_ends_at')->nullable();
    $table->timestamp('ends_at')->nullable();
    $table->timestamps();
});

一旦创建了迁移,只需运行 migrate Artisan 命令即可。

模型设置

接下来,将 Billable 特性添加到您的模型定义中

use Laravel\Cashier\Billable;

class User extends Authenticatable
{
    use Billable;
}

服务提供商密钥

接下来,您应该在 services.php 配置文件中配置您的 Stripe 密钥

'stripe' => [
    'model'  => App\User::class,
    'secret' => env('STRIPE_SECRET'),
],

安装 Stripe

composer

首先,将 udaykumar77/stripe 包添加到您的 composer.json 文件中,并运行 composer update 命令

"udaykumar77/stripe": "v1.0"

服务提供者

接下来,在您的应用程序配置文件中注册 UdayKumar77\Stripe\StripeServiceProvider 服务提供者。

UdayKumar77\Stripe\StripeServiceProvider::class,

外观

接下来,在您的应用程序配置文件别名中注册 UdayKumar77\Stripe\Facade\StripeController 外观。

'Stripe' => UdayKumar77\Stripe\Facade\StripeController::class,

命令

从您的终端运行以下命令。

composer dump-autoload

注册您的 stripe 账户

  • 转到账户设置 -> API 密钥
  • 在 .env 文件中添加 Secret 和 Publishable 密钥

.env

在您的 .env 文件中添加以下内容

STRIPE_SECRET=**************************
STRIPE_PUBLISHABLE_SECRET=*********************

方法

  • 生成 Stripe Token
Stripe::generateCardToken(array $params)

$params = ["number"     => "4242424242424242",
            "exp_month" => "9",
            "exp_year"  => "2017",
            "cvc"       => "456"]

用法

在控制器中使用命名空间,如下所示

<?php
namespace App\Http\Controllers\Stripe;
use Stripe;

public function generateToken() {
        $stripeToken = Stripe::generateCardToken(
                               ["number"    => "4242424242424242",
                                "exp_month" => "9",
                                "exp_year"  => "2017",
                                "cvc"       => "456"]);
        return response()->json($stripeToken);
    }

许可协议

MIT 许可协议 (MIT) @ Uday Kumar Gudivada