first_in_series payment session by passing mandate_options, and becomes the durable record of customer authorisation that governs every subsequent next_in_series payment.
Providing
mandate_options is optional. Omitting it entirely creates an unconstrained mandate: valid indefinitely, for any amount, any number of times, with no declared intent.Mandate Type
Thetype field declares the kind of mandate the customer is consenting to.
Scheduled mandates
The customer consents to collection on a fixed cadence, defined byrecurrence.
Payment methods whose consent surface displays an interval (for example, Capitec VRP) require
scheduled or installment.On-demand mandates
The customer consents to collection without a fixed cadence. Use for wallet top-ups, card-on-file ad-hoc charges, or any flow where the customer has not agreed to a rhythm.Payment methods that require a cadence at consent (for example, Capitec VRP) are not eligible on
on_demand. Use scheduled instead.Installment mandates
The customer consents to a fixed payment plan: a defined number of payments totallingtotal_amount. The structure is set by terms:
periodic: equal payments on a fixed cadence.recurrenceandmax_occurrencesare both required insideterms.fixed: an explicit schedule with specific amounts and due dates per installment. Use when payment amounts vary or dates are irregular.
Amount
Defines the amount the customer consents to in future payments. Fixed amount: the exact amount that may be collected each time:amount from the originating first_in_series session is used as the consent ceiling and applies to all subsequent next_in_series payments under the mandate.
Recurrence
Defines the consented payment cadence: how frequently the customer has agreed to be charged. Required fortype: scheduled. Not available on type: on_demand (no cadence is consented). For type: installment, recurrence is set inside terms.
Payments every month on the 1st:
Validity Period
Restricts the mandate to a specific date range. Payments outside this range will be rejected. A mandate valid throughout 2026:start_date is omitted, the mandate is active immediately from the date of creation. If end_date is omitted, the mandate does not expire.
Max Occurrences
Caps the total number of successful payments allowed under the mandate. A mandate limited to 12 successful payments in total:For full configuration examples, see Mandates: Examples. For the complete schema, see the API Reference.

