evilnet / dotpay
用于通过API而不是表单进行Dotpay支付的软件包
2.1.3
2020-09-09 10:52 UTC
Requires
- php: ~5.6|~7.0
- guzzlehttp/guzzle: ^6.3 || ^7.0.1
Requires (Dev)
- phpunit/phpunit: >=5.4.3
- squizlabs/php_codesniffer: ^2.3
README
为 Laravel 5.x 提供的 Dotpay 包。允许您通过 API 直接发送数据,而不是使用表单。
结构
src/
tests/
安装
通过 Composer
$ composer require evilnet/dotpay
或者,如果您正在使用 master 版本的最新版本(如果您想使用最稳定的版本,不建议这样做),请将以下内容添加到 composer 文件中
"require": { "evilnet/dotpay": "dev-master" },
然后注册服务,如果需要的话,还可以添加别名,以便在 config/app.php 中使用 facade(从 Laravel 5.5 及更高版本不再需要)
'providers' => [
Evilnet\Dotpay\DotpayServiceProvider::class,
'aliases' => [
'Dotpay' => Evilnet\Dotpay\Facades\Dotpay::class
发布配置,并在其中填写所需数据
php artisan vendor:publish --provider="Evilnet\Dotpay\DotpayServiceProvider"
将值添加到 .env 文件中
DOTPAY_USERNAME=
DOTPAY_PASSWORD=
DOTPAY_SHOP_ID=
DOTPAY_PIN=
DOTPAY_BASE_URL=https://ssl.dotpay.pl/test_seller/
并将您自己的处理回调的方法添加到 VerifyCsrfToken 文件中,作为异常处理(这样 POST 请求就不需要 CSRF 标记了)
环境
生产环境:https://ssl.dotpay.pl/s2/login/
测试环境:https://ssl.dotpay.pl/test_seller/
使用示例
namespace App\Http\Controllers; use Evilnet\Dotpay\DotpayManager; use Illuminate\Http\Request; use Illuminate\Http\Response; class DotpayController extends Controller { private $dotpayManager; public function __construct(DotpayManager $dotpayManager) { $this->dotpayManager = $dotpayManager; } // Tutaj uderzy Dotpay z danymi o tym w jakim stanie jest transakcja. Zwrócenie OK jest wymagane by dotpay przyjął, że serwer odpowiada poprawnie public function callback(Request $request) { $response = $this->dotpayManager->callback($request->all()); //Do whatever you want with this return new Response('OK'); } public function pay() { $data = [ 'amount' => '100', 'currency' => 'PLN', 'description' => 'Payment for internal_id order', 'control' => '12345', //ID that dotpay will pong you in the answer 'language' => 'pl', 'ch_lock' => '1', 'url' => config('dotpay.options.url'), 'urlc' => config('dotpay.options.curl'), 'expiration_datetime' => '2017-12-01T16:48:00', 'payer' => [ 'first_name' => 'John', 'last_name' => 'Smith', 'email' => 'john.smith@example.com', 'phone' => '+48123123123' ], 'recipient' => config('dotpay.options.recipient') ]; return redirect()->to($this->dotpayManager->createPayment($data)); } }
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
测试
$ phpunit vendor/evilnet/dotpay/tests
贡献
有关详细信息,请参阅 CONTRIBUTING 和 CODE_OF_CONDUCT。
安全性
如果您发现任何与安全性相关的问题,请通过电子邮件 axotion@linux.pl 而不是使用问题跟踪器。
致谢
许可协议
MIT 许可协议(MIT)。有关更多信息,请参阅 许可文件。