Webhook - Direct Debit Collections, Mandate Status
Direct Debit Mandate Status
The DDMANDATE
event is triggered when there is a status change to a Direct Debit Mandate.
Parameter | Description |
---|---|
EventId | Unique id for the webhook event. This can change if webhook needs to be resent. |
AccountId | Modulr Unique Account reference for the account that the mandate is linked to. |
EventName | Type of event: DDMANDATE - DD Mandate Status Update |
EventTime | Date and Timestamp for the Event - All Dates and times are UTC based. |
CustomerId | Modulr Unique Customer Reference for the customer that the mandate is linked to. |
ExternalReference | This is the reference you can set on the mandate to correlate back to your system. |
Reference | Reference of the mandate to match with the collections |
MandateId | Modulr Unique Mandate reference. |
NewStatus | Updated mandate status. |
OldStatus | Previous mandate status. |
ReasonCode | Reason Code for any failed mandates |
ReasonMessage | Reason Message for any failed mandates |
OldDueDate | Collection due date before the change |
RequestedDueDate | Collection due date after the change |
OldPaymentFrequency | Collection frequency before the change |
RequestedPaymentFrequency | Collection frequency after the change |
OldAmountOfPayment | Collection amount before the change |
RequestedAmountOfPayment | Collection amount after the change |
EffectivePaymentDate | Date of the last collection before the change |
RequestedLastPaymentDate | Date of the last collection after the change |
NewAccountName | New account name of the customer |
NewAccountNumber | New account number of the customer |
NewAccountSortCode | New account sort code of the customer |
OldAccountName | Old account name of the customer |
OldAccountNumber | Old account name of the customer |
OldAccountSortCode | Old account sort code of the customer |
Mandate Status
Mandate can have the following status.
Payment Direction | Status | Meaning |
---|---|---|
Inbound | Pending | The Mandate has been created and has not yet been sent to BACS for processing |
Inbound | Submitted | The Mandate has been sent to BACS and waiting for the final decision |
Inbound | Active | The Mandate has successfully lodged. |
Inbound | Rejected | The mandate was rejected by the Payer's Bank. Modulr receives a BRAUDDIS file to explain the rejection |
Inbound | Cancelled | An existing mandate was cancelled |
Outbound | Active | There is an active mandate lodged on our Partner's account |
Outbound | Cancel | An existing Mandate was cancelled by our Partner |
Outbound | Reject | The Mandate was rejected during lodgement |
Outbound | Expire | The Mandate has expired |
Example DDMANDATE Webhook
{
"EventId": "3c4f3c54-b8e3-4a8b-a1f9-f68429c449c6",
"AccountId": "A120C8D3",
"EventName": "DDMANDATE",
"EventTime": "2020-01-01T03:27:41+0000",
"CustomerId": "C130CYKD",
"ExternalReference": "4F82222B86J99",
"Reference": "GYM-8973XC",
"MandateId": "M101BPSG",
"NewStatus": "ACTIVE",
"OldStatus": "SUBMITTED",
"ReasonCode":"INSTRUCTION_CANCELLED_BY_PAYER",
"ReasonMessage":"Instruction has been cancelled by Payer",
"OldDueDate":"2021-05-04",
"RequestedDueDate":"2021-05-14",
"OldPaymentFrequency":"W",
"RequestedPaymentFrequency":"M",
"OldAmountOfPayment":"34.56",
"RequestedAmountOfPayment":"35.78",
"EffectivePaymentDate":"2021-05-14",
"RequestedLastPaymentDate":"2022-05-14",
"NewAccountName":"JOE BLOGGS",
"NewAccountNumber":"11111111",
"NewAccountSortCode":"010101",
"OldAccountName":"JOE M BLOGGS",
"OldAccountNumber":"12121212",
"OldAccountSortCode":"020202"
}
Please note that only non-null fields will be sent. If a field has no value, then it will not be part of the webhook.
Updated 8 months ago