PAIN file

SEPA (Single Euro Payments Area) is a pan-European network that allows you to send and receive payments in euros (€) between two cross-border bank accounts in the eurozone.

Payment Initiation (PAIN) is an xml file format, which is used in the Corporate to Bank payment traffic. 

PAIN.001

PAIN.001 is a payments initiation message by ISO 20022. It depicts a Credit Transfer message in an XML format. 

PAIN.001 is a generic payment file based on the pain.001.001, both 03 and 09 are supported, format standard and is used by corporates to send SEPA credit transfers in a file to the bank.

It supports the following type of payments:

  • Europayments
  • Urgent Domestic Europayments
  • Urgent Europayments
  • Cross border payments

You can find a format description on https://www.rabobank.nl/seb-en.

Below you can find an example format of the Pain.001:

<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <CstmrCdtTrfInitn>
        <GrpHdr>
            <MsgId>MMMM20211231v1</MsgId>
            <CreDtTm>2013-07-18T10:00:00</CreDtTm>
            <NbOfTxs>2</NbOfTxs>
            <CtrlSum>0.03</CtrlSum>
            <InitgPty>
                <Nm>MIB</Nm>
            </InitgPty>
        </GrpHdr>
        <PmtInf>
            <PmtInfId>PmtInfId-MM20211231-1</PmtInfId>
            <PmtMtd>TRF</PmtMtd>
            <BtchBookg>false</BtchBookg>
            <PmtTpInf>
                <InstrPrty>NORM</InstrPrty>
                <SvcLvl>
                    <Cd>SEPA</Cd>
                </SvcLvl>
            </PmtTpInf>
            <ReqdExctnDt>2021-12-31</ReqdExctnDt>
            <Dbtr>
                <Nm>MïB</Nm>
                <PstlAdr>
                    <Ctry>NL</Ctry>
                    <AdrLine>Gräädt van Roggenweg 400</AdrLine>
                    <AdrLine>Utrecht</AdrLine>
                </PstlAdr>
            </Dbtr>
            <DbtrAcct>
                <Id>
                    <IBAN>NL86RABO1999999991</IBAN>
                </Id>
                <Ccy>EUR</Ccy>
            </DbtrAcct>
            <DbtrAgt>
                <FinInstnId>
                    <BIC>RABONL2U</BIC>
                </FinInstnId>
            </DbtrAgt>
            <CdtTrfTxInf>
                <PmtId>
                    <InstrId>MIB InstrId305-312MM20211231v1</InstrId>
                    <EndToEndId>MIB E2E305-312MM20211231v1</EndToEndId>
                </PmtId>
                <PmtTpInf/>
                <Amt>
                    <InstdAmt Ccy="EUR">0.01</InstdAmt>
                </Amt>
                <CdtrAgt>
                    <FinInstnId>
                        <BIC>RABONL2U</BIC>
                    </FinInstnId>
                </CdtrAgt>
                <Cdtr>
                    <Nm>MIB 320</Nm>
                    <PstlAdr>
                        <Ctry>NL</Ctry>
                        <AdrLine>Graadt van Roggenweg 400</AdrLine>
                        <AdrLine>Utrecht</AdrLine>
                    </PstlAdr>
                </Cdtr>
                <CdtrAcct>
                    <Id>
                        <IBAN>NL11RABO3444444443</IBAN>
                    </Id>
                    <Ccy>EUR</Ccy>
                </CdtrAcct>
                <RmtInf>
                    <Ustrd>MIB304-320MM20211231v1</Ustrd>
                </RmtInf>
            </CdtTrfTxInf>
        </PmtInf>
        <PmtInf>
            <PmtInfId>PmtInfId-MM20211231-2</PmtInfId>
            <PmtMtd>TRF</PmtMtd>
            <BtchBookg>false</BtchBookg>
            <PmtTpInf>
                <InstrPrty>NORM</InstrPrty>
                <SvcLvl>
                    <Cd>SEPA</Cd>
                </SvcLvl>
            </PmtTpInf>
            <ReqdExctnDt>2021-12-31</ReqdExctnDt>
            <Dbtr>
                <Nm>MIB</Nm>
                <PstlAdr>
                    <Ctry>NL</Ctry>
                    <AdrLine>Graadt van Roggenweg 400</AdrLine>
                    <AdrLine>Utrecht</AdrLine>
                </PstlAdr>
            </Dbtr>
            <DbtrAcct>
                <Id>
                    <IBAN>NL86RABO1999999991</IBAN>
                </Id>
                <Ccy>EUR</Ccy>
            </DbtrAcct>
            <DbtrAgt>
                <FinInstnId>
                    <BIC>RABONL2U</BIC>
                </FinInstnId>
            </DbtrAgt>
            <CdtTrfTxInf>
                <PmtId>
                    <InstrId>MIB InstrId305-312MM20211231v1</InstrId>
                    <EndToEndId>MIB E2E305-312MM20211231v1</EndToEndId>
                </PmtId>
                <PmtTpInf/>
                <Amt>
                    <InstdAmt Ccy="EUR">0.02</InstdAmt>
                </Amt>
                <CdtrAgt>
                    <FinInstnId>
                        <BIC>RABONL2U</BIC>
                    </FinInstnId>
                </CdtrAgt>
                <Cdtr>
                    <Nm>MIB 320</Nm>
                    <PstlAdr>
                        <Ctry>NL</Ctry>
                        <AdrLine>Graadt van Roggenweg 400</AdrLine>
                        <AdrLine>Utrecht</AdrLine>
                    </PstlAdr>
                </Cdtr>
                <CdtrAcct>
                    <Id>
                        <IBAN>NL11RABO3444444443</IBAN>
                    </Id>
                    <Ccy>EUR</Ccy>
                </CdtrAcct>
                <RmtInf>
                    <Ustrd>MIB305-320MM20211231</Ustrd>
                </RmtInf>
            </CdtTrfTxInf>
        </PmtInf>
    </CstmrCdtTrfInitn>
