professionalweb / payment-laravel
laravel的支付驱动程序
v3.0.1
2018-10-01 14:31 UTC
Requires
- illuminate/support: 5.*
Suggests
- professionalweb/payment-laravel-payonline: Driver for PayOnline
- professionalweb/payment-laravel-tinkoff: Driver for Tinkoff
- professionalweb/payment-laravel-yandex: Driver for Kassa.Yandex
README
要求
- PHP 7.2+
依赖项
安装
模块可通过composer获得
composer require professionalweb/payment-laravel "dev-master"
或者您可以将以下内容手动添加到您的composer.json
文件的require
部分
"professionalweb/payment-laravel": "^4.0"
之后运行composer update
。
使用
首先用户必须重定向到支付系统页面
<?php public function action(PayService $paymentService) { redirect()->to( $paymentService->getPaymentLink($order->id, $payment->id, $payment->amount, $payment->currency, PayService::PAYMENT_TYPE_CARD $successfulPaymentReturnUrl, $failedPaymentReturnUrl, $description ); ); }
然后您需要处理异步响应
<?php public function responseHandler(PayService $paymentService) { if($paymentService->setResponse($this->getRequest()->all())->isSuccess()) { $orderId = $paymentService->getOrderId(); $status = $paymentService->getStatus(); $amount = $paymentService->getAmount(); $errorCode = $paymentService->getErrorCode(); $pan = $paymentService->getPan(); $paymentDate = $paymentService->getDateTime(); $transactionId = $paymentService->getTransactionId(); $provider = $service->getProvider(); // Update order, payment record, etc... } else { // something else } }
收据
发送收据到IRS
/** * Prepare Receipt * * @param Order $order * * @return Receipt */ public function prepareReceipt(Order $order) { $receipt = new Receipt($order->user->email); /** @var Item $item */ foreach ($order->items as $item) { $receipt->addItem(new ReceiptItem($item->name, $item->qty, $item->price, config('payment.tax'))); } return $receipt; }
PayOnline提供单独的服务来发送注册收据并发送给用户。
use professionalweb\payment\contracts\ReceiptService; $receipt = new Receipt($order->user->email); $receipt->setTransactionId($transactionIdFromPayOnlineResponse); /** @var Item $item */ foreach ($order->items as $item) { $receipt->addItem(new ReceiptItem($item->name, $item->qty, $item->price, config('payment.tax'))); } app(ReceiptService::class)->sendReceipt( $this->prepareReceipt() );
MIT许可证(MIT)
版权所有(c)2016 Sergey Zinchenko,Professional web
特此授予任何获得本软件及其相关文档副本(“软件”)的人免费权利,以不受限制地处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件的副本,并允许获得软件的人这样做,但受以下条件约束
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论源于合同、侵权或其他方式,与软件或软件的使用或其他交易有关。