Step 2: Set mandate
Step 2: Place the e-mandate on the payerβs bank account list.
POST: https://api.creditchek.africa/v1/recova/micro-deposit/create/mandate
Contact [email protected] if you encounter any error responses at this stage.
Micro depositsβ
Request Parameters
All Mandatory below, can be reused with multiple bank account info to create more e-mandate arrangement with different bank account of exactly same Payee(email) + BVN + mandateID (combined)β
Option A: Attach Single Account via Micro-Depositβ
Generates a dedicated authorization transfer destination for the payer's bank account.
POST /micro-deposit/create/mandate
Content-Type: application/json
Request Bodyβ
| Field | Type | Required? | Description |
|---|---|---|---|
appId | string | Yes | Your application ID. |
businessId | string | Yes | Your business ID. |
mandateId | string | Yes | The _id returned from POST /consent/create. |
accountNumber | string | Yes | 10-digit NUBAN account number. |
bankCode | string | Yes | 3-digit CBN bank code (e.g. "044" for Access Bank). |
email | string | Yes | Payer's email address. |
mobileNumber | string | Yes | Payer's phone number. |
address | string | Yes | Payer's residential address. |
{
"appId": "630c8be89131cd442344e794",
"businessId": "630c8be89131cd442344e790",
"mandateId": "66f1b8c4d29a430018a99101",
"accountNumber": "0088741090",
"bankCode": "044",
"email": "[email protected]",
"mobileNumber": "08030001122",
"address": "12 Marina Road, Lagos Island, Lagos"
}
Response (200 OK)β
{
"status": true,
"message": "To proceed, please authorize this mandate by transferring N50.00 to any of the listed banks below",
"error": false,
"data": {
"mandate": {
"_id": "66f1b8c4d29a430018a99101",
"consents": ["66f1b9f1d29a430018a99105"]
},
"transfer_destinations": [
{
"bank_name": "Parallex Bank",
"account_number": "6007049662",
"icon": "https://res.cloudinary.com/creditchek-africa/image/upload/v1772053274/banks/parallex-logo_k4e30p.png"
}
]
}
}
[!IMPORTANT] Originating Account Verification The payer must execute the β¦50 transfer from the exact bank account submitted in
accountNumber. If the payment originates from a different bank or third-party account, the bank will not be able to verify authorization, and the mandate will remain pending.
E-signatureβ
POST:: https://api.creditchek.africa/v1/recova/mandate/create-mandate
Option B: Attach Single Account via e-Signatureβ
For payers authorizing directly via an electronic signature on file.
POST /v1/recova/mandate/create-mandate
Content-Type: application/json
Request Bodyβ
| Field | Type | Required? | Description |
|---|---|---|---|
appId | string | Yes | Your application ID. |
businessId | string | Yes | Your business ID. |
mandateId | string | Yes | The _id returned from POST /consent/create. |
accountNumber | string | Yes | 10-digit NUBAN account number. |
accountName | string | Yes | Name registered on the bank account. |
bankCode | string | Yes | 3-digit CBN bank code. |
email | string | Yes | Payer's email address. |
phone | string | Yes | Payer's contact phone number. |
address | string | Yes | Residential address. |
bankAddress | string | Yes | Bank branch location. |
file | string | Yes | Base64-encoded image string of payer's signature. |
{
"appId": "630c8be89131cd442344e794",
"businessId": "630c8be89131cd442344e790",
"mandateId": "66f1b8c4d29a430018a99101",
"accountNumber": "0051762787",
"accountName": "OLUWASEUN ADEKUNLE",
"bankCode": "058",
"email": "[email protected]",
"phone": "08030001122",
"address": "12 Marina Road, Lagos",
"bankAddress": "Guaranty Trust Bank, Victoria Island Branch",
"file": "iVBORw0KGgoAAAANSUhEUgAA..."
}
Response (200 OK)β
{
"status": true,
"data": {
"hasResult": true,
"result": "Mandate is being Processed",
"resultType": 1,
"message": "Successful",
"validationMessages": null,
"successful": true,
"exceptionThrown": false,
"error": null,
"responseCode": "00"
},
"message": "Mandate created successfully",
"error": false
}
The payerβs signature (submitted in base64)must match the signature recognised by the debtorβs bank on record (or file).
RecovaPRO supports collections on any day. Where a regular recurring collection is due on a date that does not exist, the collection will take place on the 1st of the following month.
Example: A payer with frequency type Y (yearly) and a start date of 29 February 2016 will pay on 1 March in non-leap years.
Payload is pre-configured sample data for any secured integration and testing.