chargily epay php
v3.0.0
轻松地将ePayment Gateway整合在一起。
composer require chargily/epay-php // Configurations file
return [
' key ' => ' your-api-key ' , // you can you found it on your epay.chargily.com.dz Dashboard
' secret ' => ' your-api-secret ' , // you can you found it on your epay.chargily.com.dz Dashboard
]; use Chargily ePay Chargily ;
require ' path-to-vendor/vendor/autoload.php ' ;
$ epay_config = require ' epay_config.php ' ;
$ chargily = new Chargily ([
//credentials
' api_key ' => $ epay_config [ ' key ' ],
' api_secret ' => $ epay_config [ ' secret ' ],
//urls
' urls ' => [
' back_url ' => " valid-url-to-redirect-after-payment " , // this is where client redirected after payment processing
' webhook_url ' => " valid-url-to-receive-payment-informations " , // this is where you receive payment informations
],
//mode
' mode ' => ' EDAHABIA ' , //OR CIB
//payment details
' payment ' => [
' number ' => ' payment-number-from-your-side ' , // Payment or order number
' client_name ' => ' client name ' , // Client name
' client_email ' => ' [email protected] ' , // This is where client receive payment receipt after confirmation
' amount ' => 75 , //this the amount must be greater than or equal 75
' discount ' => 0 , //this is discount percentage between 0 and 99
' description ' => ' payment-description ' , // this is the payment description
]
]);
// get redirect url
$ redirectUrl = $ chargily -> getRedirectUrl ();
//like : https://epay.chargily.com.dz/checkout/random_token_here
//
if ( $ redirectUrl ){
//redirect
header ( ' Location: ' . $ redirectUrl );
} else {
echo " We cant redirect to your payment now " ;
} use Chargily ePay Chargily ;
require ' path-to-vendor/vendor/autoload.php ' ;
$ epay_config = require ' epay_config.php ' ;
$ chargily = new Chargily ([
//credentials
' api_key ' => $ epay_config [ ' key ' ],
' api_secret ' => $ epay_config [ ' secret ' ],
]);
if ( $ chargily -> checkResponse ()) {
$ response = $ chargily -> getResponseDetails ();
//@ToDo: Validate order status by $response['invoice']['invoice_number']. If it is not already approved, approve it.
//something else
/*
$response like the follwing array
$response = array(
"invoice" => array(
"id" => 5566321,
"client" => "Client name",
"invoice_number" => "123456789",
"due_date" => "2022-01-01 00:00:00",
"status" => "paid",
"amount" => 75,
"fee" => 25,
"discount" => 0,
"comment" => "Payment description",
"tos" => 1,
"mode" => "EDAHABIA",
"invoice_token" => "randoom_token_here",
"due_amount" => 10000,
"created_at" => "2022-01-01 06:10:38",
"updated_at" => "2022-01-01 06:13:00",
"back_url" => "https://www.mydomain.com/success",
"new" => 1,
);
)
*/
exit ( ' OK ' );
}| 钥匙 | 描述 | 重定向URL | 过程URL |
|---|---|---|---|
| api_key | 必须是组织给出的字符串 | 必需的 | 必需的 |
| api_secret | 必须是组织给出的字符串 | 必需的 | 必需的 |
| URL | 必须是数组 | 必需的 | 不需要 |
| URL [Back_url] | 必须是字符串和有效的URL | 必需的 | 不需要 |
| URL [process_url] | 必须是字符串和有效的URL | 必需的 | 不需要 |
| 模式 | 必须在cib中 | 必需的 | 不需要 |
| 付款[号码] | 必须是字符串或int | 必需的 | 不需要 |
| 付款[client_name] | 必须是字符串 | 必需的 | 不需要 |
| 付款[Client_email] | 必须是字符串和有效的电子邮件,这是客户在确认后接收付款收据的地方 | 必需的 | 不需要 |
| 付款[金额] | 必须是数字和希瑟或等于75 | 必需的 | 不需要 |
| 付款[折扣] | 必须是数字,在0到99.99之间(折扣百分比) | 必需的 | 不需要 |
| 付款[描述] | 必须是字符串 | 必需的 | 不需要 |
| 选项 | 必须是数组 | 必需的 | 不需要 |
| 选项[标题] | 必须是数组 | 必需的 | 不需要 |
| 选项[超时] | 必须是数字 | 必需的 | 不需要 |