Multiple Account Mandate

A Multiple Account Mandate links multiple customer accounts (sourced by BVN lookup) and allows distributed debit handling.

How It Works

The customer authenticates several linked accounts during activation. Debits are processed from any of the accounts, either in priority order or according to merchant logic.

Best for:

  • Customers who split payments across accounts
  • High-value debits that may exceed a single account’s balance
  • Complex financial products (loans, investment funding, co-pay arrangements)

Example

A customer repaying a ₦2,000,000 loan may have funds spread across three accounts. The system allows debiting one or more accounts to fulfill the payment.


Teamapt direct debit
Intiating a Merchant with Account Number Sample
1const axios = require('axios').default;
2
3const options = {
4  method: 'POST',
5  url: 'https://direct-debit-mandate-service.staging.teamapt.com/api/v1/debit-mandate/initiate',
6  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
7  data: {
8  "mandateName": "Mandate for Loan repayment",
9  "merchantId": "XTRA",
10  "totalAmount": 1000000,
11  "transactionAmount": null,
12  "maxAmountWithinFrequency": 250000,
13  "isSingleTransactionAmountFixed": false,
14  "totalDebitCount": 4,
15  "durationInDays": 200,
16  "canCustomerCancel": false,
17  "merchantLogo": "https://www.examplemerchant.com/logo.png",
18  "redirectUrl": "https://www.google.com",
19  "minimumMultipleAccountPercentage": null,
20  "paymentFacilitatorReference": "PayFac_Ref_98765",
21  "transactionsCategory": "ELE14",
22  "merchantLocation": "123 Tech Avenue, Lagos, Nigeria",
23  "customerEmail": "firstname.lastname@teamapt.com",
24  "frequency": "ANY",
25  "notificationUrl": "https://webhook.site/1a1c581a-7029-413d-9d24-2a1433fc12f6",
26  "accountNumbers": [
27    {
28      "accountNumber": "0123456789",
29      "bankCode": "070"
30    },
31    {
32      "accountNumber": "9876543210",
33      "bankCode": "070"
34    }
35  ]
36}
37};
38
39try {
40  const { data } = await axios.request(options);
41  console.log(data);
42} catch (error) {
43  console.error(error);
44}
Mandate with Account Provided Response Sample
1{
2    "success": true,
3    "message": "Success",
4    "response": {
5        "paymentFacilitatorReference": "PayFac_Ref_98765",
6        "reference": "TDD12348CSue129303MALNH3HWI",
7        "activationUrl": null,
8        "expiryTime": "2025-12-22T08:12:59Z",
9        "status": "PENDING",
10        "state": "Initiated",
11        "description": "Mandate creation request has been received and being validated",
12        "sessionKey": "5244c9e6cff24ab2ab8a8498d4f7b8b0"
13    },
14    "responseCode": "00"
15}
Mandate without Account Number Sample
1const axios = require('axios').default;
2
3const options = {
4  method: 'POST',
5  url: 'https://direct-debit-mandate-service.staging.teamapt.com/api/v1/debit-mandate/initiate',
6  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
7  data: {
8    "mandateName": "Mandate for Loan repayment",
9    "merchantId": "XTRA",
10    "totalAmount": 750000,
11    "transactionAmount": 250000,
12    "maxAmountWithinFrequency": 250000,
13    "isSingleTransactionAmountFixed": true,
14    "totalDebitCount": 3,
15    "durationInDays": 365,
16    "canCustomerCancel": false,
17    "merchantLogo": "https://www.examplemerchant.com/logo.png",
18    "redirectUrl": "https://www.google.com",
19    "paymentFacilitatorReference": "PayFac_Ref_98765",
20    "transactionsCategory": "ELE14",
21    "merchantLocation": "123 Tech Avenue, Lagos, Nigeria",
22    "customerEmail": "fatai.ibrahim@teamapt.com",
23    "frequency": "ANY",
24    "notificationUrl": "https://webhook.site/d4cbdeac-d58e-4af0-ae88-a10960ce11e3",
25    "mandateClassification": "MULTIPLE_ACCOUNT",
26    "minimumMultipleAccountPercentage": 90
27}
28};
29
30try {
31  const { data } = await axios.request(options);
32  console.log(data);
33} catch (error) {
34  console.error(error);
35}
Mandate without Account number Response Sample
1{
2    "success": true,
3    "message": "Success",
4    "response": {
5        "paymentFacilitatorReference": "PayFac_Ref_98765",
6        "reference": "TDD12348CSue12930KJTHZDCDXA",
7        "activationUrl": "https://mandate-verification.staging.teamapt.com?sessionId=efc4d16f9ad4404daed6ace1229d827d",
8        "expiryTime": "2025-12-19T14:47:37Z",
9        "status": "PENDING",
10        "state": "Initiated",
11        "description": "Mandate creation request has been received and being validated",
12        "sessionKey": "efc4d16f9ad4404daed6ace1229d827d"
13    },
14    "responseCode": "00"
15}

Rate this page

How would you rate your experience?

get info

Got Questions

Reach out to us at support@teamapt.com if you have any questions as regards integrating with the TeamApt API.
youtube

TeamApt Tutorial Videos

Check out Our Youtube channel for tutorials on how to integrate the TeamApt API.
slack

Join Our Slack Community

Click here to join the TeamApt Slack community.