speakman / laravel-paymill

该包已被弃用且不再维护。作者建议使用 threesquared/laravel-paymill 包。

Laravel 对 Paymill API 的封装

1.3.2 2016-09-30 16:20 UTC

This package is auto-updated.

Last update: 2022-02-01 12:43:25 UTC


README

Build Status Latest Stable Version Packagist Packagist

Laravel Paymill 是 Laravel 5 专用的 Paymill PHP 库封装。

请使用 1.0.0 版本用于 Laravel 4

安装

只需将以下行添加到您的 composer.json 文件中,然后运行 install/update

"threesquared/laravel-paymill": "~1.3"

配置

发布包配置文件以配置您的 API 密钥

php artisan vendor:publish

您还需要将服务提供者和外观别名添加到 config/app.php

'providers' => array(
  Threesquared\LaravelPaymill\LaravelPaymillServiceProvider::class
)

'aliases' => array(
  'Paymill'   => Threesquared\LaravelPaymill\Facades\Paymill::class
),

默认情况下,包将使用您的测试密钥。要使用实时 Paymill 密钥,需要设置 PAYMILL_ENV 环境变量。

PAYMILL_ENV=live

用法

有关所有可用实体、操作和方法的完整文档,请参阅 Paymill API

首先,实例化您要与之交互的 Paymill 实体。

$transaction = Paymill::Transaction();

可用实体包括

然后,使用设置方法添加请求所需的任何其他信息。

$transaction->setAmount(4200)
    ->setCurrency('EUR')
    ->setPayment('pay_2f82a672574647cd911d')
    ->setDescription('Test Transaction');

最后,选择您要执行的操作。

$transaction->create();

可用操作包括

  • create()
  • details()
  • update()
  • all()
  • delete()

创建交易的一个示例

try {

    Paymill::Transaction()
        ->setAmount(4200)
        ->setCurrency('EUR')
        ->setPayment('pay_2f82a672574647cd911d')
        ->setDescription('Test Transaction')
        ->create();

} catch(PaymillException $e) {

    $e->getResponseCode();
    $e->getStatusCode();
    $e->getErrorMessage();

}

您可以通过传递参数来设置实体的 ID。

Paymill::Client('client_8127a65bf3c84676c918')->details();

支付创建也可以接受令牌作为参数。

Paymill::Payment()->create('098f6bcd4621d373cade4e832627b4f6');

您还可以在所有 blade 视图中使用 $paymill_public_key 变量。

<script type="text/javascript">
  var PAYMILL_PUBLIC_KEY = '{{ $paymill_public_key }}';
</script>