getsafepay/safepay-php

Safepay Checkout的官方PHP SDK

v1.0.0 2022-08-18 09:26 UTC

This package is auto-updated.

Last update: 2024-09-13 14:52:43 UTC


README

Safepay API提供的官方PHP SDK。

安装

composer require getsafepay/safepay-php

用法

通过传递配置来导入并创建一个Safepay客户端;

use Safepay\Safepay;

$config = [
	"environment" =>'sandbox',
	"apiKey" => 'sec_e9273e07a7ac',
	"v1Secret" =>  'a73e5dad7cd8b1e7fea2f6d93f4c8',
	"webhookSecret" =>  '14509fdd8591a60427e'
];

$Safepay = new Safepay($config);

现在您可以创建支付和结账链接。

支付


$response = $Safepay->payments->getToken(['amount'=>1000,'currency'=>'PKR']);

//$response['token'];
// Pass `token` to create checkout link

结账

创建结账链接。

对于移动端,在负载中将source设置为mobile,而不是custom。您也不需要传递success_urlcancel_url

$link = $Safepay->checkout->create([
	"token" => $response['token'],
	"order_id" => 234,
	"source"=>'custom',
	"webhooks"=>'true',
	"success_url" =>"url /success.php",
	"cancel_url" => "url  /cancel.php"
]);

//redirect user to url
if( $link['result'] == 'success' ) {
	header('Location:'.$link['redirect']);
}

验证

在成功页面上的签名验证。


$tracker = $_POST['tracker'];

$signature = $_POST['sig'];

if( $Safepay->verify->signature($tracker,$signature)  === true) {

	//Signature is valid
}


Webhook

Webhook POST请求的签名验证

$X_SFPY_SIGNATURE = @$_SERVER['HTTP_X_SFPY_SIGNATURE'];


$data = file_get_contents('php://input');

if( $Safepay->verify->webhook($data,$X_SFPY_SIGNATURE)  === true) {

	//Web Hook request is valid
}