paga/paga-collect

本文档列出了Paga提供的不同RESTful Web服务,允许任何(付款请求发起者)向第三方发起付款请求,并在付款请求得到满足时自动接收通知。

v1.1.2 2021-10-03 17:27 UTC

This package is auto-updated.

Last update: 2024-09-12 23:48:32 UTC


README

库公开的业务服务

  • paymentRequest
  • getBanks
  • paymentStatus
  • paymentHistory
  • registerPersistentPaymentAccount
  • updatePersistentPaymentAccount
  • deletePersistentPaymentAccount
  • paymentRequestFund
  • getPersistentPaymentAccount

有关上述服务的更多信息,请访问Paga DEV网站

使用方法

composer require paga/paga-collect

require_once __DIR__ .'/vendor/autoload.php'


$collectClient = PagaCollectClient::builder()
                ->setApiKey("<apiKey>")
                ->setClientId("<publicId>")
                ->setPassword("<password>")
                ->setTest(true)
                ->build();

如上所示,您设置Paga提供的publicId、apiKey和密码,如果将setIsTest()的值设置为true,则库将使用测试URL作为所有调用的基础。否则将设置为false将使用您提供的真实URL值作为基础。

Paga Collect服务函数

请求付款

在付款人和收款人之间注册新的付款请求。一旦付款请求成功发起,付款人将通过平台(这可以抑制)接收通知,并可以继续授权/执行付款。一旦付款得到满足,将向提供的回调URL发送通知。

要使用此功能,请调用PagaCollectClient中的paymentRequest,它将返回一个JSONObject。

$data = ["referenceNumber" => "908w1111000001129",
    "amount" => 200,
    "callBackUrl" => "https://:5000/core/webhook/paga",
    "currency" => "NGN",
    "expiryDateTimeUTC" => "2021-05-20T19:35:47",
    "isAllowPartialPayments" => false,
    "isSuppressMessages" => false,
    "payee" => ["bankAccountNumber"=>"XXXXXXXXX",
              "bankId" => "XXXXX-XXX-XXX-XXX-XXXXXX",
              "name" => "John Doe",
              "phoneNumber" => "XXXXXXXXXXX",
            "accountNumber" => "XXXXXXXXXXX"],
    "payer" => ["email" => "johndoe@gmail.com", 
                "name"=> "Foo Bar", 
                "bankId"=> "XXXXX-XXX-XXX-XXX-XXXXXX",
      ],
    "payerCollectionFeeShare"=> 1.0,
    "recipientCollectionFeeShare"=> 0.0,
    "paymentMethods"=> ["BANK_TRANSFER", "FUNDING_USSD"]
    ];

$paymentRequest = $collectClient->paymentRequest($data);$response = 

获取银行

检索受支持的银行及其在银行上的互补唯一ID的列表。这是在付款请求模型中填充付款人(可选)和收款人对象所必需的。要使用此功能,请调用PagaCollectClient中的getBanks,它将返回一个JSONObject。

$data = ['referenceNumber' => "234455555"];
$getBanks = $collectAPI ->getBanks($data);

查询付款请求状态

查询已提交付款请求的当前状态。要使用此功能,请调用PagaCollectClient中的paymentStatus,它将返回一个JSONObject。

$data = ['referenceNumber' => "234455555"];
$paymentStatus = $collectAPI ->paymentStatus($data);

付款请求历史

获取指定时间段内的付款请求,时间段应不超过1个月。要使用此功能,请调用PagaCollectClient中的paymentHistory,它将返回一个JSONObject。

$data = [
    "referenceNumber" => "8235346400000099",
    "startDateTimeUTC" => "2021-04-21T19:15:22",
    "endDateTimeUTC" => "2021-05-18T19:15:22"
];
$paymentStatus = $collectAPI ->paymentHistory($data);

注册持久付款账户

这是一个业务操作,用于创建可以分配给其客户的持久付款账户号码,用于收款。要使用此功能,请调用PagaCollectClient中的registerPersistentPaymentAccount,它将返回一个JSONObject。

$data= [
    'referenceNumber'=>"47575685389595",
    'phoneNumber'=>"07048576234",
    'firstName'=>"Ian", 
    'lastName'=>"Lankansa",
    'accountName'=>"Ian Lankansa", 
    'financialIdentificationNumber'=>"12345484326",
    'accountReference'=>"123407891334",
    'callbackUrl' => "https://:9091/test-callback"
];
$registerPersistentPaymentAccount = $collectAPI ->registerPersistentPaymentAccount($data);

更新持久付款账户

此端点允许更改除<强>账户号码(NUBAN)和<强>账户参考属性之外的所有账户属性,这些属性不能更改。要使用此功能,请调用PagaCollectClient中的updatePersistentPaymentAccount,它将返回一个JSONObject。

$data= [
    'referenceNumber'=>"47575685389595",
    'phoneNumber'=>"07048576234",
    'firstName'=>"Ian", 
    'lastName'=>"Lankansa",
    'accountName'=>"Ian Lankansa", 
    'accountIdentifier'=>"12345484326",
    'callbackUrl' => "https://:9091/test-callback"
];
$registerPersistentPaymentAccount = $collectAPI ->updatePersistentPaymentAccount($data);

删除持久付款账户

此端点允许删除持久付款账户。要使用此功能,请调用PagaCollectClient中的deletePersistentPaymentAccount,它将返回一个JSONObject。

$data= [
    'referenceNumber'=>"47575685389595",
    'accountIdentifier'=>"12345484326"
];
$registerPersistentPaymentAccount = $collectAPI ->deletePersistentPaymentAccount($data);

付款请求基金

此端点可以用来取消或发起退款,如果我们由于某种原因无法满足请求。要使用此功能,请调用PagaCollectClient中的paymentRequestFund,它将返回一个JSONObject。

$data= [
    'referenceNumber'=>"47575685389595",
    'accountIdentifier'=>"12345484326"
    'refundAmount'=>500,
    'currency'=> "NGN",
];
$registerPersistentPaymentAccount = $collectAPI ->paymentRequestRefund($data);

变更日志

[1.0.0] - 2021-05-20

添加

  • 实现了paga-collect的端点

[1.0.1] - 2021-05-25

错误修复

  • 更新依赖项
  • 移除了php-console依赖项

[1.1.2] - 2021-10-03

添加

  • 实现了updatePersistentPaymentAccount、getPersistentPaymentAccount、deletePersistentPaymentAccount、paymentRequestRefund等功能。