asrorbek / cloudpayments-php-client
用于与 CloudPayments API 交互的 PHP 客户端库
v1.1.5
2024-01-23 18:36 UTC
Requires
- php: ^8.1
- ext-curl: *
- php-curl-class/php-curl-class: ^9.18
Requires (Dev)
- phpunit/phpunit: ^10.5
README
这个 PHP 库提供了一个方便的接口,用于与 CloudPayments API 交互。CloudPayments API 在 api.cloudpayments.ru
运行,支持各种支付处理功能,包括发起支付、取消支付、退款、完成使用两阶段方案的支付、创建和取消周期性支付的订阅,以及通过邮件发送发票。
操作原理
参数通过 POST 方法以 "key=value" 格式或 JSON 格式在请求体中传递。API 可接受单个请求中的最多 150,000 个字段,API 响应的超时设置为 5 分钟。需要注意的是,如果将带有小数的数字传递到整数字段,将会进行数学舍入而不会触发错误。
API 对测试终端(5 个)和战斗终端(30 个)的最大并发请求数量进行限制。如果当前正在处理的请求数量超过限制,API 将返回 HTTP 状态码 429(请求过多)的响应,直到处理完成。有关这些限制的审查,请联系您的个人经理。
参数传输格式的选择由客户端决定,并通过 Content-Type
请求头进行控制
- 对于
key=value
参数:Content-Type: application/x-www-form-urlencoded
- 对于 JSON 参数:
Content-Type: application/json
系统以 JSON 格式返回响应,包括至少两个参数:Success
和 Message
{ "Success": false, "Message": "Invalid Amount value" }
请求认证
为了认证请求,使用 HTTP Basic Auth。用户名和密码在 HTTP 请求头中发送。公开 ID 用作用户名,API 密钥用作密码。这两个值都可以在您的个人账户中获得。如果请求中没有发送包含认证数据的头或提供了错误的数据,系统将返回 HTTP 状态码 401 - 未授权。安全存储 API 密钥至关重要。
要求
- php ^8.1
composer require asrorbek/cloudpayments-php-client
示例用法
<?php use CloudPaymentsSDK\Client\CloudPayments; require_once __DIR__ . '/vendor/autoload.php'; // .ru - CloudPayments::CLOUD_PAYMENTS_RU_URL // .uz - CloudPayments::CLOUD_PAYMENTS_UZ_URL $cloudPayments = new CloudPayments(publicKey: 'your_public_key', apiSecret: 'your_api_secret', apiUrl: CloudPayments::CLOUD_PAYMENTS_RU_URL, enableSSL: true); $response = $cloudPayments->sendTestRequest(array( 'Name' => 'Foo Baz', )); print_r($response); // Process the response as needed
- 将 'your_public_key' 和 'your_api_secret' 替换为您从个人账户中获得的实际公开 ID 和 API 密钥。