SEPA direct debits
Manage SEPA direct debits using Mambu Payments (formerly Numeral)
SEPA direct debits (SDDs) enable companies and governments (referred to as creditors) to collect payments from companies and individuals (referred to as debtors) by pulling payments from their accounts using a mandate. SDDs can be of type core (between companies and individuals or between companies) or B2B (between companies exclusively).
SEPA creditor identifier
A creditor identifier is required to collect payments through SDD. Companies can request their creditor identifier to their bank or country's central bank. Your creditor identifier will be added to your Mambu Payments (formerly Numeral) account.
Managing SEPA direct debit mandates
A mandate is required to collect a payment through SDD. The mandate needs to include information about the creditor, creditor identifier, debtor, mandate type, and payment collection schedule as well as a unique reference mandate (URM).
One-off mandates can be used only once. Recurring mandates can be used multiple times and are valid until they are revoked or expire after 36 months without being used.
Creating a payment order for a SEPA direct debit
SEPA direct debit payments can be created using the Create payment order API endpoint, with sepa as type, debit as direction, and the following direct_debit_mandate object with:
- The
reference(URM) of the mandate - The signature date of the mandate as
signature_date - The
typeof the mandate:corefor a core mandateb2bfor a B2B mandate
- The
sequenceof the mandate:one_offfor a one-off direct debitfirstfor the first direct debit of a mandatefinalfor the final direct debit of a mandaterecurringfor all the direct debits of a mandate occurring between the first and the final
curl --request POST \
--url https://sandbox.numeral.io/v1/payment_orders \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: Your_API_Key'
--data '
{
"id": "3dfebc2a-8022-448b-a031-2b453c84df5f",
"object": "payment_order",
"type": "sepa",
"direction": "debit",
"amount": 1000,
"currency": "EUR",
"direct_debit_mandate": {
"type": "core",
"reference": "REF#36327372323",
"signature_date": "2022-02-18",
"sequence": "recurring",
},
"status": "pending_approval"
/* fields omitted for simplicity */
}SDD payment orders approved will be batched into a payment file and sent to the bank. The collection date will be the earliest date possible, depending on the mandate type and sequence.
Tracking a SEPA direct debit
After a SDD payment order has been approved, its status is updated as it is sent to and processed by the bank. The payment order can either be:
executed, when it has been executed by the creditor's bankrejected, if it has been rejected by the creditor's bankreturned, if it has been rejected, returned, refunded, or reversed by the debtor's bank
Status updates are notified by events that can be retrieved using the API or received through webhooks.
SEPA direct debit returns
As described previously, an SDD can be returned by the debtor's bank. This can happen if the account has been closed or does not have sufficient funds, the mandate has been blacklisted or has not been registered (in the case of a B2B SDD), or the debtor disputes the SDD.
When a SDD is returned by the debtor's bank, a return is automatically created. It is linked to the original payment order with the related_payment attribute for end-to-end traceability and also includes a standard SEPA error code as the return_reason. It is notified by a return.received event.
curl --request POST \
--url https://sandbox.numeral.io/v1/returns \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: Your_API_Key'
--data '
{
"id": "b6ab2878-c5ce-4b49-99ce-54da0e26d5ec",
"object": "return",
"type": "sepa",
"related_payment": "3cc4a9d8-b2d5-11ed-afa1-0242ac120002",
"value_date": "2023-02-15",
"returned_amount": 1000,
"currency": "EUR",
"return_reason": "RR04",
"status": "received",
"reconciliation_status": "reconciled"
/* fields omitted for simplicity */
}SDD returns will typically result in two transactions booked on the corresponding connected account:
- One
credittransaction reconciled reconciled with the original payment order - One
debittransaction reconciled with the return
Updated 18 days ago
