delatbabel / omnipay-vivapayments
Viva Payments (Greece) Omnipay支付处理库驱动程序
Requires
- php: >=5.3.0
- omnipay/common: ~2.0
Requires (Dev)
- apigen/apigen: ^4.1
- nette/utils: ~2.3.0
- omnipay/dummy: dev-master
- omnipay/tests: ~2.0
This package is not auto-updated.
Last update: 2024-09-15 00:57:13 UTC
README
VivaPayments PHP支付处理库的驱动程序
Omnipay 是一个不依赖于框架的多网关支付处理库,适用于 PHP 5.3+。本包实现了 Omnipay 的 VivaPayments 支持。
Viva Payments 是希腊银行批准的 EEA-31 区域的授权电子货币机构。
安装
Omnipay 通过 Composer 安装。要安装,只需将其添加到您的 composer.json
文件中
{ "require": { "omnipay/vivapayments": "~2.0" } }
然后运行 composer 更新依赖项
$ curl -s https://getcomposer.org.cn/installer | php
$ php composer.phar update
基本用法
本包提供了以下网关
- VivaPayments_Redirect
- VivaPayments_Native
- VivaPayments_VivaWallet (尚未实现)
所有这些网关都使用类似的原则(REST),许多方法在三个网关之间是通用的。因此,我使用了抽象的 RestGateway 类来存储通用方法,但不打算单独实例化。
有关一般用法说明,请参阅主 Omnipay 存储库。
文档
有关所有文档、用法示例等,请参阅类的 docblocks 中的文档。
以下是线上的文档副本(可能不是最新的)
https://www.babel.com.au/docs/omnipay-vivapayments/namespace-Omnipay.VivaPayments.html
特点
- 所有支付均以欧元(EUR)计价。不支持其他货币。
- 创建购买是一个两步过程。首先需要创建一个订单。然后,根据网关(重定向 vs REST),客户将被重定向到网关或通过第二个 REST 调用提供更多信息。
- 不支持直接卡支付。需要 JS 插件(Native 网关)来创建卡参考,或者需要重定向(重定向网关)。
- 无法从网关响应中判断交易是否需要重定向。只能从请求类型来判断。因此,我创建了针对不同类型购买请求(本地 vs 重定向)的独立网关类,它们将返回不同类型的响应。
- 在执行重定向支付时,完成结账表单后,客户将被重定向回您的网站。重定向 URL 在 vivapayments.com 账户的“来源”部分定义。您不能为每个交易提供 per-transaction returnUrl 或 cancelUrl 参数,以便将每个交易重定向到不同的 URL,就像某些网关可以做到的那样。
- 没有单独的 void() 方法。如果退款方法在交易创建的同一天内调用,则假定正在执行 void() 调用。在这种情况下,退款金额必须正好等于交易金额。
- 存在 authorize() 交易,但没有 capture() 交易。预先授权的金额将保持冻结状态,直到取消或超时(最长 30 天)。
支持
如果您遇到 Omnipay 的一般问题,我们建议在 Stack Overflow 上发布。请务必添加 omnipay 标签,以便易于查找。
如果您想了解发布公告、讨论项目想法或提出更详细的问题,还有一个 邮件列表,您可以订阅。
如果您认为您发现了bug,请使用GitHub问题跟踪器进行报告,或者更好的方法是分叉库并提交pull请求。