amirsanni/paystack-lib

用于与Paystack API通信的PHP库

dev-master 2019-12-09 18:56 UTC

This package is auto-updated.

Last update: 2024-09-10 06:38:15 UTC


README

用于与Paystack API通信的PHP库

要求

  • PHP >= 5.4

入门

安装

composer require amirsanni/paystack-lib

功能

初始化库

require 'vendor/autoload.php';
use amirsanni\paystacklib\Paystack;

$paystack = new Paystack([
    'secret_key'=>'YOUR_PAYSTACK_SECRET_KEY'
]);

交易

发起交易

$paystack->transaction->make([
    'ref'=>md5('dsef'),
    'amount_in_kobo'=>20000,
    'email'=>'amirsanni@gmail.com',
    'metadata'=>[
        'name'=>"Amir Olalekan",
        'ID'=>"AMS10",
        "Phone"=>"07045567890"
    ],
    'callback_url'=>'https:///paystack-lib/examples/callback.php'
]);

验证交易

$paystack->transaction->verify(TRANSACTION_REFERENCE);

获取单个交易详情

$single = $paystack->transaction->getOne(TRANSACTION_ID);

获取多个交易详情

$paystack->transaction->per_page = 25;//set number of items to return
$paystack->transaction->page_number = 3;//set page number

$multiple = $paystack->transaction->getMany();

基于交易状态(失败、成功、弃用)获取交易

$paystack->transaction->per_page = 20;//set number of items to return
$paystack->transaction->page_number = 1;//set page number

$by_status = $paystack->transaction->whereStatus('success');

获取特定时间段内的交易

$between_dates = $paystack->transaction->betweenDates($from_date, $to_date);

获取特定客户的交易

$cust_trans = $paystack->transaction->whereCustomer(CUSTOMER_ID);

获取交易时间线

$trans_timeline = $paystack->transaction->timeline(TRANSACTION_ID_OR_REFERENCE);

获取账户上所有交易的总数

$all_time = $paystack->transaction->allTime();

获取特定时间段内账户上所有交易的总数

$total_between_dates = $paystack->transaction->totalBetweenDates(FROM_DATE, TO_DATE);

导出交易

$paystack->transaction->export();//file will be downloaded in csv format

向回头客收费

$paystack->transaction->chargeReturningCustomer($auth_code, $amount_in_kobo, $email, $transaction_ref, $metadata_array);

客户

创建客户

$created = $paystack->customer->create('foo@bar.com', 'Foo', 'Bar', '0703xxxxxxx', [
    'company'=>"Foo Bar"
]);

获取单个客户信息

$one = $paystack->customer->getOne(96992);

获取多个客户信息

$many = $paystack->customer->getMany();

查看示例目录了解更多。