maher1337/vopay-php-sdk

VoPay PHP SDK

安装: 3

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 1

类型:项目

1.0.3 2022-06-21 18:30 UTC

This package is not auto-updated.

Last update: 2024-09-26 04:17:00 UTC


README

这是一个用于PHP的SDK,用于将自有平台与VoPay支付网关进行接口连接。使用 VoPay API v2

特性

  • 遵循PSR-0约定和编码标准:自动加载友好
  • 轻量快速,得益于API类的懒加载
  • 经过广泛测试
  • 可用于Symfony、Laravel和其他Web应用框架

要求

  • PHP >= 7.4,并安装 cURL 扩展,
  • Guzzle >= 7.0.1 库,
  • (可选) PHPUnit 以运行测试。

安装

使用 Composer 安装最简单,只需运行

composer require matteocacciola/vopay-sdk

或添加到你的 composer.json 文件的 require 部分

"matteocacciola/vopay-sdk"

基本用法

use PaymentProcessor\VoPay\VoPay;

$client = new VoPay('account_id', 'api-key', 'api_secret');

$client 对象为您提供了对整个VoPay API的访问权限。例如:如果您想访问与 VoPay 账户 相关的端点集合,您只需编写

$account = $client->account();

类似地,例如,对于 VoPay EFT 端点

$account = $client->electronicFundsTransfer();

等等。

API 覆盖率

目前,此SDK支持所有API。

测试

该包为每个端点子集提供了mock:您只需传递一个简单的参数给mock,就可以轻松模拟成功或失败的响应。

以下是一个示例。

在一个服务中,例如,您可能有一个以下方法

/**
 * @param string $endpoint
 *
 * @return VoPayContract
 * @throws \Exception
 */
protected function buildVopayEndpointGroup(string $endpoint) : VoPayContract
{
    return $this->apiVopay->{$endpoint}();
}

返回端点子集,如 accountelectronicFundsTransfer 等。简单来说,$endpoint 是由 PaymentProcessor\VoPay\VoPay 客户端提供的名称之一的方法。

然后,这里是在测试中您可以mock的内容

use Mockery\MockInterface;
use PaymentProcessor\VoPay\Endpoints\Mocks\ElectronicFundsTransfer;

// $shouldTestSucceed is a boolean: true if the mocked response from the VoPay API should succeed, false otherwise
$this->partialMock(SomeClass::class, function (MockInterface $mock) use ($shouldTestSucceed) {
    $mock->shouldReceive('buildVopayEndpointGroup')
        ->with('electronicFundsTransfer')
        ->andReturn(new ElectronicFundsTransfer($shouldTestSucceed));
});

文档

贡献

欢迎提交改进核心库、测试和文档的pull requests。

无保修

此包是免费分发,免费提供。它不附带任何明示或暗示的保修。源代码提供供您方便使用。VoPay不对其实际质量或支持承担任何责任。

许可

MIT许可(MIT)

版权所有 (c) 2016 Phillip Shipley

特此授予任何人获得此软件及其相关文档文件(“软件”)副本的权限,免费使用该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向获得软件的人提供副本,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

本软件按“原样”提供,不提供任何形式的质量保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论该责任源于合同行为、侵权或其他,无论与软件本身、使用软件或软件的其他使用有关。