obinnaakaolisa/flutterwave-pay

这是一个PHP包,用于通过Flutterwave交易API初始化和验证Flutterwave交易。

v1.0.1 2023-09-12 10:47 UTC

This package is auto-updated.

Last update: 2024-09-12 13:57:43 UTC


README

这是一个PHP包,用于通过Flutterave交易API初始化和验证Flutterwave交易。

需求

该包需要以下资源

  1. PHP ^8.0
  2. Composer
  3. Curl

入门

安装

导航到您的项目目录

    cd folder/my-project

在您的项目文件夹中,运行以下命令

    composer require obinnaakaolisa/flutterwave-pay

设置您的API密钥

    $apiKey = "FLWSECK_TEST-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-X";

实例化一个新的交易对象

在实例化时传入API_KEY。

    $transaction = new FlutterwavePay($apiKey);

定义您的POST请求的负载数据。

    $payload = [
    'tx_ref' => 'FLW_TEST_'.bin2hex(random_bytes(5)),
    'amount' => 2000, //in naira
    'redirect_url' => "https://{$_SERVER['SERVER_NAME']}/verify.php",
    'currency' => 'NGN',
    'customer' => [
        'name' => 'Firstname' .' '.'Lastname',
        'email' => 'customer@email.com',
        'phone_number' => '08031010101',
    ],
    'payment_options' => "card, banktransfer, ussd",
    'customizations' => [
        'title' => 'Some Payment',
    ],
    'meta' => [
        'field_name' => 'field_value',
    ],
    'subaccounts' => []
];

注意

  1. customizations字段是可选的。如果您想自定义支付页面的外观和感觉,请定义它。请参阅文档进行参考。
  2. subaccounts字段是可选的。仅在您想将交易分成不同的结算账户时定义。请参阅文档进行参考。
  3. meta字段是可选的。仅在您想保存有关客户或交易的其他信息时定义。请参阅文档进行参考。

初始化交易

您收到的请求响应是一个json编码的对象,因此您需要对其进行解码,如下所示

$response = json_decode($transaction->initialize($payload));

$request = $transaction->initialize($payload);

$response = json_decode($request);

验证交易

在交易成功或支付页面关闭后,客户将被重定向到您在初始化交易时设置的redirect_url。通常,这是您将验证交易状态的位置。

建议在向客户赋予价值之前验证交易。

定义您的API_KEY

    $apiKey = "FLWSECK_TEST-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-X";

实例化一个新的交易对象,并在实例化时传入API_KEY。

    $transaction = new FlutterwavePay($apiKey);

传入在初始化交易时定义的交易参考。

您也可以从与redirect_url一起返回的GET请求的查询参数中获取它。

$response = json_decode($transaction->verify($_GET['tx_ref']));

贡献

贡献总是受欢迎的!

有关如何开始,请参阅contributing.md

请遵守本项目的行为准则

许可证

MIT