aries / seppay
此包已被废弃且不再维护。没有推荐替代包。
Laravel 包,用于使用 to pay.ir 支付网关
3.5
2019-09-23 15:59 UTC
Requires
README
基于伊朗 Shaparak 网络的 Laravel 的 Saman 电子支付(pay.ir)支付包
更新说明:
您需要再次发布 Service Provider 并运行迁移以更新交易表
php artisan vendor:publish --provider='Aries\Seppay\SeppayServiceProvider'
php artisan migrate
安装:
运行此命令
composer require aries/seppay
然后运行此命令
php artisan vendor:publish --provider='Aries\Seppay\SeppayServiceProvider'
然后运行
php artisan migrate
用法:
您可以在 config/Seppay.php 或您的 .env 文件中使用 SEP_API_KEY 设置 pay.ir api 密钥
您有两种付款方式
- 使用 Trait
将 Payable Trait 导入您想要拥有付款功能的模型中
use Aries\Seppay\Traits\Payable;
并在模型类中使用 Payable 如下
class Bill extends Model { use Payable; ... }
然后在您的控制器中,您可以开始付款如下
public function payment($id) { $bill = Bill::find($id); return $bill->pay($amount, $mobile, $description, $callback_url, $factor_number, $valid_card_number); }
$factor_number 和 $valid_card_number 是可选的,您可以将其设置为 null 或不将它们传递给 pay() 方法
- 使用 Pay() 类
<?php namespace App\Http\Controllers; use Aries\Seppay\Pay; use Aries\Seppay\Models\Transaction; use Illuminate\Http\Request; class TestController extends Controller { public function test() { $factor_number = 123; $amount = 1000; $valid_card_number = '6037999999999999'; try { $pay = new Pay(); $pay->amount($amount); $pay->factorNumber($factor_number); $pay->validCardNumber($valid_card_number); $pay->callback(url('/')); $response = $pay->ready(); Transaction::create([ 'amount' => $amount, 'transId' => $response->token, 'factorNumber' => $factor_number, 'validCardNumber' => $valid_card_number, 'mobile' => '09123456789' ]); /* * do anything you want with $response Object * Like: store Transaction ID on your cart with: $response->transId; */ return $pay->start(); } catch (\Exception $e) { return $e->getMessage(); } } public function callback() { try { $pay = new Pay(); $response = $pay->verify(); /* * if verification was successful you can send order for your customer */ } catch (\Exception $e) { return $e->getMessage(); } } }
特别感谢 Mohammad Babaei