paga / paga-collect
本文档列出了Paga提供的不同RESTful Web服务,允许任何(付款请求发起者)向第三方发起付款请求,并在付款请求得到满足时自动接收通知。
Requires
- php: >=5.3.3
- monolog/monolog: ^2.0@dev
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等功能。