Το ISO 20022 με απλά λόγια

Τι είναι το pain.001; Η εντολή μεταφοράς ISO 20022

Το μήνυμα ISO 20022 που στέλνει μια επιχείρηση στην τράπεζά της για να δώσει εντολές μεταφοράς: τι είναι, πώς δομείται, ποια έκδοση να χρησιμοποιήσετε και ένα πλήρες παράδειγμα που επικυρώνεται με το επίσημο σχήμα.

Το pain.001 είναι το μήνυμα ISO 20022 που στέλνει μια επιχείρηση στην τράπεζά της για να δώσει μία ή περισσότερες εντολές μεταφοράς. Η πλήρης ονομασία του είναι Customer Credit Transfer Initiation (εκκίνηση μεταφοράς πίστωσης πελάτη): το «pain» είναι η οικογένεια μηνυμάτων εκκίνησης πληρωμών, το .001 είναι ο αριθμός του μηνύματος και η κατάληξη, για παράδειγμα pain.001.001.09, είναι η έκδοση. Είναι XML, επικυρώνεται με επίσημο σχήμα (XSD) και αντικαθιστά τις τραπεζικές μορφές CSV και το μήνυμα κειμένου SWIFT MT101.

Το pain.001 σε ένα λεπτό#

  • Ποιος το στέλνει: μια επιχείρηση (ο οφειλέτης ή ένας εκπρόσωπος που ενεργεί για λογαριασμό του) το στέλνει στη δική της τράπεζα (την τράπεζα του οφειλέτη).
  • Τι περιέχει: μία ή περισσότερες δέσμες μεταφορών, καθεμία με λογαριασμό οφειλέτη, ζητούμενη ημερομηνία εκτέλεσης και οποιονδήποτε αριθμό πληρωμών προς δικαιούχους.
  • Τι επιστρέφει: η τράπεζα απαντά με pain.002, το Customer Payment Status Report, που αποδέχεται ή απορρίπτει το αρχείο ή μεμονωμένες συναλλαγές με κωδικούς αιτιολογίας ISO.
  • Τι ακολουθεί: μετά την αποδοχή, η τράπεζα μετατρέπει κάθε εντολή σε διατραπεζικά μηνύματα όπως το pacs.008, που η επιχείρηση δεν βλέπει ποτέ.
  • Πού χρησιμοποιείται: στις μεταφορές SEPA βάσει των κανονισμών του EPC, στις διασυνοριακές πληρωμές μέσω Swift υπό το CBPR+ (pain.001.001.09) και σε πολλά εγχώρια συστήματα. Το σώμα παραδειγμάτων του Pain001 καλύπτει 42 σενάρια σε 17 αγορές.

Πώς δομείται ένα μήνυμα pain.001#

Όλες οι εκδόσεις μοιράζονται τον ίδιο σκελετό τριών επιπέδων μέσα σε ένα στοιχείο <CstmrCdtTrfInitn>.

Επίπεδο Στοιχείο Τι περιέχει
1 <GrpHdr> Κεφαλίδα ομάδας Αναγνωριστικό μηνύματος, χρονοσφραγίδα δημιουργίας, πλήθος συναλλαγών (NbOfTxs), άθροισμα ελέγχου (CtrlSum), μέρος που εκκινεί
2 <PmtInf> Πληροφορίες πληρωμής Μία δέσμη: μέθοδος πληρωμής, ζητούμενη ημερομηνία εκτέλεσης, οφειλέτης, λογαριασμός και τράπεζα οφειλέτη, επιβάρυνση εξόδων
3 <CdtTrfTxInf> Συναλλαγή μεταφοράς Μία πληρωμή: αναφορά από άκρο σε άκρο, ποσό και νόμισμα, δικαιούχος, λογαριασμός και τράπεζα δικαιούχου, στοιχεία αιτιολογίας

Ένα αρχείο μπορεί να περιέχει πολλές δέσμες <PmtInf> και κάθε δέσμη πολλές πληρωμές <CdtTrfTxInf>. Τα NbOfTxs και CtrlSum εμφανίζονται τόσο σε επίπεδο αρχείου όσο και σε επίπεδο δέσμης και πρέπει να συμφωνούν με τις πληρωμές που μετρούν· η ασυμφωνία είναι από τους συχνότερους λόγους απόρριψης αρχείου από την τράπεζα.

