amonger / laravel-payment-commands
laravel 的支付命令
v0.1.5
2016-08-23 11:20 UTC
Requires
- php: ^7.0
- omnipay/omnipay: ^2.3
README
该仓库包含一系列命令,允许您通过 PayPal Express(更多即将到来)使用 Laravel 的命令总线进行支付。
设置
最初,您需要找到您的 API 详细信息,这些信息可以在 PayPal 的个人资料页面上找到。
您需要将这些信息添加到您的 .env 文件中
PAYPAL_USERNAME=username
PAYPAL_PASSWORD=password
PAYPAL_SIGNATURE=signature
#PAYPAL_TEST_MODE=true # Be sure to use this if accessing a sandbox!
然后您需要将网关服务提供商添加到您的 app.php 中。这将绑定提供程序到 GatewayInterface。
'providers' => [ ... PaymentCommands\Paypal\Providers\GatewayServiceProvider::class ],
派发命令
添加之后,您就可以开始了!只需在控制器中调用命令总线来处理支付。这将返回重定向 URL,然后您可以进行重定向。
public function index() { $cancelUrl = url('/cancel'); $returnUrl = url('/capture'); $currency = 'GBP'; $items = [ [ 'price' => 200, 'description' => 'A bike', 'quantity' => 1 ] ]; $redirectUrl = $this->dispatch(new MakePayment($items, $currency, $cancelUrl, $returnUrl)); return redirect($redirectUrl); }
支付完成后,您将用户重定向回您的网站。
public function capture() { $this->dispatch(new CapturePayment(Input::get('token'), Input::get('payerID'))); }
扩展
命令总线中的每个阶段都会触发一个事件,您可以将其挂钩。
您可以通过查看 事件文档 来了解如何实现这一点。