Direct debit errors
Below is a table of test data and associated errors that can be used to simulate various problems during testing failed Direct Debit payments.
Sort code | Account number | Error code | Error message |
400002 | 31001001 | dd_no_instruction | No instruction held with the paying bank. |
400002 | 31001002 | dd_amount_differs | Payer states the amount of the Direct Debit differs from the amount in the advance notice to payer. |
400002 | 31001003 | dd_account_closed | Payer has closed their account for an unknown reason. |
400002 | 31002001 | dd_paying_bank_canceled_ddi | Paying bank has cancelled instruction. |
400002 | 31002002 | dd_account_transferred | Account transferred to a different branch of the bank/building society. |
400002 | 31002003 | dd_instruction_amended | Instruction amended. |
Any other provided values for sort code & account number will lead to successful Direct Debit payment (taking into account test data from “Funding source validation” table).
Direct debit errors that occur later
Note that it’s not all possible errors that could occur in Api’s live mode, For example, a client has created a Direct Debit funding source with 400002 as the sort code and 31001001 as an account number, this funding source was marked as valid. Now the client creates a payment using that funding source, Customate Api takes some time to process this payment and after a while the client will be notified with similar webhook event:
{ "id": "d353ad23-79e9-487d-9ea6-9c31b239db91", "type": "payment.updated", "creation_datetime": "2020-04-22T16:00:00.000Z", "data": { "id": "5e614f0b-f57c-4a42-a24d-8412c84e29ad", "status": "failed", "amount": 100, "profile": { "id": "025e371d-c76d-4b97-be8a-743f343416da" }, "funding_source": { "id": "e16b0c85-8b1c-4f33-9835-1b9c01dfbec1" }, "payee": { "id": "4dba13e4-cbec-42e8-9875-c3c85ef80e93" }, "error_code": "no_instruction", "error_message": "No Instruction held with paying bank" } }