Ένα πλήρες παράδειγμα pain.001#

Πρόκειται για μία μεταφορά SEPA σε pain.001.001.09, αυτούσια από το σώμα παραδειγμάτων του Pain001. Επικυρώνεται με το επίσημο XSD του ISO 20022. Τα μέρη, τα IBAN και τα BIC είναι φανταστικά.

<?xml version='1.0' encoding='UTF-8'?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.09">
  <CstmrCdtTrfInitn>
    <GrpHdr>
      <MsgId>OML-SCT-20260921</MsgId>
      <CreDtTm>2026-09-21T12:00:00</CreDtTm>
      <NbOfTxs>1</NbOfTxs>
      <CtrlSum>2200.00</CtrlSum>
      <InitgPty>
        <Nm>Officine Meccaniche Lombarde SpA</Nm>
        <PstlAdr>
          <PstCd>20123</PstCd>
          <TwnNm>Milano</TwnNm>
          <Ctry>IT</Ctry>
          <AdrLine>Via Torino 15</AdrLine>
        </PstlAdr>
      </InitgPty>
    </GrpHdr>
    <PmtInf>
      <PmtInfId>SCT-20260921-IT-01</PmtInfId>
      <PmtMtd>TRF</PmtMtd>
      <BtchBookg>false</BtchBookg>
      <NbOfTxs>1</NbOfTxs>
      <CtrlSum>2200.00</CtrlSum>
      <PmtTpInf>
        <SvcLvl>
          <Cd>SEPA</Cd>
        </SvcLvl>
      </PmtTpInf>
      <ReqdExctnDt>
        <Dt>2026-09-22</Dt>
      </ReqdExctnDt>
      <Dbtr>
        <Nm>Officine Meccaniche Lombarde SpA</Nm>
        <PstlAdr>
          <PstCd>20123</PstCd>
          <TwnNm>Milano</TwnNm>
          <Ctry>IT</Ctry>
          <AdrLine>Via Torino 15</AdrLine>
        </PstlAdr>
      </Dbtr>
      <DbtrAcct>
        <Id>
          <IBAN>IT48T78971134594OGDKY5VXE41</IBAN>
        </Id>
      </DbtrAcct>
      <DbtrAgt>
        <FinInstnId>
          <BICFI>TLAOIT60</BICFI>
        </FinInstnId>
      </DbtrAgt>
      <ChrgBr>SLEV</ChrgBr>
      <CdtTrfTxInf>
        <PmtId>
          <EndToEndId>OML-2026-0921-01</EndToEndId>
        </PmtId>
        <Amt>
          <InstdAmt Ccy="EUR">2200.00</InstdAmt>
        </Amt>
        <CdtrAgt>
          <FinInstnId>
            <BICFI>MHXHITI0</BICFI>
          </FinInstnId>
        </CdtrAgt>
        <Cdtr>
          <Nm>Fonderia Bresciana Srl</Nm>
          <PstlAdr>
            <PstCd>25121</PstCd>
            <TwnNm>Brescia</TwnNm>
            <Ctry>IT</Ctry>
          </PstlAdr>
        </Cdtr>
        <CdtrAcct>
          <Id>
            <IBAN>IT23J14887404856NF3794IGWXN</IBAN>
          </Id>
        </CdtrAcct>
        <RmtInf>
          <Ustrd>Fattura 117/2026</Ustrd>
        </RmtInf>
      </CdtTrfTxInf>
    </PmtInf>
  </CstmrCdtTrfInitn>
</Document>

Δοκιμάστε τα δικά σας δεδομένα στην επίδειξη στον browser: δημιουργεί αρχείο pain.001 από CSV και το επικυρώνει με το επίσημο σχήμα, χωρίς τα δεδομένα να φύγουν από τον υπολογιστή σας.

Εκδόσεις του pain.001#

Ο ISO δημοσιεύει νέα έκδοση όταν αλλάζει το μοντέλο του μηνύματος. Κάθε τράπεζα και κάθε σύστημα δέχεται συγκεκριμένες εκδόσεις, οπότε στέλνετε την έκδοση που αναφέρει η τεκμηρίωση του καναλιού της τράπεζάς σας.

