Mandates
With Direct Debit, merchants can securely debit a customer’s bank account to collect payments for products or services under predefined terms. The process always begins with a mandate: merchants create the mandate, customers authorize it, and once activated, debits can be executed automatically.
What is a Mandate?
A mandate is a customer’s authorization allowing a merchant to debit their bank account for agreed transactions, such as one-time, recurring, or flexible payments.
Each mandate defines:
- The accounts involved
- The frequency or duration of authorization
- The type of debit (fixed or flexible)
Classes of Mandates
TeamApt supports multiple mandate classes to handle different payment scenarios and merchant use cases. Choose the type that best fits your collection model.
- Single Account Mandate: Authorize debits from a single customer account.
- Dual Account Mandate: Enable debits from two linked accounts for added flexibility.
- Multiple Account Mandate: Support complex mandates involving multiple accounts.
Ways to Use Mandates
Direct Debit mandates can be configured as open or closed, and fixed or flexible, depending on your use case.
| Mandate Type | Description | Example Use Case |
|---|---|---|
| Open Flexible | Debit varying amounts without a set end date | A utility company billing customers based on consumption |
| Open Fixed | Debit fixed amounts indefinitely until canceled | A streaming subscription with a recurring monthly fee |
| Closed Flexible | Debit varying amounts within a defined duration | A car financing plan allowing flexible payments within 12 months |
| Closed Fixed | Debit fixed amounts for a fixed duration | An insurance plan with fixed monthly payments for one year |
Working with Mandates
You can create a mandate in two ways, depending on how account details are handled:
- Initiate or Create MandateYou can create a mandate in two ways, depending on how account details are handled:
- Initiate Mandate (/mandate/api/v1/debit-mandate/initiate): Use this when the customer provides account details on the hosted activation page.
- Create Mandate (/mandate/api/v1/debit-mandate/create): Use this when your system already has verified customer account information and you want to create the mandate directly.
Both endpoints return areferenceand anactivationUrl, which the customer must use to activate the mandate. - Verify MandateQuery /api/v1/debit-mandate/status/{reference} to confirm the mandate's current status and verify that it is
ACTIVEbefore processing any debit. - Debit MandateOnce the mandate is active, use /transaction/api/v1/transaction/process-payment to process a debit.
- Cancel MandateIf a mandate needs to be cancelled or deactivated, use /mandate/api/v1/debit-mandate/cancel to cancel an active mandate.
Mandate Statuses
Mandates can return one of the following statuses during their lifecycle:
| Status | Description |
|---|---|
| PENDING | Mandate creation in progress |
| PENDING AUTHORIZATION | Awaiting customer authorization |
| PENDING ACTIVATION | Authorized by customer, pending bank activation |
| AUTHORIZATION EXPIRED | Authorization not completed within the allowed period |
| ACTIVE | Mandate fully active and available for debits |
| EXPIRED | Mandate has reached its defined end date |
| CANCELLED | Mandate canceled by the merchant |
| SUSPENDED | Mandate suspended by the customer’s financial institution |