</Document>

PAIN.002

PAIN.002 or payment status message is a log file based on the pain.002.001.03 format, it contains the actual status of payments (example rejection, acceptance etc.) submitted by SEPA Credit Transfer (pain.001) or SEPA Direct Debit (pain.008).

  • Interchange status/group status
  • Batch status
  • Transaction status on individual payments in the batch

You can find the format description on https://www.rabobank.nl/seb-en.

Note: The format description on www.rabobank.nl describes status information only on the rejected transactions. The pain.002 of the Business Bulk Payment Initiation and Business Direct Debit API(s) also supports the following statuses:

Interchange status/group status

RCVD    

Created

ACTC

Authorised

RJCT 

Rejected

Batch status

RCVD

Created

ACTC

Awaiting authorisation (not all batches are signed)

ACCP

Authorised

ACSC

Processed

RJCT

Rejected, expired or cancelled

PDNG

Postponed

Transaction status on individual payment in the batch

RJCT

Rejected

ACTC

Awaiting authorisation

ACCP

Authorised

ACWC

Withdrawn

PDNG

Postponed

ACSC

Processed

Below you can find an example format of the Pain.002:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.03">
    <CstmrPmtStsRpt>
        <GrpHdr>
            <MsgId>RABO-PAIN002-PO-0000000001865281814</MsgId>
            <CreDtTm>2021-08-09T15:39:03.808</CreDtTm>
            <InitgPty>
                <Id>
                    <OrgId>
                        <BICOrBEI>RABONL2U</BICOrBEI>
                    </OrgId>
                </Id>
            </InitgPty>
        </GrpHdr>
        <OrgnlGrpInfAndSts>
            <OrgnlMsgId>MMMM20211231v1</OrgnlMsgId>
            <OrgnlMsgNmId>PAIN.001.001.03</OrgnlMsgNmId>
            <OrgnlCreDtTm>2021-07-18T10:00:00.000</OrgnlCreDtTm>
            <OrgnlNbOfTxs>2</OrgnlNbOfTxs>
            <OrgnlCtrlSum>0.03</OrgnlCtrlSum>
            <GrpSts>ACTC</GrpSts>
        </OrgnlGrpInfAndSts>
        <OrgnlPmtInfAndSts>
            <OrgnlPmtInfId>PmtInfId-MM20211231-1</OrgnlPmtInfId>
            <OrgnlNbOfTxs>1</OrgnlNbOfTxs>
            <PmtInfSts>ACSC</PmtInfSts>
        </OrgnlPmtInfAndSts>
        <OrgnlPmtInfAndSts>
            <OrgnlPmtInfId>PmtInfId-MM20211231-2</OrgnlPmtInfId>
            <OrgnlNbOfTxs>null</OrgnlNbOfTxs>
            <PmtInfSts>RJCT</PmtInfSts>
        </OrgnlPmtInfAndSts>
    </CstmrPmtStsRpt>
