velopaymentsapi / velo-php
此库提供PHP客户端,简化与Velo支付API的交互。
Requires
- php: ^7.4 || ^8.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- guzzlehttp/guzzle: ^7.3
- guzzlehttp/psr7: ^1.7 || ^2.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.5
- phpunit/phpunit: ^8.0 || ^9.0
- dev-master
- v2.37.x-dev
- 2.37.151-RC1
- 2.37.150-RC1
- v2.35.x-dev
- 2.35.58
- 2.35.58-RC1
- v2.30.x-dev
- 2.30.53-RC1
- v2.29.x-dev
- 2.29.127-RC1
- 2.26.124-RC1
- 2.23.78-RC1
- 2.20.118
- 2.20.29-RC1
- 2.19.116
- 2.19.40-RC1
- 2.18.113
- 2.18.31-RC1
- 2.17.8-RC1
- 2.16.18
- 2.14.90-RC1
- 2.11.73
- 2.11.70
- 2.11.69
- 2.11.68
- v2.11.67
- dev-dependabot/composer/guzzlehttp/psr7-2.4.5
- dev-dependabot/composer/guzzlehttp/guzzle-7.4.5
This package is not auto-updated.
Last update: 2024-09-26 00:44:58 UTC
README
此库提供PHP客户端,简化与Velo支付API的交互。有关API的完整详情,请访问我们的Velo支付API文档。注意:某些Velo API调用需要通过访问令牌进行授权,请参阅完整文档了解如何配置。在本文档和Velo平台中,以下术语被使用
- 付款方。一个实体(通常是公司),希望通过支付方式向一个或多个收款人支付资金。
- 收款人。由付款方支付资金的接收方。
- 支付。从付款方到收款方的一次资金转移。
- 支付批次。一组支付,通常由付款方使用,用于逻辑上分组支付(例如,按业务日)。技术上,支付批次中的支付之间不需要有关系 - 一个支付批次可以包含多个收款人的支付,或者对一个收款人进行多次支付。
- 沙箱。Velo支付提供的一种集成环境,提供与生产环境相似的API体验,但所有资金和支付事件都是模拟的,以及许多其他服务,如OFAC制裁名单检查。
概述
Velo支付API允许付款方执行多项操作。以下是一个按执行顺序的自然顺序列出的主要功能列表
- 通过Velo平台进行身份验证
- 维护收款人集合
- 查询平台内付款方的当前资金余额并执行额外融资
- 向收款人发放支付
- 查询平台以获取这些支付的历史记录
本文档描述了启动Velo支付平台所需的主要概念和API。它不是API的详尽参考。有关详细信息,请参阅单独的Velo支付API参考。
API注意事项
Velo支付API是基于REST的,使用JSON格式进行请求和响应。
大多数调用使用OAuth 2安全性进行加密,并需要有效的认证访问令牌才能成功操作。请参阅身份验证部分以获取详细信息。
以下示例中需要动态值时,使用{token}格式,表示调用者需要提供相应令牌的适当值(不包括{}字符)。
以下示例中给出curl示例时,使用–d @filename.json方法,表示请求正文应放置在当前目录中名为filename.json的文件中。本文档中的每个curl示例都应被视为命令行上的单行,无论它们在打印中如何显示。
通过Velo平台进行身份验证
一旦Velo后台工作人员在Velo平台沙箱中将您的组织添加为付款方,他们将为您创建付款方ID、API密钥和API密钥,并以安全的方式与您分享这些信息。
您需要使用这些值通过Velo平台进行身份验证,以便获取对API的访问权限。以下步骤将进行解释
将API密钥(例如,44a9537d-d55d-4b47-8082-14061c2bcdd8)和API密钥(例如,c396b26b-137a-44fd-87f5-34631f8fd529)组合成字符串,并用冒号分隔。例如,44a9537d-d55d-4b47-8082-14061c2bcdd8:c396b26b-137a-44fd-87f5-34631f8fd529
使用 base64 对此字符串进行编码。例如:NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ==
创建一个 HTTP Authorization 标头,值设置为例如 Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ==
使用上述创建的 HTTP 标头执行 Velo 身份验证 REST 调用,例如通过 curl
curl -X POST \\
-H \"Content-Type: application/json\" \\
-H \"Authorization: Basic NDRhOTUzN2QtZDU1ZC00YjQ3LTgwODItMTQwNjFjMmJjZGQ4OmMzOTZiMjZiLTEzN2EtNDRmZC04N2Y1LTM0NjMxZjhmZDUyOQ==\" \\
'https://api.sandbox.velopayments.com/v1/authenticate?grant_type=client_credentials'
如果成功,此调用将导致一个 200 HTTP 状态代码和一个响应体,例如
{
\"access_token\":\"19f6bafd-93fd-4747-b229-00507bbc991f\",
\"token_type\":\"bearer\",
\"expires_in\":1799,
\"scope\":\"...\"
}
身份验证后的 API 访问
身份验证成功后,响应中 access_token 字段的值(如上图中绿色所示)应随后在所有后续 API 调用中显示,以允许 Velo 平台验证调用者是否已认证。
这通过将 HTTP Authorization 标头设置为例如 Bearer 19f6bafd-93fd-4747-b229-00507bbc991f 的值来实现,如下面的 curl 示例所示
-H \"Authorization: Bearer 19f6bafd-93fd-4747-b229-00507bbc991f \"
如果您发出其他需要授权但缺少或无效的 Authorization 标头的 Velo API 调用,则将收到一个 401 HTTP 状态响应。
安装 & 使用
要求
PHP 7.3 及更高版本。也应该与 PHP 8.0 兼容,但尚未进行测试。
Composer
要通过 Composer 安装绑定,请将以下内容添加到 composer.json
{ "repositories": [ { "type": "vcs", "url": "https://github.com/velopaymentsapi/velo-php.git" } ], "require": { "velopaymentsapi/velo-php": "*@dev" } }
然后运行 composer install
手动安装
下载文件并包含 autoload.php
<?php require_once('/path/to/VeloPayments/vendor/autoload.php');
入门
请按照 安装过程 操作,然后运行以下命令
<?php require_once(__DIR__ . '/vendor/autoload.php'); // Configure OAuth2 access token for authorization: OAuth2 $config = VeloPayments\Client\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN'); $apiInstance = new VeloPayments\Client\Api\CountriesApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $result = $apiInstance->listPaymentChannelRulesV1(); print_r($result); } catch (Exception $e) { echo 'Exception when calling CountriesApi->listPaymentChannelRulesV1: ', $e->getMessage(), PHP_EOL; }
API 端点
所有 URI 都相对于 https://api.sandbox.velopayments.com
模型
- AcceptedPaymentV3
- AccessTokenResponse
- AccessTokenValidationRequest
- AuthResponse
- AutoTopUpConfig
- AutoTopUpConfig2
- Category
- Challenge
- Challenge2
- Company
- Company2
- CreateFundingAccountRequestV2
- CreateIndividual
- CreateIndividual2
- CreateIndividualName
- CreatePayee
- CreatePayee2
- CreatePayeeAddress
- CreatePayeeAddress2
- CreatePayeesCSVResponse
- CreatePayeesCSVResponse2
- CreatePayeesCSVResponseRejectedCsvRows
- CreatePayeesRequest
- CreatePayeesRequest2
- CreatePaymentChannel
- CreatePaymentChannel2
- CreatePayorLinkRequest
- CreatePayoutRequestV3
- CreateWebhookRequest
- DebitEvent
- DebitEventAllOf
- DebitStatusChanged
- DebitStatusChangedAllOf
- Error
- ErrorData
- ErrorResponse
- FailedPayee
- FailedPayee2
- FailedSubmission
- FailedSubmission2
- FundingAccountResponse
- FundingAccountResponse2
- FundingAccountType
- FundingAudit
- FundingEvent
- FundingEventType
- FundingPayorStatusAuditResponse
- FundingRequestV1
- FundingRequestV2
- FundingRequestV3
- FxSummary
- FxSummaryV3
- GetFundingsResponse
- GetFundingsResponseLinks
- GetPayeeListResponse
- GetPayeeListResponse2
- GetPayeeListResponseCompany
- GetPayeeListResponseCompany2
- GetPayeeListResponseIndividual
- GetPayeeListResponseIndividual2
- GetPaymentsForPayoutResponseV3
- GetPaymentsForPayoutResponseV3Page
- GetPaymentsForPayoutResponseV3Summary
- GetPaymentsForPayoutResponseV4
- GetPaymentsForPayoutResponseV4Summary
- GetPayoutStatistics
- GetPayoutsResponse
- GetPayoutsResponseV3
- GetPayoutsResponseV3Links
- GetPayoutsResponseV3Page
- Individual
- Individual2
- IndividualName
- InlineResponse400
- InlineResponse401
- InlineResponse403
- InlineResponse404
- InlineResponse409
- InlineResponse412
- InstructPayoutRequest
- InvitationStatus
- InvitationStatus2
- InvitePayeeRequest
- InvitePayeeRequest2
- InviteUserRequest
- KycState
- LinkForResponse
- ListFundingAccountsResponse
- ListFundingAccountsResponse2
- ListPaymentsResponseV3
- ListPaymentsResponseV3Page
- ListPaymentsResponseV4
- 列表源账户响应
- 列表源账户响应链接
- 列表源账户响应页面
- 列表源账户响应V2
- 列表源账户响应V2链接
- 列表源账户响应V3
- 列表源账户响应V3链接
- 本地化详情
- MFA详情
- MFA类型
- 名称
- 名称2
- 通知
- 通知
- 通知2
- OFAC状态
- 已上线状态
- 已上线状态2
- 上线状态变更
- 响应页面
- 页面资源资金支付者状态审计响应资金支付者状态审计响应
- 分页收款人邀请状态响应
- 分页收款人邀请状态响应2
- 分页收款人邀请状态响应页面
- 分页收款人响应
- 分页收款人响应2
- 分页收款人响应链接
- 分页收款人响应页面
- 分页收款人响应摘要
- 分页支付响应V3
- 分页用户响应
- 分页用户响应链接
- 分页用户响应页面
- 密码请求
- 可支付问题
- 可支付问题2
- 可支付状态变更
- 收款人地址
- 收款人地址2
- 收款人增量
- 收款人增量2
- 收款人增量响应
- 收款人增量响应2
- 收款人增量响应2链接
- 收款人增量响应链接
- 收款人增量响应页面
- 收款人详情响应
- 收款人详情响应2
- 收款人详情变更
- 收款人事件
- 收款人事件所有
- 收款人事件所有原因
- 收款人邀请状态响应
- 收款人邀请状态响应2
- 收款人支付者引用
- 收款人支付者引用V3
- 收款人类型
- 收款人类型2
- 收款人用户自我更新请求
- 支付审计货币
- 支付审计货币V3
- 支付渠道国家
- 支付渠道规则
- 支付渠道规则响应
- 支付增量
- 支付增量响应
- 支付增量响应V1
- 支付增量V1
- 支付事件
- 支付事件所有
- 支付事件响应
- 支付事件响应V3
- 支付指令V3
- 支付轨道
- 支付拒绝或退回
- 支付拒绝或退回所有
- 支付响应V3
- 支付响应V4
- 支付响应V4支付
- 支付状态变更
- 支付状态变更所有
- 支付V3
- 支付者地址
- 支付者地址V2
- 支付者AML交易
- 支付者AML交易V3
- 支付者品牌响应
- 支付者创建API密钥请求
- 支付者创建API密钥响应
- 支付者创建应用程序请求
- 支付者电子邮件退出请求
- 支付者链接响应
- 支付者链接响应链接
- 支付者链接响应支付者
- 支付者V1
- 支付者V2
- 支付公司V3
- 支付个人V3
- 支付名称V3
- 支付收款人V3
- 支付支付者
- 支付支付者ID
- 支付本金
- 支付计划
- 支付计划2
- 支付状态
- 支付状态V3
- 支付摘要审计
- 支付摘要审计V3
- 支付摘要响应V3
- 支付类型
- ping
- ping响应
- 查询批次响应
- 查询批次响应2
- 报价FX摘要V3
- 报价响应V3
- 区域V2
- 注册短信请求
- 拒绝支付V3
- 重发令牌请求
- 重置密码请求
- 角色
- 角色更新请求
- 安排支付请求
- 安排状态
- 安排状态2
- 自我MFA类型注销请求
- 自我更新密码请求
- 设置通知请求
- 源账户响应
- 源账户响应V2
- 源账户响应V3
- 源账户摘要
- 源账户摘要V3
- 源账户类型
- 源账户V3
- 源事件
- 支持国家响应
- 支持国家响应V2
- 支持国家
- 支持国家V2
- 支持货币响应V2
- 支持货币V2
- 转账请求
- 转账请求2
- 传输类型
- 传输类型
- 传输类型2
- 注销MFA请求
- 更新收款人详情请求
- 更新收款人详情请求2
- 更新远程ID请求
- 更新远程ID请求2
- 更新Webhook请求
- 用户详情更新请求
- 用户信息
- 用户响应
- 用户状态
- 用户类型
- 用户类型2
- 验证密码响应
- 观察名单状态
- 观察名单状态2
- Webhook响应
- Webhooks响应
- 提款支付请求
授权
OAuth2
- 类型:
OAuth
- 流程:
application
- 授权 URL: ``
- 作用域:
- ** **: 不需要作用域
基本认证
- 类型: HTTP 基本认证
OAuthVeloBackOffice
- 类型:
OAuth
- 流程:
application
- 授权 URL: ``
- 作用域:
- ** **: 不需要作用域
测试
要运行测试,请使用
composer install vendor/bin/phpunit
作者
关于此包
此 PHP 包是由 OpenAPI Generator 项目自动生成的
- API 版本:
2.29.127
- 包版本:
2.29.127
- 包版本:
- 构建包:
org.openapitools.codegen.languages.PhpClientCodegen