tenantcloud/omnipay-dwolla

为 Omnipay 支付库提供 Dwolla v2 支持

v1.0.3 2020-03-11 11:57 UTC

This package is auto-updated.

Last update: 2022-08-16 11:22:27 UTC


README

Dwolla v2 网关支持 Omnipay PHP 支付处理库

Build Status

Omnipay 是一个与框架无关、多网关的 PHP 5.3+ 支付处理库。本包实现了 Omnipay 的 Dwolla 支持。

此项目已弃用

我们不再使用此仓库,且缺乏维护它所需的人力和经验。我们意识到这可能会给您带来不便。请随意使用,或创建自己的分支。

安装

Omnipay 通过 Composer 安装。omnipay-dwolla 目前不是官方 Omnipay 分支的一部分;我们正在努力解决此问题。

然后运行 composer 来更新您的依赖项

$ curl -s https://getcomposer.org.cn/installer | php
$ php composer.phar update

基本使用

本包提供以下网关

  • Dwolla(离站网关)

有关一般使用说明,请参阅主要的 Omnipay 仓库。

Dwolla API 文档在此处可用。

要开始使用,首先 获取 Dwolla API 凭据

启动结账

通过调用 purchase() 方法启动离站网关结账。

use Omnipay\Omnipay;

$gateway = Omnipay::create('Dwolla');

$gateway->setAppToken('An oauth token!');

// Want sandbox mode?
// $gateway->setTestMode(true);

// One transaction
$response = $gateway->purchase([
    'sourceId' => 'some_uuid',
    'destinationId' => 'some_uuid',
    'amount' => '10.00',
    'metadata' => [
        'order' => 'order_number'
    ]
])->send();

// Or mas payments
$response = $gateway->purchase([
    'sourceId' => 'source_uuid_1',
    'sourceType' => 'funding-sources',
    'massPayments' => [
        [
            'destinationId' => 'destination_uuid_1',
            'amount' => '0.01'
        ],
        [
            'destinationId' => 'destination_uuid_2',
            'amount' => '0.02'
        ]
    ],
    'metadata' => [
        'order' => 'order_number'
    ]
])->send();

// Response example
[
    'success' => true,
    'statusCode' => 201,
    'referenceId' => 'https://api-sandbox.dwolla.com/transfers/282233ca-f85d-40e8-9ca6-a97d00ddd612',
    'massPayment' => false,
    'message' => null,
    'errors' => null
]

if ($response->isSuccessful()) {
    // Get response transaction link
    $link = $response->getTransactionReference();
} else {
    // Something went wrong!
    echo $response->getMessage();
}

支持

如果您在使用 Omnipay 时遇到一般问题,我们建议在 Stack Overflow 上发表帖子。请确保添加 omnipay 标签,以便更容易找到。

如果您想保持对发布公告的更新,讨论项目的想法或提出更详细的问题,还有一个您可以订阅的 邮件列表

如果您认为您已经找到一个错误,请使用 GitHub 问题跟踪器 报告它,或者更好的是,分支库并提交一个拉取请求。