...
Providers will be required to settle monies collected to a designated account by the client bank, less their fees. The client bank will handle secondary settlement to the apps, less their own fee and OnePipe's.
Special configuration notes
All providers of this service should implement OTP, but support the configuration of otp_override
such that based on this configuration, they could be instructed to bypass the OTP requirement for an app.
Settlement & fees model
Depending on the provider implementation, this service supports any of the 3 models.
...
App calls
/transact
with the right auth detailsProvider responds with
WaitingForOTP
Successful
orPendingValidation
Failed
as may be requiredApp calls/transact/validate
to supply OTP if neededProvider responds with any of the completion codes
Successful
orFailed
.To query the status of a transaction, the app can call
/transact/query
Where the provider supports it, the app can call
/transact/reverse
to request a reversalTo receive available options for this service, apps can call
/transact/options
.
Gliffy | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
Code Block | ||
---|---|---|
| ||
{ "request_ref":"{{request-_ref}}", "request_type":"collectsend_invoice", "auth": { "type": "bank.accountnull", "secure": "4if1oYEoHx5Kp+PZj6RibJlXbx8zIKkP{{null", "auth_provider": "BeeceptorOnePipe", "route_mode":"provider | options | null" }, "transaction": { "mock_mode": "live", "transaction_ref": "{{transaction-_ref}}", "transaction_desc": "A random transaction", "transaction_ref_parent": ""null, "amount": 100000, "customer":{ "customer_ref": "{{customer _id}}", "firstname": "Uju", "surname": "Usmanu", "email": "ujuusmanu@gmail.com",//the recipient of the invoice "mobile_no": "234802343132"//the recipeint of the invoice }, "meta":{ "a_key":"a_meta_value_1", "another_key":"a_meta_value_2" }, "details": { "invoice_number": null "00001", "due_date": "09-08-2020", "amount_due": "150000", } } } |
Responses
...
Code Block | ||
---|---|---|
| ||
{ "status": "Successful", "message": "Transaction processed successfully", "data": { "provider_response_code": "00", "provider": "Beeceptor", "errors": null, "error": null, "provider_response": { "provider_auth_token": null "delivery_status": "delivered | failed | pending", "paymentoptions": [] "transaction_final_amountcost": 1000"1500", //amount in kobo "reference": "897465522772655", "metainvoice_number": {}"00001", } } } |
Waiting for OTP or Validation
Code Block | ||
---|---|---|
| ||
{ "status": "WaitingForOTP | PendingValidation", "message"due_date": "Kindly enter the OTP sent to 08142*****67", "data": {"09-08-2020", "provideramount_response_codedue": "900TO150000",//in kobo "provider": "Beeceptor", "errors": null, "error": null,"payment_link": "http://pages.onepipe.io/p/7uL21J" "provider_response": null } } |
Failed
Code Block | ||
---|---|---|
| ||
{ "statusreference": "Failed000022200225154318222333334432", "message": "Transaction failed", "data": { "provider_response_codemeta": "91",{ "provider": "Beeceptor", "errors": null, } "error": null, } "provider_response": null } } |
Info |
---|
Note that this service supports that the details object is null |
...