alexminza/victoriabank-sdk
Composer 安装命令:
composer require alexminza/victoriabank-sdk
包简介
PHP SDK for Victoriabank API
README 文档
README
- Victoriabank e-Commerce Gateway Instructions https://ecomt.victoriabank.md/cardop/images/instruction-ecom-vb.zip
- GitHub project https://github.com/alexminza/victoriabank-sdk-php
- Composer package https://packagist.org/packages/alexminza/victoriabank-sdk
Installation
To easily install or upgrade to the latest release, use composer:
composer require alexminza/victoriabank-sdk
To enable logging add the monolog package:
composer require monolog/monolog
Getting started
Import SDK:
require_once __DIR__ . '/vendor/autoload.php'; use Victoriabank\Victoriabank\VictoriabankClient;
Add project configuration:
$DEBUG = getenv('DEBUG'); $VB_BASE_URI = getenv('VB_BASE_URI') ?: VictoriabankClient::TEST_BASE_URL; $VB_MERCHANT_ID = getenv('VB_MERCHANT_ID'); $VB_TERMINAL_ID = getenv('VB_TERMINAL_ID'); $VB_MERCHANT_PRIVATE_KEY = getenv('VB_MERCHANT_PRIVATE_KEY') ?: 'file://key.pem'; $VB_MERCHANT_PRIVATE_KEY_PASSPHRASE = getenv('VB_MERCHANT_PRIVATE_KEY_PASSPHRASE'); $VB_MERCHANT_PUBLIC_KEY = getenv('VB_MERCHANT_PUBLIC_KEY') ?: 'file://pubkey.pem'; $VB_BANK_PUBLIC_KEY = getenv('VB_BANK_PUBLIC_KEY') ?: 'file://victoria_pub.pem';
Initialize client:
$options = [ 'base_uri' => $VB_BASE_URI, 'timeout' => 30 ]; if ($DEBUG) { $logName = 'victoriabank_guzzle'; $logFileName = "$logName.log"; $log = new \Monolog\Logger($logName); $log->pushHandler(new \Monolog\Handler\StreamHandler($logFileName, \Monolog\Logger::DEBUG)); $stack = \GuzzleHttp\HandlerStack::create(); $stack->push(\GuzzleHttp\Middleware::log($log, new \GuzzleHttp\MessageFormatter(\GuzzleHttp\MessageFormatter::DEBUG))); $options['handler'] = $stack; } $guzzleClient = new \GuzzleHttp\Client($options); $vbClient = new VictoriabankClient($guzzleClient); $vbClient ->setMerchantId($VB_MERCHANT_ID) ->setTerminalId($VB_TERMINAL_ID) ->setMerchantName('TEST COMPANY SRL') ->setMerchantUrl('https://www.example.com') ->setMerchantAddress('Chisinau, Moldova') ->setTimezone('Europe/Chisinau') ->setMerchantPrivateKey($VB_MERCHANT_PRIVATE_KEY, $VB_MERCHANT_PRIVATE_KEY_PASSPHRASE) ->setBankPublicKey($VB_BANK_PUBLIC_KEY) ->setSignatureAlgo(VictoriabankClient::P_SIGN_HASH_ALGO_SHA256);
SDK usage examples
Generate payment authorization request form
$authorizeRequest = $vbClient->generateOrderAuthorizeRequest( '123', 123.45, 'MDL', 'Order #123', 'example@example.com', 'https://www.example.com', 'ro' ); $html = $vbClient->generateHtmlForm($VB_BASE_URI, $authorizeRequest); echo $html;
Validate bank notification callback signature
try { $isValid = $vbClient->validateResponse($_POST); if ($isValid) { // Payment authorized/completed successfully // Process the order (e.g. update status) $rrn = $_POST['RRN']; $int_ref = $_POST['INT_REF']; } else { // Handle invalid signature or response data echo 'Error: Invalid response'; } } catch (\Exception $e) { // Handle other errors (e.g. log error, invalid data, duplicate transaction, declined) echo 'Error: ' . $e->getMessage(); }
Complete authorized payment
$completeResponse = $vbClient->orderComplete( '123', 123.45, 'MDL', $rrn, $int_ref );
Refund payment
$reverseResponse = $vbClient->orderReverse( '123', 123.45, 'MDL', $rrn, $int_ref );
Check order payment status
$checkResponse = $vbClient->orderCheck('123', VictoriabankClient::TRTYPE_AUTHORIZATION);
alexminza/victoriabank-sdk 适用场景与选型建议
alexminza/victoriabank-sdk 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 18 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 01 月 14 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「api」 「payments」 「sdk」 「visa」 「mastercard」 「victoriabank」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 alexminza/victoriabank-sdk 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 alexminza/victoriabank-sdk 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 alexminza/victoriabank-sdk 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Dealing with payments through the Egyptian payment gateway PayMob
Librería para la gestión sencilla de pagos mediante TPV Redsys y Paypal
A PSR-7 compatible library for making CRUD API endpoints
Scanpay module for Magento 2
Official Safaricom Daraja M-Pesa integration for Laravel built on ysg/payment-core.
Официальный PHP SDK для платёжного шлюза Oblodai: приём платежей, выплаты, статические кошельки, вебхуки.
统计信息
- 总下载量: 18
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 34
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: GPL-3.0-or-later
- 更新时间: 2026-01-14