Mandates
OnePipe PWT is growing, and there’s a need to have a plan for managing Mandates. Especially for bundlers.
Learnings from customers like Omnibiz have led to several conversations about making Mandate a service on OnePipe.
Some of these issues are;
How to know if there’s a pending mandate for a customer
How to get all pending mandates on an account
How to delete mandate(s)
If this is the final solution, the plan is to have the following services;
Create Mandate
Delete Mandate
Get Mandates
Fetch Mandates
Â
Create Mandate
This service is used to create a new mandate for a customer, the customer_ref
needs to have an existing account number(s) tied to it with the calling APP;
Â
Â
Request
{
"request_ref": "{{request-ref}}",
"request_type": "open_account",
"auth": {
"type": null,
"secure": null,
"auth_provider": "OnePipe",
"route_mode": null
},
"transaction": {
"mock_mode": "Live",
"transaction_ref": "{{transaction-ref}}",
"transaction_desc": "A random transaction",
"transaction_ref_parent": null,
"amount": 0,
"customer": {
"customer_ref": "{{phone_number}}",
"firstname": "Akin",
"surname": "Olunloye",
"email": "akin@gmail.com",
"mobile_no": "2349066870818"
},
"meta": {
},
"details": {
"grb_status": "pwt-active",
"pwt_item_description": "Order fee",
"pwt_item_code": "{{payment-item-code}}",
"pwt_item_amount": "5000",
"mandate_type": "STATIC|FIXED|FORCED"
}
}
}
Response: PendingFulfilment
Â
{
"status": "PendingFulfilment",
"message": "Request processed successfully",
"data": {
"provider_response_code": "00",
"provider": "OnePipe",
"errors": null,
"error": null,
"provider_response": {
"account_number": "9012807653",
"mandate_id": "3949004",
"mandate_desc": "A bottle of beer",
"mandate_type": "STATIC|FIXED|FORCED",
"account_reference": "2349066870818",
"account_name": "Akin Olunloye",
"currency_code": "NGN",
"customer_email": "uju@gmail.com",
"bank_name": "Polaris Bank Limited",
"bank_code": "076",
"status": "PendingFulfilment",
"created_on": "2021-11-01-19-11-55",
}
}
}
Â
Get Mandates
This service accepts the customer_ref
and returns all the mandates on the account.
Â
Request:
Â
{
"request_ref": "{{request-ref}}",
"request_type": "get_mandates",
"auth": {
"type": null,
"secure": null,
"auth_provider": "OnePipe",
"route_mode": null
},
"transaction": {
"mock_mode": "Live",
"transaction_ref": "{{transaction-ref}}",
"transaction_desc": "A random transaction",
"transaction_ref_parent": null,
"amount": 0,
"customer": {
"customer_ref": "{{phone_number}}",
"firstname": "Akin",
"surname": "Olunloye",
"email": "akin@gmail.com",
"mobile_no": "2349066870818"
},
"meta": {
},
"details": {
}
}
}