viciremittance / vici-php-sdk
一个使用 Guzzle 库的简单易用的 Vici PHP API。
v1.1.0
2021-11-03 03:18 UTC
Requires
- php: ^5.6|^7.4
- guzzlehttp/guzzle: ^6.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
This package is auto-updated.
Last update: 2024-09-29 05:57:01 UTC
README
PHP 库,用于通过 GuzzleHttp 调用 Vici Remittance API。
依赖
开发
快速入门指南
- 使用 Composer 安装包:
composer require viciremittance/vici-php-sdk
- 在您的应用程序类中使用所需的服务 - 例如,您正在使用支付服务(假设您正在使用 PSR-4)
use ViciApi\Services\Disbursement;
- 创建类的新的实例(
Disbursement
)
$disbursement = new Disbursement();
- 设置 API 基础 URL
$disbursement->setBaseUrl($apiBaseUrl);
- 设置 API 凭证
$disbursement->setCredentials($clientId, $clientSecret, $signingKey);
- 刷新/设置
accessToken
$accessToken = $disbursement->refreshAccessToken()['access_token']; $disbursement->setAccessToken($accessToken);
- 使用类的一个方法来查询 API - 此示例将请求银行列表
$banks = $disbursement->bankList();
提示:所有 API 响应都已格式化为关联数组。
// extracting bank id $bankId = $banks['banks'][0]['bank_id'];
用法
ViciApi\ViciApi
ViciApi
类提供配置 API 调用和签名生成的函数。
// initialize ViciApi class $vici = new ViciApi(); // set API base url $vici->setBaseUrl($apiBaseUrl); // set API credentials $vici->setCredentials($clientId, $clientSecret, $signingKey); // request API access token, this also calls setAccessToken // you should store the access token in your system and refresh when it expires $accessToken = $vici->refreshAccessToken()['access_token']; // set access token that will be used to create API calls $vici->setAccessToken($accessToken); // request Disbursements Bank List API using createRequest $vici->createRequest('GET', '/dg/v1/banks'); // comparing and proccessing signature from your callbacks $isValid = $vici->isValidSignature($signatureToCompare, $method, $path, $timestamp, $body); if ($isValid) { // ... code when signature is valid } else { // ... code when signature is not valid }
ViciApi\Services\Disbursement
Disbursement
类扩展 ViciApi
类,简化了对 Disbursement API 服务的客户端请求。您将能够使用一些 ViciApi
方法,如 requestToken
以简化您的开发。
$disbursement = new Disbursement(); $disbursement->setBaseUrl($apiBaseUrl); $disbursement->setCredentials($clientId, $clientSecret, $signingKey); // request /dg/v1/bank-account-inquiry API $disbursement->bankAccountInquiry($accountNo, $bankId, $customerName, $withValidation); // request /dg/v1/banks API $disbursement->bankList(); // request /dg/v1/disbursements API $disbursement->executeDisbursement($accountNo, $amount, $bankId, $customerName, $referenceId, $description); // request /dg/v1/disbursements/reference-id/{reference_id} API $disbursement->checkDisbursementByReferenceId($referenceId); // request /dg/v1/disbursements/{disbursement_id} API $disbursement->checkDisbursementByDisbursementId($disbursementId); // request /cash/me/balance API $disbursement->checkBalance();
ViciApi\Services\PaymentGateway
与 Disbursement
类相同,PaymentGateway
类也扩展了 ViciApi
类。
$paymentGateway = new PaymentGateway(); $paymentGateway->setCredentials($clientId, $clientSecret, $signingKey); // request /pg/v1/payment/reference-id/{reference_id} API $paymentGateway->checkPaymentByReferenceId($referenceId); // request /pg/v1/payment/{payment_id} API $paymentGateway->checkPaymentByPaymentId($paymentId);
示例
查看 examples
。