thearkaid / laravel-faspay
Faspay支付网关的非官方Laravel包
v0.4.1
2020-07-03 02:07 UTC
Requires
- karriere/json-decoder: dev-master
README
非官方Laravel包,用于Faspay支付网关。
本包是从Faspay Api. PHP转换而来。
- Faspay企业借记
- Faspay企业信用卡
功能
- 获取支付通道
- 创建支付
- 检查支付状态
- 取消支付
- 通知
- 回调
安装
您可以通过composer安装此包
composer require thearkaid/laravel-faspay
发布faspay.php配置
php artisan vendor:publish --provider='TheArKaID\LaravelFaspay\Providers\LaravelFaspayServiceProvider'
使用方法
- 在您的config目录中更新faspay.php配置
/** * Set true saat dalam Mode Development * Set false saat ke Mode Production */ 'isdev' => true, // Kredensial saat dalam Mode Development 'devcred' => [ 'merchantname' => env('FP_DEV_MERCHANT_NAME', 'OR JUST SET HERE'), 'merchantid' => env('FP_DEV_MERCHANT_ID', 'OR JUST SET HERE'), 'userid' => env('FP_DEV_USER_ID', 'OR JUST SET HERE'), 'password' => env('FP_DEV_PASSWORD', 'OR JUST SET HERE'), 'redirecturl' => env('FP_DEV_REDIRECT_URL', 'OR JUST SET HERE') ], // Kredensial saat dalam Mode Production 'prodcred' => [ 'merchantname' => env('FP_PROD_MERCHANT_NAME', 'OR JUST SET HERE'), 'merchantid' => env('FP_PROD_MERCHANT_ID', 'OR JUST SET HERE'), 'userid' => env('FP_PROD_USER_ID', 'OR JUST SET HERE'), 'password' => env('FP_PROD_PASSWORD', 'OR JUST SET HERE'), 'redirecturl' => env('FP_PROD_REDIRECT_URL', 'OR JUST SET HERE') ]
- 始终使用并创建LaravelFaspay类
// Require LaravelFaspay class use TheArKaID\LaravelFaspay\LaravelFaspay; // Create an object from LaravelFaspay Class $faspayer = new LaravelFaspay();
- 获取支付通道
// Return Payment Channel here return $faspayer->getPaymentChannel();
- 创建支付
// Define your payment channel, $paymentChannel['pg_code'] = "802"; $paymentChannel['pg_name'] = "Mandiri Virtual Account"; // Create an array for ordered Item $item = Array(); $order["product"] = "Item #1"; // Product Name $order["qty"] = 1; // QTY $order["amount"] = 100000; // Price. Just the real price, without any '.'(dot) or ',' (comma). $order["paymentplan"] = 1; // Payment Plan. See References below. $order["merchantid"] = $faspayer->getConfig()->getUser()->getMerchantId(); // Merchant ID $order["tenor"] = 00; // Tenor. See References below. array_push($item, $order); // Push order, // Loop or push again for more than 1 items. // Create Bill Data $billData["billno"] = "1232123"; // Bill Number $billData["billdesc"] = "Pembayaran RHI"; // Billing Description $billData["billexp"] = 2; // Expired Day Interval (in total days) $billData["billtotal"] = 10000; // Bill Total, Just the real bill, without any '.'(dot) or ',' (comma). $billData["paytype"] = 3 // Pay Type. See References below. // Create User Data $userData["phone"] = "087123123123"; // Phone Number $userData["email"] = "arka.progammer@gmail.com"; // Email $userData["terminal"] = 21; // Terminal $userData["custno"] = "12345"; // Customer No $userData["custname"] = "thearka"; // Customer Name // Proccess the request and return the result. return $faspayer->createPayment($item, $paymentChannel, $billData, $userData);
- 检查支付状态
// Proccess the request and return the result. return $faspayer->checkPaymentStatus( $reqdesc, // Request Description $trx_id, // Transaction ID $billno // Billing Number );
- 取消支付
// Proccess the request and return the result. return $faspayer->cancelPayment( $trx_id, // Transaction ID $billno, // Billing Number $paymentcancel // Description for Cancellation );
- 通知
当用户接受或取消支付时,支付状态的通知将被发送到您的服务器。别忘了将此数据返回到屏幕,作为对Faspay的响应,表明您的服务器已接受其请求
// Get the notification. return $faspayer->notifier(); // The Data returned. Take the data for updating your data status. // Success. { "response": "Payment Notification", "response_date": "2020-06-28 17:06:26", "trx_id": "1234567890", // Transaction ID "merchant_id": "12345", // Merchant ID "merchant": "TheArKa", // Merchant Name "response_code": "00", "response_desc": "Sukses" } // Failed { "response": "Payment Notification", "response_date": "2020-06-28 17:06:15", "trx_id": "1234567890", // Transaction ID "merchant_id": "12345", // Merchant ID "merchant": "TheArKa", // Merchant Name "response_code": "01", "response_desc": "Gagal" }
- 回调
当用户的交易完成并收到交易已完成的通知时,将调用回调
// Get the callback data return $faspayer->callbacker(); // The Data returned. Take the data for updating your data status. { "response": "Callback", "response_date": "2020-06-28 17:06:26", "trx_id": "1234567890", // Transaction ID "bill_no": "1234567890", // Bill Number "merchant_id": "12345", // Merchant ID "merchant": "TheArKa", // Merchant Name "bill_ref": "1234567890", // Bill Reference "response_code": "00", "response_desc": "Sukses" }
参考
在Faspay中有一些信息可以帮助您理解此包中的术语
已停用!
此包已停用,但自从上次提交以来它仍然可以正常工作,只要Faspay的工作方式没有改变。如果您有继续此包的理由,请随时将其分支或联系我寻求帮助。