Overview SEPA Reason Codes
Published on
21/08/2026
Updated on
21/08/2026
Reading time
6 min
Reason Codes
Synonyms: Return code, reason for return, return code, R-transaction code
Short definition
Reason codes are standardized four-digit keys used by payment service providers in SEPA transactions to explain why a payment was not executed as instructed, or why it was returned or recalled. They serve as the machine-readable counterpart to the plain-text return reason and form the basis for all automated return processing.
Reason codes do not originate from the SEPA rulebooks themselves but from the ISO 20022 External Code Sets. The European Payments Council (EPC) selects a permissible subset for each payment scheme and specifies which codes may be used for specific “R-transactions” and by which parties. National clearing rules (such as the Bundesbank’s procedural rules for the SEPA-Clearer(opens in new tab) in Germany) may supplement these with additional checks and codes.
A key practical point: a reason code indicates what happened, not who was at fault or whether resubmission is advisable. Interpreting this information is always the task of the processing system.
Where reason codes occur
| Message | Direction | Use |
|---|---|---|
pain.002 | Bank → Customer | Status report on submitted file; reject before execution |
pacs.002 | Interbanking | Rejection of a payment prior to clearing; in the case of SCT Inst, additionally a negative confirmation. |
pacs.004 | Interbanking | Return, refund, and reversal after clearing/settlement |
camt.056 | Interbanking | Request for Cancellation / Recall – Reason for Callback |
camt.029 | Interbanking | Response to the recall – positive or negative, with justification |
camt.054 | Bank → Customer | Debit/credit advice for the returned item |
One and the same code can be valid in multiple messages, but not in all of them. For instance, MD06 is permitted only for refunds, while FF01 is permitted only for rejects.
Classification of R-transactions
| R-Trans-action | Time | Triggerer | Proceeding |
|---|---|---|---|
| Reject | before settlement | each participating bank or CSM | SCT, SCT Inst, SDD |
| Return | after settlement, typically up to D+5 | Beneficiary’s bank or paying agent | SCT, SCT Inst, SDD |
| Refund | up to 8 weeks (authorized) or 13 months (unauthorized) | Payer / Party liable for payment | only SDD Core |
| Reversal | up to D+5 after the due date | Payee (Creditor) | only SDD |
| Recall / RFRO | after settlement | Payer’s bank or payer | SCT, SCT Inst |
| Inquiry | any time | Payer’s bank | SCT (Claim of Non-Receipt / Value Date Correction) |
The most important codes
SEPA Direct Debit (SDD Core and B2B)
| Code | ISO-Description | Practical significance | Permitted in |
|---|---|---|---|
AC01 | Incorrect Account Number | IBAN incorrect in format or content | Reject, Return |
AC04 | Closed Account Number | Account closed – follow-up pointless | Reject, Return |
AC06 | Blocked Account | Account blocked; potential direct debit block | Reject, Return |
AC13 | Invalid Debtor Account Type | B2B direct debit to a consumer account | Reject, Return |
AG01 | Transaction Forbidden | Direct debit not permitted for this account | Reject, Return |
AG02 | Invalid Bank Operation Code | Incorrect procedure code, e.g. B2B instead of CORE | Reject, Return |
AM04 | Insufficient Funds | Missing coverage – the classic follow-up case | Reject, Return |
AM05 | Duplication | Double booking detected | Reject, Return, Reversal |
BE05 | Unrecognised Initiating Party | Creditor Identifier unknown to the paying agent or invalid | Reject, Return |
MD01 | No Mandate | No valid mandate – objection within 13 months | Reject, Return, Refund |
MD02 | Missing Mandatory Mandate Information | Mandatory information in the mandate is incomplete | Reject |
MD06 | Refund Request By End Customer | Request for reimbursement within the 8-week period | Refund |
MD07 | End Customer Deceased | Account holder deceased | Reject, Return |
MS02 | Not Specified Reason Customer Generated | Customer objects without stating reasons | Reject, Return, Reversal, Refusal |
MS03 | Not Specified Reason Agent Generated | The bank gives no reason | Reject, Return, Reversal |
RC01 | Bank Identifier Incorrect | BIC invalid or unreachable | Reject, Return |
RR01–RR04 | Missing information / Regulatory Reason | Regulatory reasons, including embargoes | Reject, Return |
SL01 | Specific Service Offered By Debtor Agent | The payment agency’s blocklist/whitelist service is taking effect | Reject, Return |
FF01 | Invalid File Format | File or format error | Reject |
SEPA Credit Transfer (SCT)
| Code | ISO-Description | Practical significance | Permitted in |
|---|---|---|---|
AC01 | Incorrect Account Number | Beneficiary’s IBAN incorrect | Reject, Return |
AC04 | Closed Account Number | Recipient account closed | Return, negative Recall-Answer |
AC06 | Blocked Account | Recipient account blocked | Return |
AG01 | Transaction Forbidden | Credit to this account not permitted | Return |
AG02 | Invalid Bank Operation Code | Message/procedure invalid | Reject, Return |
AM05 | Duplication | Double booking | Reject, Return |
BE04 | Missing Creditor Address | Recipient address missing – becomes more relevant from November 2026 due to structured addresses | Return |
CNOR / DNOR | Creditor / Debtor Bank Is Not Registered | Institution is not a scheme participant or is unreachable | Reject, Return |
ED05 | Settlement Failed | Settlement in CSM failed | Reject |
FF01 | Invalid File Format | Format error | Reject |
MD07 | End Customer Deceased | Recipient deceased | Return |
MS02 / MS03 | Not Specified Reason | No reason given – customer or bank | Reject, Return |
RC01 | Bank Identifier Incorrect | Incorrect BIC | Reject, Return |
RR01–RR04 | Missing information / Regulatory Reason | Regulatory reasons | Reject, Return |
TM01 | Cut Off Time | Submission deadline passed | Reject |
A separate set of codes applies to the SCT Inquiry (Claim of Non-Receipt, Value Date Correction): ACNR, ACVA, MODI as positive, ARJT, CVAA, RJNR, RJVA, RNPR, NOOR as negative resoponses.
SEPA Instant Credit Transfer (SCT Inst) – additional codes
In principle, the same set of codes applies to SCT Inst as to SCT, supplemented by codes for time-critical processing. These form the core of any instant payment error analysis:
| Code | ISO-Description | Practical significance |
|---|---|---|
AB05 | Timeout Creditor Agent | Beneficiary’s bank is not responding in time |
AB06 | Timeout Instructed Agent | Intermediary institution is not responding in time |
AB07 | Offline Agent | Intermediary institution is not reachable |
AB08 | Offline Creditor Agent | Beneficiary’s bank is not reachable |
AB09 | Error Creditor Agent | Technical error at the beneficiary’s bank |
AB10 | Error Instructed Agent | Technical error at the intermediary institution |
AG09 | Payment Not Received | Payment not received by the receiving institution |
AG10 / AG11 | Agent Suspended / Creditor Agent Suspended | Participant suspended from the scheme |
AM23 | Amount Exceeds Settlement Limit | Institution’s clearing limit exceeded |
TM01 | Invalid Cut Off Time | Time window violated |
The AB-series represents the key difference compared to the classic SCT. It is derived from the procedure’s timing model and must be evaluated separately during monitoring: clusters indicate accessibility issues at a counterparty institution rather than data errors.
Note: With the elimination of the scheme-wide maximum amount, AM23 has become significantly more relevant in practice as an institution-specific limit.
Recall, Request for Recall by the Originator and Return codes
Recall by the payer’s bank (camt.056) – permitted reasons:
| Code | Meaning |
|---|---|
DUPL | Duplicate Payment |
TECH | Technical Problem at the institution |
FRAD | Fraudulent Origin |
Request for Recall by the Originator (RFRO) – issued by the customer:
| Code | Meaning |
|---|---|
CUST | Requested by Customer |
AM09 | Wrong Amount |
AC03 | Invalid Creditor Account Number – wrong recipient IBAN |
Reply to Recall/RFRO (camt.029):
| Code | Meaning |
|---|---|
FOCR | Following Cancellation Request – positive response, repayment will be made |
ARDT | The transaction has already been returned |
AC04 | Recipient’s account closed |
AM04 | Insufficient Funds |
NOAS | No Answer From Customer |
NOOR | No Original Transaction Received |
CUST | Declined by customer |
LEGL | Legal Decision |
FOCR is the only positive response code and triggers the actual repayment. All others are rejections and do not initiate a flow of funds—a distinction frequently overlooked in analyses of returned payments.
Differentiation: Verification of Payee
VoP results are not reason codes, although in practice they are frequently conflated with them. They arise prior to payment initiation—not afterwards—and are not part of R-transactions.
The VoP scheme yields four possible results for the combination of account number and name:
- Match – complete accordance
- Close Match – approximate accordance; the correct name is displayed to the payer
- No Match – no accordance
- Verification check not possible – Check cannot be performed, e.g. because the account is not held by the responding PSP or the service is unavailable
The “Close Match” result does not apply to the account number + identification code combination. The technical reason codes underlying the “not possible” status are specified in the Inter-PSP API Specifications rather than the rulebook.
Practical implication: A negative VoP response does not prevent the payment; instead, it generates a warning that the payer can override. A reason code, on the other hand, documents a payment that has already failed or been reversed.
Practical notes
MS02 and MS03 are not error codes; they simply indicate that no reason was provided. A high volume of these codes among returned items points to a quality issue on the counterparty’s side and precludes automated follow-up decisions.
Clearly distinguish between AC01 and AC04. AC01 may indicate a data entry error and justifies data correction, whereas AC04 signifies that the account definitively does not exist. Resubmission logic that treats both codes the same way generates avoidable subsequent returns and fees.
AM04 is the only classic case for a retry. Resubmitting items with any other code is almost always economically disadvantageous.
MD01 and MD06 differ in terms of the timeframe, not the outcome. MD06 represents an authorized dispute raised within eight weeks, while MD01 represents a dispute due to a missing mandate raised within 13 months—entailing a significantly heavier burden of proof for the payee.
Code lists have version numbers. ISO 20022 External Code Sets are updated regularly; EPC guidance and Bundesbank procedural rules align with the schemes’ annual release schedules. A code list stored in a system without versioning and a maintenance process will inevitably become outdated.
Take national extensions into account. The Bundesbank’s SEPA-Clearer uses additional validation and rejection codes not found in the EPC rulebook. Systems implemented solely based on EPC guidance will default to a fallback path when encountering these codes.
Sources and maintenance status
| Source | Document | Status |
|---|---|---|
| ISO 20022 Registration Authority | External Code Sets (ExternalStatusReason1Code, ExternalReturnReason1Code, ExternalPaymentCancellationReason1Code) | continuously updated |
| EPC | EPC173-14 – Guidance on Reason Codes for SDD R-transactions, v8.0 | 28.11.2024 |
| EPC | EPC135-18 – Guidance on Reason Codes for SCT R-transactions, v6.0 | 28.11.2024 |
| EPC | EPC059-18 – Guidance on Reason Codes for SCT Inst R-transactions, v7.0 | 05.10.2025 |
| EPC | EPC218-23 – Verification of Payee Scheme Rulebook, v1.1 | published 16.03.2026, valid from 20.09.2026 |
| Deutsche Bundesbank | Verfahrensregeln für die Abwicklung von SEPA-Zahlungen über den SEPA-Clearer des EMZ | valid from 15.11.2026 |
| Die Deutsche Kreditwirtschaft | Anlage 3 des DFÜ-Abkommens – Spezifikation der Datenformate | Version 26.11, valid from 15.11.2026 |
Maßgeblich ist immer die zum Verarbeitungszeitpunkt gültige Fassung. Die EPC-Guidance-Dokumente sind Auslegungshilfen, rechtlich verbindlich sind die jeweiligen Scheme Rulebooks und Implementation Guidelines!
Editorial note: This article reflects the status as of August 2026. To be reviewed during the next update: the impact of the switch to structured addresses on November 22, 2026, on BE04 and the RR series.