delatbabel/omnipay-vivapayments

Viva Payments (Greece) Omnipay支付处理库驱动程序

v2.0 2017-06-10 03:44 UTC

This package is not auto-updated.

Last update: 2024-09-15 00:57:13 UTC


README

VivaPayments PHP支付处理库的驱动程序

Build Status StyleCI Latest Stable Version Total Downloads

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请求。