hypertech/paysuite-php-sdk
Composer 安装命令:
composer require hypertech/paysuite-php-sdk
包简介
Paysuite client API SDK
README 文档
README
The paysuite-php-sdk library allows you to process payments quickly and easily using payment methods available in Mozambique, such as Mpesa, eMola, PayPal, and bank transfers.
Installation
-
Create an account at Paysuite.tech and obtain your access token from the dashboard
-
Install the library using Composer:
composer require hypertech/paysuite-php-sdk
Basic Usage
First, import and initialize the client with your token:
use Hypertech\Paysuite\Client; use Hypertech\Paysuite\Exception\ValidationException; use Hypertech\Paysuite\Exception\PaysuiteException; $token = "your-access-token"; $client = new Client($token);
Create a Payment
try { $response = $client->createPayment([ 'amount' => '100.50', 'reference' => 'INV123', 'description' => 'Invoice payment', 'return_url' => 'https://yoursite.com/return', 'callback_url' => 'https://yoursite.com/callback' ]); if ($response->isSuccessfully()) { // Get the checkout URL to redirect the customer $checkoutUrl = $response->getCheckoutUrl(); // Get the payment ID for later reference $paymentId = $response->getId(); // Redirect customer to payment page header("Location: " . $checkoutUrl); exit; } } catch (ValidationException $e) { // Handle validation errors echo "Validation error: " . $e->getMessage(); } catch (PaysuiteException $e) { // Handle API errors echo "API error: " . $e->getMessage(); }
Check Payment Status
try { $response = $client->getPayment($paymentId); if ($response->isSuccessfully()) { $status = $response->getData()['status']; // Check if transaction data is available if (isset($response->getData()['transaction'])) { $transaction = $response->getData()['transaction']; $transactionId = $transaction['id']; $paidAt = $transaction['paid_at']; } } } catch (ValidationException $e) { echo "Validation error: " . $e->getMessage(); } catch (PaysuiteException $e) { echo "API error: " . $e->getMessage(); }
Validation Rules
The SDK implements comprehensive validation for all API requests:
-
Payment Request Validation:
amount: Must be a positive numberreference: Required stringdescription: Optional stringreturn_url: Must be a valid URLcallback_url: Must be a valid URL
-
UUID Validation:
- Payment IDs must follow the standard UUID format (8-4-4-4-12 hexadecimal characters)
- Example:
550e8400-e29b-41d4-a716-446655440000
Response Handling
The Response class provides convenient methods to access payment data:
// Check if the request was successful $isSuccess = $response->isSuccessfully(); // Get the full response content $content = $response->getContent(); // Get just the data portion of the response $data = $response->getData(); // Get specific fields with helper methods $reference = $response->getReference(); $amount = $response->getAmount(); $checkoutUrl = $response->getCheckoutUrl(); // Get error message if request failed $errorMessage = $response->getMessage();
Error Handling
The SDK includes two main types of exceptions:
ValidationException: For input validation errors (missing fields, invalid values)PaysuiteException: For API errors (authentication, server errors, etc.)
Error responses include:
- HTTP 400: Bad Request (validation errors)
- HTTP 401: Unauthorized (invalid token)
- HTTP 404: Not Found (invalid payment ID)
- HTTP 500: Server Error
Running Tests
Configure your test token in the phpunit.xml file or via environment variable:
export TOKEN="your-test-token" composer test
Changelog
Please see CHANGELOG for more details.
Contributing
Please see CONTRIBUTING for more details.
Security
If you discover any security-related issues, please email security@hypertech.co.mz instead of using the issue tracker.
License
The MIT License (MIT). Please see License File for more information.
hypertech/paysuite-php-sdk 适用场景与选型建议
hypertech/paysuite-php-sdk 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 489 次下载、GitHub Stars 达 2, 最近一次更新时间为 2023 年 10 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「payment gateway」 「mpesa」 「emola」 「paysuite client」 「sdk payment」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 hypertech/paysuite-php-sdk 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 hypertech/paysuite-php-sdk 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 hypertech/paysuite-php-sdk 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Beyonic PHP Library
repository php library
Payyo Gateway for the Omnipay payment processing library
Client library to send SMS using Comilio SMS Gateway API (https://www.comilio.it)
GovPayNet driver for the Omnipay payment processing library
BlueSnap driver for the Omnipay payment processing library
统计信息
- 总下载量: 489
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 16
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 2023-10-06