</Document>

PAIN.008

Pain.008 file is a payments initiation message by ISO 20022. It depicts a Direct Debit message in XML format. A PAIN.008 file is used by corporates to send SEPA direct debits in a file to the bank.

Both 008.001.02 and 008.001.08 are supported.

Below you can find an example format of the Pain.008:

<?xml version="1.0" encoding="UTF-8" ?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.001.02" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <CstmrDrctDbtInitn>
        <GrpHdr>
            <MsgId>MMMM20211231v1</MsgId>
            <CreDtTm>2013-07-18T10:00:00</CreDtTm>
            <NbOfTxs>1</NbOfTxs>
            <CtrlSum>0.02</CtrlSum>
            <InitgPty>
                <Nm>MIB</Nm>
            </InitgPty>
        </GrpHdr>
        <PmtInf>
            <PmtInfId>PmtInfId-DD20211231-1</PmtInfId>
            <PmtMtd>DD</PmtMtd>
            <BtchBookg>true</BtchBookg>
            <NbOfTxs>1</NbOfTxs>
            <CtrlSum>0.02</CtrlSum>
            <PmtTpInf>
                <SvcLvl>
                    <Cd>SEPA</Cd>
                </SvcLvl>
                <LclInstrm>
                    <Cd>CORE</Cd>
                </LclInstrm>
                <SeqTp>FRST</SeqTp>
            </PmtTpInf>
            <ReqdColltnDt>2021-12-31</ReqdColltnDt>
            <Cdtr>
                <Nm>MïB</Nm>
                <PstlAdr>
                    <Ctry>NL</Ctry>
                    <AdrLine>Gräädt van Roggenweg 400</AdrLine>
                    <AdrLine>Utrecht</AdrLine>
                </PstlAdr>
            </Cdtr>
            <CdtrAcct>
                <Id>
                    <IBAN>NL86RABO1999999991</IBAN>
                </Id>
                <Ccy>EUR</Ccy>
            </CdtrAcct>
            <CdtrAgt>
                <FinInstnId>
                    <BIC>RABONL2U</BIC>
                </FinInstnId>
            </CdtrAgt>
            <ChrgBr>SLEV</ChrgBr>
            <CdtrSchmeId>
                <Id>
                    <PrvtId>
                        <Othr>
                            <Id>NL33ZZZ300456820000</Id>
                            <SchmeNm>
                                <Prtry>SEPA</Prtry>
                            </SchmeNm>
                        </Othr>
                    </PrvtId>
                </Id>
            </CdtrSchmeId>
            <DrctDbtTxInf>
                <PmtId>
                    <EndToEndId>MIB E2E305-312DD20211231v1</EndToEndId>
                </PmtId>
                <InstdAmt Ccy="EUR">0.02</InstdAmt>
                <DrctDbtTx>
                    <MndtRltdInf>
                        <MndtId>00001</MndtId>
                        <DtOfSgntr>2021-07-30</DtOfSgntr>
                    </MndtRltdInf>
                </DrctDbtTx>
                <DbtrAgt>
                    <FinInstnId>
                        <BIC>RABONL2U</BIC>
                    </FinInstnId>
                </DbtrAgt>
                <Dbtr>
                    <Nm>MIB 320</Nm>
                    <PstlAdr>
                        <Ctry>NL</Ctry>
                        <AdrLine>Graadt van Roggenweg 400</AdrLine>
                        <AdrLine>Utrecht</AdrLine>
                    </PstlAdr>
                </Dbtr>
                <DbtrAcct>
                    <Id>
                        <IBAN>NL11RABO3444444443</IBAN>
                    </Id>
                </DbtrAcct>
                <RmtInf>
                    <Ustrd>MIB304-320DD20211231v1</Ustrd>
                </RmtInf>
            </DrctDbtTxInf>
        </PmtInf>
    </CstmrDrctDbtInitn>
</Document>