64robots / stripe
一个用于将 stripe 集成添加到 64 robots 软件包的包
1.11.0
2020-05-25 15:11 UTC
Requires
- php: ^7.1
- fzaninotto/faker: ^1.4
- illuminate/container: ^5.0|^6.0|^7.0
- illuminate/support: ^5.0|^6.0|^7.0
- stripe/stripe-php: ^7.27
Requires (Dev)
- mockery/mockery: ^1.0
- orchestra/testbench: ^4.0
- phpunit/phpunit: ^8.0
- dev-master
- 1.11.0
- v1.1.7
- v1.1.6
- v1.1.5
- v1.1.4
- v1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.10
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- dev-feature/balance-and-payout
- dev-feature/add-latest-invoice-to-subscription
- dev-feature/add-create-connect-charge
- dev-refactor-mockhandler
- dev-feature/add-reference-to-stripe-subscription-object
- dev-feature/add-reference-to-stripe-charge-object
This package is auto-updated.
Last update: 2024-09-20 20:41:44 UTC
README
此包使将 stripe 集成添加到 Laravel 应用程序变得更加容易
安装和设置
要获取最新版本,只需使用 Composer 要求此包
$ composer require 64robots/stripe
安装后,此包将自动注册其服务提供者。
要发布配置文件到 config/stripe.php
运行
$ php artisan vendor:publish --provider="R64\Stripe\StripeServiceProvider" --tag="config"
用法
您最可能与之交互的类是 PaymentProcessor
类。处理器类可以注入到其他类或从容器中解析。
use R64\Stripe\PaymentProcessor;
.
.
.
$processor = app(PaymentProcessor::class);
$charge = $processor->createCharge([
'customer' => 'cus_GVIiC06JWCq1mo',
'amount' => 100,
'currency' => 'USD',
'source' => 'tok_visa'
]);
费用
- 要向信用卡或借记卡收费,您需要创建一个费用对象。您可以使用
PaymentProcessor
类上的createCharge
方法创建费用。将返回一个R64\Stripe\Objects\Charge
对象。
$charge = $processor->createCharge([
'customer' => 'cus_GVIiC06JWCq1mo',
'amount' => 100,
'currency' => 'USD',
'source' => 'tok_visa'
]);
客户
处理器允许您创建、更新、列出客户和获取单个客户。
- 要创建客户,请使用处理器上的
createCustomer
方法。将返回一个R64\Stripe\Objects\Customer
对象。
$customer = $processor->createCustomer([
'description' => 'Customer for jenny.rosen@example.com',
'source' => 'tok_visa',
'email' => jenny.rosen@example.com,
'metadata' => [
'first_name' => Rosen,
'last_name' => Gina,
]
]);
- 要更新客户,请使用处理器上的
updateCustomer
方法。将返回一个R64\Stripe\Objects\Customer
对象。
$customer = $processor->updateCustomer([
'id' => 1,
'email' => jenny.rosen@example.com,
'description' => Update jenny.rosen@example.com details,
'source' => 'tok_visa'
]);
- 要获取单个客户,请使用处理器上的
getCustomer
方法。将返回一个R64\Stripe\Objects\Customer
对象。
$customer = $processor->getCustomer('cus_GVIiC06JWCq1mo');
卡
您可以使用处理器获取卡、创建和更新卡。
- 要获取单个卡的详细信息,请使用处理器上的
getCard
方法。将返回一个R64\Stripe\Objects\Card
对象。
$card = $processor->getCard('cus_GVIiC06JWCq1mo', 'card_1FyI6w2eZvKYlo2COseWzZAo');
- 要创建卡,请使用处理器上的
createCard
方法。将返回一个R64\Stripe\Objects\Card
对象。
$card = $processor->createCard([
'source' => 'tok_visa'
]);
- 要更新卡,请使用处理器上的
updateCard
方法。将返回一个R64\Stripe\Objects\Card
对象。
$card = $processor->updateCard(
'cus_GVIiC06JWCq1mo',
'card_1FyI6w2eZvKYlo2COseWzZAo',
[
'name' => 'Jenny Rosen'
]
);
计划和订阅
计划定义了订阅的基础价格、货币和计费周期。
- 要创建产品,请使用处理器上的
createProduct
方法。将返回一个R64\Stripe\Objects\Product
对象。
$product = $processor->createProduct([
'name' => 'Monthly membership base fee',
'type' => 'service',
]);
- 要创建计划,请使用处理器上的
createPlan
方法。将返回一个R64\Stripe\Objects\Plan
对象。
$plan = $processor->createPlan([
'product' => ['name' => 'Gold special'],
'nickname' => 'special,
'interval' => 'month',
'billing_scheme' => 'per_unit',
'amount' => 100,
'currency' => 'usd'
]);
- 要创建订阅,请使用处理器上的
createSubscription
方法。将返回一个R64\Stripe\Objects\Subscription
对象。
$subscription = $processor->createSubscription([
'customer' => 'cus_GVIiC06JWCq1mo',
'items' => [
[
'object' => 'list',
'plan' => plan_GVIh1z2696UJyR
]
]
]);
- 要创建发票,请使用处理器上的
createInvoice
方法。将返回一个R64\Stripe\Objects\Invoice
对象。
$invoice = $processor->createInvoice([
'customer' => 'cus_GVIiC06JWCq1mo',
'subscription' => 'sub_DUVhBH3LKxekhs',
]);
- 要创建发票项目,请使用处理器上的
createInvoiceItem
方法。将返回一个R64\Stripe\Objects\InvoiceItem
对象。
$invoiceItem = $processor->createInvoiceItem([
'customer' => 'cus_GVIiC06JWCq1mo',
'subscription' => 'sub_DUVhBH3LKxekhs',
'amount' => 100,
'currency' => 'usd',
]);
- 要获取发票详细信息,请使用
getInvoice
方法。将返回一个R64\Stripe\Objects\Invoice
对象。
$invoice = $this->processor->getInvoice('in_1FJSdj2eZvKYlo2CCyOhyNxj');
- 要获取订阅详细信息,请使用
getSubscription
方法。将返回一个R64\Stripe\Objects\Subscription
对象。
$subscription = $this->processor->getSubscription(sub_DUVhBH3LKxekhs);
持卡人
您可以创建、更新和获取持卡人的详细信息。
- 要创建持卡人,请使用
createCardHolder
方法。将返回一个R64\Stripe\Objects\CardHolder
对象。
$cardHolder = $processor->createCardHolder([
'type' => 'individual',
'name' => 'Jenny Rosen',
'email' => 'jenny.rosen@example.com',
'phone_number' => '+18888675309',
'billing' => [
'name' => 'Jenny Rosen',
'address' => [
'line1' => '1234 Main Street',
'city' => 'San Francisco',
'state' => 'CA',
'country' => 'US',
'postal_code' => '94111',
],
],
]);
- 要更新持卡人的详细信息,请使用
updateCardHolder
方法。将返回一个R64\Stripe\Objects\CardHolder
对象。
$cardHolder = $processor->updateCardHolder([
'ich_1Ccy6F2eZvKYlo2ClnIm9bs4',
[
'metadata' => [
'order_id' => '6735'
]
]
])
- 要检索持卡人,请使用
getCardHolder
方法。将返回一个R64\Stripe\Objects\CardHolder
对象。
$cardHolder = $processor->getCardHolder('ich_1Ccy6F2eZvKYlo2ClnIm9bs4');