Έκδοση Σημειώσεις
pain.001.001.03 Η καθιερωμένη έκδοση για SEPA και CGI· προσδιορίζει τις τράπεζες με <BIC>
.04, .05, .06, .07, .08 Εκδόσεις συντήρησης που χρησιμοποιούν συγκεκριμένα κανάλια
pain.001.001.09 Η έκδοση του 2019 που επέλεξε το CBPR+ για το Swift· προσδιορίζει τις τράπεζες με <BICFI> και προσθέτει μεταφορά LEI και UETR
.10, .11, .12 Βελτιώσεις μετά το 2019
pain.001.001.13 Δημοσιεύθηκε από τον ISO στις 19 Μαρτίου 2026· προσθέτει προαιρετικό μοναδικό αναγνωριστικό συναλλαγής (UnqTxIdr)

Ο πίνακας συμβατότητας δείχνει ποιες εκδόσεις παράγει, επικυρώνει και μετατρέπει μεταξύ τους το Pain001.

Μήνυμα Κατεύθυνση Σκοπός
pain.001 Από την επιχείρηση στην τράπεζά της Δίνει εντολές μεταφοράς (στέλνει χρήματα)
pain.002 Από την τράπεζα στην επιχείρηση Αναφέρει την κατάσταση ενός pain.001 ή pain.008: αποδεκτό, μερικώς αποδεκτό ή απορριφθέν, με κωδικούς αιτιολογίας
pain.008 Από την επιχείρηση στην τράπεζά της Δίνει εντολές άμεσης χρέωσης (εισπράττει χρήματα βάσει εξουσιοδότησης)
pacs.008 Από τράπεζα σε τράπεζα Η διατραπεζική μεταφορά στην οποία μετατρέπεται μια εντολή pain.001
MT101 Επιχείρηση ή τράπεζα, μέσω Swift Το παλαιό μήνυμα κειμένου «Request for Transfer» που αντικαθιστά το pain.001. Το Swift ανέβαλε τον Αύγουστο του 2026 την κατάργηση της διατραπεζικής αναμετάδοσης MT101 (Swift)· δείτε Από το MT101 στο pain.001

Το γλωσσάριο εξηγεί με απλά λόγια το υπόλοιπο λεξιλόγιο του ISO 20022.

Γιατί οι τράπεζες απορρίπτουν αρχεία pain.001#

Ένα αρχείο μπορεί να είναι έγκυρο XML και παρ' όλα αυτά να απορριφθεί. Οι έλεγχοι γίνονται σε επίπεδα:

  1. Σχήμα: το αρχείο πρέπει να επικυρώνεται με το επίσημο XSD της έκδοσής του.
  2. Ποιότητα δεδομένων: τα IBAN περνούν τον έλεγχο ψηφίων ελέγχου, τα BIC είναι σωστά σχηματισμένα, οι ημερομηνίες και τα ποσά είναι έγκυρα, και τα NbOfTxs και CtrlSum συμφωνούν με τις πληρωμές.
  3. Κανόνες συστήματος: το SEPA, το CBPR+ και τα εγχώρια συστήματα προσθέτουν δικούς τους περιορισμούς, όπως το επιτρεπόμενο σύνολο χαρακτήρων ή τη δομημένη ταχυδρομική διεύθυνση.
  4. Προφίλ και κανάλι της τράπεζάς σας: κάθε τράπεζα δημοσιεύει δικές της οδηγίες χρήσης πέρα από το σύστημα.

Το Pain001 ελέγχει τα τρία πρώτα επίπεδα πριν το αρχείο φτάσει στην τράπεζα και δηλώνει καθαρά ότι το τέταρτο το επιβεβαιώνει η τράπεζα.

Πώς δημιουργείτε ένα αρχείο pain.001#

pain001 -t pain.001.001.09 -d payments.csv -o out/

Η τεχνική τεκμηρίωση καλύπτει κάθε επιλογή, και οι συχνές ερωτήσεις απαντούν σε όσα ρωτούν συχνότερα οι ομάδες treasury, λειτουργιών και ανάπτυξης.

Πηγές#