ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ

ΘΕΜΑ: Τροποποίηση της Απόφασης Διοικητή ΑΑΔΕ Α.1098/13-7- 2022 «Καθορισμός τεχνικών προδιαγραφών (πρωτόκολλο επικοινωνίας) και λοιπές λειτουργίες, για την διασύνδεση μεταξύ Φορολογικών Ηλεκτρονικών Μηχανισμών και EFT/POS τερματικών. Υλοποίηση επί της αρχής «είσπραξη μέσω κάρτας – υποχρεωτική έκδοση απόδειξης από Φ.Η.Μ». (Β’3940)

ΑΠΟΦΑΣΗ

Ο ΔΙΟΙΚΗΤΗΣ ΤΗΣ Α.Α.Δ.Ε.

Έχοντας υπόψη:

1. Τις διατάξεις:

α)

Tων άρθρων 12 και 40 του ν.4308/2014 (Α΄251), όπως ισχύει.

β)

Των άρθρων 15 & 15Α του ν.4174/2013 (Α΄170), όπως προστέθηκε με τις διατάξεις του ν.4646/2019 (Α’201) και ισχύει.

γ)

της υπό στοιχεία Α.1098/13-7-2022 Απόφασης του Διοικητή της Ανεξάρτητης Αρχής Δημοσίων Εσόδων «Καθορισμός τεχνικών προδιαγραφών (πρωτόκολλο επικοινωνίας) και λοιπές λειτουργίες, για την διασύνδεση μεταξύ Φορολογικών Ηλεκτρονικών Μηχανισμών και EFT/POS τερματικών. Υλοποίηση επί της αρχής «είσπραξη μέσω κάρτας – υποχρεωτική έκδοση απόδειξης από Φ.Η.Μ». (Β’3940) όπως αυτή έχει τροποποιηθεί με την υπό στοιχεία Α.1190/30-12-2022 Απόφαση του Διοικητή της Ανεξάρτητης Αρχής Δημοσίων Εσόδων (Β’6993).

δ)της υπό στοιχεία Α.1138/12.6.2020 κοινής απόφασης του Υπουργού Οικονομικών και του Διοικητή της Ανεξάρτητης Αρχής Δημοσίων Εσόδων «Καθορισμός της έκτασης εφαρμογής, του χρόνου και της διαδικασίας ηλεκτρονικής διαβίβασης δεδομένων στην Ανεξάρτητη Αρχή Δημοσίων Εσόδων, καθώς και κάθε άλλου αναγκαίου θέματος για την εφαρμογή των διατάξεων του άρθρου 15Α του ν.4174/2013 (Κ.Φ.Δ.)» (Β’2470).

ε)

της υπό στοιχεία Α.1024/31.1.2020 απόφασης του Διοικητή της Ανεξάρτητης Αρχής Δημοσίων Εσόδων «Συμπληρωματικές τεχνικές προδιαγραφές πρωτοκόλλου επικοινωνίας και κρυπτογράφησης για την διαβίβαση δεδομένων στο πληροφοριακό σύστημα των ΦΗΜ» (Β΄317).

στ)

της υπό στοιχεία Α.1011/2020 απόφασης του Διοικητή Ανεξάρτητης Αρχής Δημοσίων Εσόδων «Απόσυρση από την χρήση μοντέλων Φορολογικών Ηλεκτρονικών Μηχανισμών (ΦΗΜ), που έλαβαν άδεια καταλληλότητας με βάση τις Α.Υ.Ο.Ο. ΠΟΛ.1234/9.10.2002 (Β΄1362) και ΠΟΛ.1135/26-10-2005 (Β΄1592), εκτός των Ε.Α.Φ.Δ.Σ.Σ. και των ΑΔΗΜΕ Ταξιμέτρων» (Β΄85).

ζ)

Της υπό στοιχεία ΠΟΛ.1166/2018 απόφασης του Διοικητή Ανεξάρτητης Αρχής Δημοσίων Εσόδων «Τεχνικές προδιαγραφές πρωτοκόλλου επικοινωνίας και κρυπτογράφησης για την διαβίβαση δεδομένων στο πληροφοριακό σύστημα των ΦΗΜ» (Β΄3603).

η)

Της υπό στοιχεία Α.Υ.Ο. ΠΟΛ.1220/2012 (Β ́3517) «Κωδικοποίηση – Συμπλήρωση τεχνικών προδιαγραφών Φορολογικών Ηλεκτρονικών Μηχανισμών και συστημάτων. Διαδικασίες χρήσης και λειτουργίας τους. Προδιαγραφές αποστελλομένων αρχείων στην ΓΓΠΣ.»

θ)

Της υπό στοιχεία Α.Υ.Ο ΠΟΛ.1221/2012 (Β΄ 3513) «Αναβάθμιση λογισμικών υποστήριξης των Ε.Α.Φ.Δ.Σ.Σ.-Καθορισμός αποστελλομένων αρχείων δεδομένων των φορολογικών στοιχείων στην ΓΓΠΣ κατ΄ εφαρμογή των διατάξεων του άρθρου 20 του ν.3842/2010 (Α΄58)»

ι)

Της υπό στοιχεία Α.1173/7-12-2022 απόφασης του Διοικητή Ανεξάρτητης Αρχής Δημοσίων Εσόδων «Τροποποίηση τεχνικών προδιαγραφών ΦΗΜ.» (Β’6953)

ια)

του Κεφαλαίου Α΄ του Μέρους Πρώτου του ν.4389/2016 «Επείγουσες διατάξεις για την εφαρμογή της συμφωνίας δημοσιονομικών στόχων και διαρθρωτικών μεταρρυθμίσεων και άλλες διατάξεις»(Α΄94)

2. Το με αριθμό C (2012) 4961 έγγραφο της Ευρωπαϊκής Επιτροπής με το οποίο μας γνωστοποιήθηκαν παρατηρήσεις επί της κοινοποίησης 2012/266/GR

3. Το με αριθμό C(2012) 4967 έγγραφο της Ευρωπαϊκής Επιτροπής με το οποίο μας γνωστοποιήθηκαν παρατηρήσεις επί της κοινοποίησης 2012/267/GR

4. Την έγκριση της Ευρωπαϊκής Επιτροπής επί της κοινοποίησης 2022/183/GR, για την αποδοχή της διαδικασίας του επείγοντος, με το υπ. αριθμ. GROW/E3/BH/as (2022)3027420/12.04.2022 έγγραφο αυτής προς τον Πληρεξούσιο Υπουργό της Μόνιμης Αντιπροσωπίας της Ελλάδος στις Βρυξέλλες και το οποίο κοινοποιήθηκε εις εμάς μέσω του ΕΛΟΤ.

5. Την υπό στοιχεία αριθ. Δ.ΟΡΓ.Α 1125859 ΕΞ 2020/23.10.2020 απόφαση του Διοικητή της Ανεξάρτητης Αρχής Δημοσίων Εσόδων «Οργανισμός της Ανεξάρτητης Αρχής Δημοσίων Εσόδων (Α.Α.Δ.Ε.)» (Β΄4738)

6. Την υπό στοιχεία αριθμ. 1. της 20.1.2016 πράξη του Υπουργικού Συμβουλίου «Επιλογή και διορισμός Γενικού Γραμματέα της Γενικής Γραμματείας Δημοσίων Εσόδων του Υπουργείου Οικονομικών» (Υ.Ο.Δ.Δ. 18) σε συνδυασμό με τις διατάξεις του πρώτου εδαφίου της παρ. 10 του αριθμού 41 του ν. 4389/2016, τις αποφάσεις υπ΄αριθμ. 39/3/30.11.2017 (Υ.Ο.Δ.Δ. 689) του Συμβουλίου Διοίκησης της Α.Α.Δ.Ε. και υπό στοιχεία 5294ΕΞ2020/17.01.2020 του Υπουργού Οικονομικών «Ανανέωση της θητείας του Διοικητή της Ανεξάρτητης Αρχής Δημοσίων Εσόδων»(Υ.Ο.Δ.Δ. 27)

7. Το πόρισμα της Ομάδας Διοίκησης Έργου στην ΑΑΔΕ για την εκπόνηση των προδιαγραφών της διασύνδεσης ταμειακών μηχανών με τερματικά POS, στο πλαίσιο της μεταρρύθμισης 16614 για την αναμόρφωση και τη διασύνδεση των ταμειακών μηχανών με τη φορολογική διοίκηση, που υλοποιείται στα πλαίσια του Εθνικού Σχεδίου Ανάκαμψης και Ανθεκτικότητας «Ελλάδα 2.0»

8. Την ανάγκη διασύνδεσης των ΦΗΜ με τα EFT/POS Τερματικά, για την διασφάλιση της έκδοσης των φορολογικών συναλλαγών μέσω της πληρωμής με κάρτα για την αποτελεσματική φορολογική παρακολούθηση αυτών και την περιστολή της φοροδιαφυγής.

9. Το γεγονός ότι, από τις διαδικασίες της απόφασης αυτής, δεν προκαλείται δαπάνη σε βάρος Προϋπολογισμού Α.Α.Δ.Ε.

ΑΠΟΦΑΣΙΖΟΥΜΕ

Τροποποιούμε στην Απόφαση Διοικητή ΑΑΔΕ Α.1098/13-7-2022 όπως ισχύει, το Παράρτημα, σε ότι αφορά στις επικοινωνίες EFTPOS με το ΠΣ ΦΗΜ Esend, όπως αυτό επισυνάπτεται στην παρούσα Απόφαση.

Η παρούσα απόφαση ισχύει από τη δημοσίευσή της στην Εφημερίδα της Κυβερνήσεως.

Η απόφαση αυτή, να δημοσιευθεί στην Εφημερίδα της Κυβερνήσεως.

Ο ΔΙΟΙΚΗΤΗΣ ΤΗΣ Α.Α.Δ.Ε.ΓΕΩΡΓΙΟΣ ΠΙΤΣΙΛΗΣ

ΠΙΝΑΚΑΣ ΑΠΟΔΕΚΤΩΝ

ΑΠΟΔΕΚΤΕΣ ΓΙΑ ΕΝΕΡΓΕΙΑ

1. Εθνικό Τυπογραφείο (ηλεκτρονική διεύθυνση “webmaster.et@et.gr”) για τη δημοσίευση της απόφασης

2. Σύνδεσμος Εισαγωγέων και Κατασκευαστών Ταμειακών Μηχανών (ΣΕΚΤ) –Λ. Αθηνών 165 ΤΚ 12461 Χαϊδάρι, για την ενημέρωση των μελών του.

3. Σύνδεσμος Επιχειρήσεων Πληροφορικής Επικοινωνιών Ελλάδας (ΣΕΠΕ) Αμβροσίου Φραντζή 19 Τ.Κ. 11743 Αθήνα, για την ενημέρωση των μελών του.

4. ΔΙ.Σ.ΤΕ.ΠΛ. (με παράκληση ανάρτησης στην ιστοσελίδα της Α.Α.Δ.Ε.)

5. Κατασκευαστές EFTPOS

ΑΠΟΔΕΚΤΕΣ ΓΙΑ ΚΟΙΝΟΠΟΙΗΣΗ

1. Υπουργείο Οικονομικών

α)

Γραφείο κ. Υπουργού

β)Γραφείο κ. Υφυπουργού

γ)

Γραφείο Ειδικού Γραμματέα Σ.Δ.Ο.Ε.

δ)

Κεντρική Υπηρεσία Σ.Δ.Ο.Ε. και Περιφερειακές Δ/νσεις

2. Ανεξάρτητη Αρχή Δημοσίων Εσόδων:

α)

Φορολογικές Περιφέρειες Αθηνών, Πειραιώς, Θεσσαλονίκης, Πατρών

β)

ΔΙ.Π.Α.Ε.Ε.

γ)

Όλες οι Υ.Ε.Δ.Δ.Ε.

δ)

Δ.Α.Φ.Ε

3. Ε.Μ.Π.-Σχολή Ηλεκτρολόγων Μηχανικών &Μηχανικών Υπολογιστών –Τομέας Ηλεκτρικής Ισχύος –Εργαστήριο Υψηλών Τάσεων, Ηρώων Πολυτεχνείου 9, Πολυτεχνειούπολη Ζωγράφου, 15780 Ζωγράφου, Αθήνα

4. Ε.Μ.Π. –Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών–Τομέας Συστημάτων Μετάδοσης Πληροφορίας & Τεχνολογίας Υλικών – Εργαστήριο Ασυρμάτων Ζεύξεων και Ηλεκτρομαγνητικής Συμβατότητας, Ηρώων Πολυτεχνείου 9, Πολυτεχνειούπολη Ζωγράφου, 15773 Ζωγράφου, Αθήνα

ΙΙΙ. ΕΣΩΤΕΡΙΚΗ ΔΙΑΝΟΜΗ

1. Γραφείο κ.Διοικητή της Α.Α.Δ.Ε.

2. Διεύθυνση Νομικής Υποστήριξης

3. Διεύθυνση Επικοινωνίας

4. Προϊσταμένους των Γενικών Διευθύνσεων της Α.Α.Δ.Ε.

5. Διευθύνσεις της Γενικής Διεύθυνσης Φορολογίας

6. Διευθύνσεις της Γενικής Διεύθυνσης Φορολογικών Λειτουργιών

7. Διεύθυνση Διαχείρισης Υποδομών

8. Διεύθυνση Υπηρεσιών Δεδομένων

9. Αυτοτελές Tμήμα Ασφάλειας Γ.Δ.ΗΛΕ.Δ.

ΠΑΡΑΡΤΗΜΑ

ΔΙΑΣΥΝΔΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΕΚΔΟΣΗΣ ΣΤΟΙΧΕΙΩΝ ΛΙΑΝΙΚΗΣ ΠΩΛΗΣΗΣ ΚΑΙ ΤΕΡΜΑΤΙΚΩΝ ΑΠΟΔΟΧΗΣ ΚΑΡΤΩΝ ΠΛΗΡΩΜΩΝ (EFTPOS)

Βασικό πρωτόκολλο επικοινωνίας

Έκδοση : 1.08

Ημερομηνία: : 6 Ιουνίου 2023

Περιεχόμενα

Εισαγωγή 3

Το γενικό σχήμα 3

Η φυσική σύνδεση 5

Σύνδεση μέσω TCP/IP 5

Σύνδεση μέσω USB, Bluetooth και RS232 5

Ροή και μηνύματα συνοπτικά 6

4.1. Συνήθης ροή αγοράς (ή λοιπών συναλλαγών) 7

4.2. Ροή προσωρινής καταχώρησης εκδοθείσας απόδειξης ή τιμολογίου από

την ECR στο EFTPOS 9

4.3. Ροή σε περίπτωση αδυναμίας επεξεργασίας συναλλαγής 9

4.4. Στοιχειώδης ροή ηχούς 9

4.5. Ροή εκτέλεσης εντολής ρυθμίσεων 9

4.6. Ροή επανάληψης [RESULT] τελευταίας συναλλαγής 10

4.7. Ροή επανάληψης [RESULT] για όλες τις εκκρεμείς συναλλαγές 11

Ροή και μηνύματα αναλυτικά 14

Σύνταξη των μηνυμάτων 14

Μήνυμα [ECHO] 15

Μήνυμα [AMOUNT] 16

Μήνυμα [CONFIRMED] 18

Μήνυμα [RESULT] 18

5.6. Μήνυμα [ACK-RESULT] 26

Μήνυμα [REGRECEIPT] 27

Μήνυμα [RESEND-ONE] 28

Μήνυμα [RESEND-ALL] 29

Μήνυμα [ERROR] 30

5.11. Μήνυμα [SUCCESS] 32

Μήνυμα [CONTROL] 33

Μηνύματα λοιπών συναλλαγών 34

Χειρισμός σφαλμάτων 36

Περιγραφή του μηχανισμού MAC 39

7. Σύνοψη χειρισμών αντιστοίχισης συνόλων 41

Πιθανά σενάρια βλαβών και διαδικασίες αντιμετώπισής τους 44

Έκδοση και διάθεση αρχικού κλειδιού (master key-ΜΚ) 47

Λήψη του AESΚΕΥ από το ΠΣΦΗΜ για τους ΦΗΜ 50

1. Εισαγωγή

Το κείμενο περιγράφει τις ελάχιστες απαιτήσεις υλοποίησης για την επικοινωνία των συστημάτων έκδοσης στοιχείων λιανικής πώλησης (ΦΗΜ) με τα τερματικά αποδοχής καρτών (EFTPOS) που βρίσκονται στο πεδίο. Σημαντικό ζητούμενο είναι η εξασφάλιση παρουσίας στα φορολογικά συστήματα κάθε συναλλαγής που έχει εκτελεστεί στα EFTPOS. Ο όρος ECR (“Electronic Cash Register”) ή ο όρος “ταμειακή μηχανή” ή ο όρος “ΦΗΜ” που χρησιμοποιούνται στην τεχνική περιγραφή, θεωρούνται στα πλαίσια του κειμένου ταυτόσημοι με οποιοδήποτε νόμιμο φορολογικό σύστημα έκδοσης αποδείξεων λιανικής σύμφωνα με την ισχύουσα νομοθεσία (φορολογικές ταμειακές μηχανές, ΑΔΗΜΕ, ΕΑΦΔΣΣ).

2. Το γενικό σχήμα

Η διασύνδεση αφορά τρία συστήματα: ECR, EFTPOS και ΠΑΡΟΧΟΥΣ ΥΠΗΡΕΣΙΩΝ ΠΛΗΡΩΜΩΝ (ΒΑΝΚ):

Εικόνα 1

Η συνήθης ροή επικοινωνίας ακολουθεί 5 βήματα:

1. H συναλλαγή ξεκινά από την ECR. Ο χειριστής επιλέγει πληρωμή με κάρτα και η ECR στέλνει σχετικό αίτημα στο EFTPOS.

2. Το EFTPOS επιβεβαιώνει αμέσως στην ECR τη λήψη του αιτήματος θέτοντάς της σε αναμονή του τελικού αποτελέσματος.

3. Το EFTPOS συνδέεται στον πάροχο υπηρεσιών πληρωμών για online έγκριση ή εγκρίνει offline ή απορρίπτει offline ή διακόπτει τη συναλλαγή.

4. Το EFTPOS αποκρίνεται στην ECR με το τελικό αποτέλεσμα: απόρριψη ή έγκριση. Στην έγκριση αποστέλλει στοιχεία της συναλλαγής (όπως αριθμό συναλλαγής, κωδικό έγκρισης κλπ). Το τελικό αποτέλεσμα στέλνεται άμεσα στην ECR, πριν την έναρξη εκτύπωσης από το EFTPOS. Εφόσον η ECR το υποστηρίζει, στα στοιχεία της συναλλαγής περιλαμβάνονται και δεδομένα για εκτύπωση της απόδειξης του EFTPOS από την ECR

5. Η ECR επιβεβαιώνει τη λήψη του τελικού αποτελέσματος. Αν αυτή η επιβεβαίωση δε φτάσει στο EFTPOS για οποιοδήποτε λόγο, το EFTPOS θέτει σήμανση στη συναλλαγή αυτή ότι δεν έχει πλήρως διεκπεραιωθεί ως προς την ECR.

Βασικές παραδοχές και περιορισμοί :

1. Μόνο από την ECR μπορεί να ξεκινήσει νέα χρεωστική συναλλαγή (αγορά, αγορά με δόσεις, καταχώρηση προέγκρισης, mailorder). Το EFTPOS έχει κλειδωμένο πληκτρολόγιο και μενού για πραγματοποίηση χρεωστικών συναλλαγών.

2. Αν εξαιτίας βλάβης του ECR ή βλάβης της επικοινωνίας ECR-EFTPOS, το EFTPOS έχει πραγματοποιήσει χρεωστικές συναλλαγές οι οποίες δεν έχουν καταχωρηθεί στην ECR, τότε προβλέπεται υποχρεωτική διαδικασία αποστολής των συναλλαγών αυτών από το EFTPOS στην ECR (βλ. 4.6, 4.7 ) μετά την αποκατάσταση της βλάβης της ECR. Το EFTPOS διατηρεί επί μακρόν τα πιο βασικά στοιχεία των συναλλαγών αυτών σε ξεχωριστό αρχείο για σκοπούς εκ των υστέρων ελέγχου και επαλήθευσης.

3. Δεν προβλέπεται διακοπή της επεξεργασίας στο EFTPOS με εντολή της ECR. Αν κατά το βήμα 3 η ECR θελήσει διακοπή της επεξεργασίας, τότε αυτό γίνεται χειροκίνητα στο EFTPOS.

4. To EFTPOS εξυπηρετεί μόνο ένα ECR αίτημα κάθε φορά, δεν τηρεί ουρά αναμονής αιτημάτων και ούτε μπορεί καν να αποκριθεί σε νέο αίτημα όσο διαρκεί η επεξεργασία του τρέχοντος.

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

6. Τα EFTPOS θα πρέπει να τηρούν αρχεία καταγραφής συμβάντων (log files) με την ακόλουθη προτεραιότητα και ανάλογα με τις δυνατότητές τους σε χώρο αποθήκευσης και υπολογιστική ισχύ:

a)

Προβλήματα επικοινωνίας ή λάθη συστήματος (υποχρεωτικά)

b)

Ενέργειες χειριστών που αφορούν τη διασύνδεση (υποχρεωτικά)

c)

Βασικά στοιχεία συναλλαγών (χρόνος/ποσό/sessionId/έκβαση)

d)

Πλήρη καταγραφή ανταλλασσόμενων μηνυμάτων

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

7. Στην περίπτωση που αποδίδεται στον εργαζόμενο φιλοδώρημα μέσω κάρτας, υπάρχει η δυνατότητα συγκεκριμένης επιλογής καταχώρισης φιλοδωρήματος στο EFTPOS και αυτόνομης εκτέλεσης με την πληκτρολόγηση του ποσού του φιλοδωρήματος (amount tip) για τη συγκεκριμένη προφορτωμένη ΑΛΠ. Προβλέπεται υποχρεωτική διαδικασία αποστολής των συναλλαγών αυτών από το EFTPOS στην ECR. Τα ποσά των φιλοδωρημάτων τηρούνται ως εκκρεμείς συναλλαγές και αποστέλλονται στην ECR ως πακέτα (tip amount).H ECR επιστρέφει μήνυμα ACK-RESULT στο EFTPOS για κάθε εκκρεμή εγγραφή, ώστε το EFTPOS να μπορεί να κλείσει πακέτο.

3. Η φυσική σύνδεση

Στη σύνδεση μεταξύ των μερών το EFTPOS ενεργεί ως “server” σε σχέση με την ECR και ως “client” σε σχέση με τον πάροχο υπηρεσιών πληρωμών.

3.1. Σύνδεση μέσω TCP/IP

Η σύνδεση μεταξύ EFTPOS και ECR μέσω TCP/IP γίνεται:

Με απευθείας σύνδεση ECR-EFTPOS. Παραδείγματα: σύνδεση σε δίκτυο LAN με καλώδια Ethernet, σύνδεση WIFI κλπ.

Μέσω συστήματος middleware για EFTPOS που δεν μπορούν να συνδεθούν με άλλο τρόπο.

middleware

To LAN switch μπορεί να είναι εξωτερική συσκευή ή ενσωματωμένο.

Στην περίπτωση σύνδεσης μέσω middleware, επειδή η local IP του EFTPOS κατά κανόνα είναι άγνωστη ή μη προσβάσιμη από την ECR, απαιτείται κάποια επιπλέον υλοποίηση, όπου τη σύνδεση στο middleware θα την ανοίγει το EFTPOS με ένα “logon” και θα την κρατά ανοικτή όσο χρειάζεται, μπαίνοντας το ίδιο σε βρόχο αναμονής αιτημάτων ECR. Tο middleware λειτουργεί ως απλός διαβιβαστής των μηνυμάτων.

3.2. Σύνδεση μέσω USB, Bluetooth και RS232

Υποστηρίζεται η σύνδεση μέσω USB, Bluetooth χωρίς να αλλάζει καθόλου το πρωτόκολλο επικοινωνίας.

Υποστηρίζεται επίσης η σύνδεση μέσω RS232, με μοναδική αλλαγή στο πρωτόκολλο την προσθήκη μιας μικρής συμβολοσειράς ως προθέματος σε κάθε ανταλλασσόμενο μήνυμα.

Εικόνα 3

4. Ροή και μηνύματα συνοπτικά

Χρησιμοποιώντας συμβολικά ονόματα, τα μηνύματα που ανταλλάσσονται μεταξύ ECR και EFTPOS είναι:

[AMOUNT]:

Αίτημα έναρξης αγοράς (ECR->EFTPOS)

[CONFIRMED]:

Επιβεβαίωση λήψης αιτήματος (EFTPOS->ECR)

[ERROR]:

Αδυναμία εξυπηρέτησης αιτήματος (EFTPOS->ECR)

[RESULT]:

Αποτέλεσμα της συναλλαγής (EFTPOS->ECR)

[ACK-RESULT]:

Επιβεβαίωση λήψης του [RESULT] (ECR->EFTPOS)

[RESEND-ΟΝΕ]:

Αίτημα εκ νέου αποστολής [RESULT] μίας συναλλαγής (ECR->EFTPOS)

[RESEND-ALL]:

Αίτημα αποστολής [RESULT] των εκκρεμών πιστωτικών συναλλαγών που εκτελέστηκαν αυτόνομα από EFTPOS χωρίς χρήση ECR, των εκτελεσμένων συναλλαγών που αφορούν σε προφορτωμένες αποδείξεις και τιμολόγια που έχουν ήδη εκδοθεί από την ECR, καθώς και των χρεωστικών συναλλαγών που εκτελέστηκαν από το EFTPOS μη συνδεδεμένο

με την ECR, εξαιτίας της βλάβης της ECR ή εξαιτίας βλάβης της διασύνδεσης EFTPOS-ECR.

(ECR ->EFTPOS)

[ECHO]:

Δοκιμή επικοινωνίας (ECR->EFTPOS->ECR)

[CONTROL]:

Εντολή για διάφορες ρυθμίσεις (ECR->EFTPOS)

[SUCCESS]:

Γενικό μήνυμα επιτυχίας (EFTPOS->ECR)

[REGRECEIPT]:

Αίτημα φόρτωσης απόδειξης ή τιμολογίου για μεταγενέστερη χρεωστική συναλλαγή (ECR- >EFTPOS)

Προαιρετικές επεκτάσεις για άλλες συναλλαγές:

[AMOUNT-INSTALM]: Αίτημα έναρξης αγοράς με χρήση δόσεων

(ECR->EFTPOS)

[AMOUND-REFUND]: Αίτημα έναρξης επιστροφής (ECR->EFTPOS)

[AMOUNT-VOID]: Αίτημα έναρξης ακύρωσης (ECR->EFTPOS)

[AMOUNT-COMPLETION]: Αίτημα έναρξης καταχώρησης προέγκρισης

(ECR->EFTPOS)

[AMOUNT-ΜAIL]: Αίτημα έναρξης συναλλαγής MAIL ORDER

(ECR->EFTPOS)

Οι ακόλουθες 6 ροές μηνυμάτων είναι επιτρεπτές, οι οποίες εκτελούνται πάντα στην ίδια σύνδεση (στο ίδιο session).

4.1. Συνήθης ροή αγοράς (ή λοιπών συναλλαγών)

[t0]

EFTPOS 🡨 [AMOUNT] 🡨 ECR

Εκτός του ποσού αγοράς η ECR στέλνει και άλλες πληροφορίες, όπως αριθμό απόδειξης, αριθμό ταμειακής, κωδικό ταμία κλπ

[t1]

EFTPOS 🡪 [CONFIRMED] 🡪 ECR Το EFTPOS επιβεβαιώνει αμέσως τη λήψη, και η ECR μπαίνει σε αναμονή αποτελέσματος.

t1-t0 < 2 sec

Το EFTPOS επεξεργάζεται το αίτημα, ζητά εισαγωγή κάρτας, συνδέεται για online έγκριση κλπ.

[t2]

EFTPOS 🡪 [RESULT] 🡪 ECR

Το EFTPOS απαντά με το αποτέλεσμα, που μπορεί να είναι απόρριψη ή έγκριση. Αν είναι έγκριση, αποστέλλει επιπλέον στοιχεία της συναλλαγής (π.χ. κωδικό έγκρισης, αρ. συναλλαγής κλπ)

Συνήθως

t2-t1 < 60 sec

[t3]

EFTPOS 🡨 [ACK-RESULT] 🡨 ECR

H ECR επιβεβαιώνει τη λήψη του τελικού αποτελέσματος και το EFTPOS καταχωρεί (εφόσον βέβαια αφορούσε έγκριση) ότι η συναλλαγή έχει διεκπεραιωθεί πλήρως ως προς την ECR.

t3-t2 < 2 sec

Τα ανωτέρω τέσσερα μηνύματα ([AMOUNT], [CONFIRMED], [RESULT], [ACKRESULT]) φέρουν έναν κοινό 6-ψήφιο κωδικό (session number), διαφορετικό για κάθε νέα συναλλαγή, τον οποίο δημιουργεί η ECR και χρησιμεύει ως στοιχείο ελέγχου της συνάφειας των μηνυμάτων και αποφυγής κρίσιμων λαθών.

Σχηματική απεικόνιση της συνήθους ροής παρατίθεται στην Εικόνα 4 .

Εικόνα 4

4.2. Ροή προσωρινής καταχώρησης εκδοθείσας απόδειξης ή τιμολογίου από την ECR στο EFTPOS

[t0]

EFTPOS 🡨 [REGRECEIPT] 🡨 ECR

H ECR παρέχει πληροφορία για ΑΛΠ ή για τιμολόγιο που μόλις εξέδωσε, έτσι ώστε το EFTPOS να τη χρησιμοποιήσει σε ετεροχρονισμένη συναλλαγή (π.χ. σε παράδοση κατ’ οίκον)

[t1]

EFTPOS 🡪 [SUCCESS] 🡪 ECR

Η ενέργεια αναμένεται πάντα επιτυχής

(εκτός περιπτώσεων τεχνικού προβλήματος)

t1-t0 < 2 sec

4.3. Ροή σε περίπτωση αδυναμίας επεξεργασίας συναλλαγής

[t0]

EFTPOS 🡨 [AMOUNT] 🡨 ECR

[t1]

EFTPOS 🡪 [ERROR] 🡪 ECR

Το EFTPOS επιβεβαιώνει αμέσως τη λήψη, όμως με κωδικό λάθους, δηλώνοντας στην ECR ότι η επεξεργασία δεν είναι δυνατή.

t1-t0 < 2 sec

4.4. Στοιχειώδης ροή ηχούς

[t0]

EFTPOS 🡨 [ECHO] 🡨 ECR

[t1]

EFTPOS 🡪 [ECHO] 🡪 ECR

t1-t0 < 2 sec

4.5. Ροή εκτέλεσης εντολής ρυθμίσεων

[t0]

EFTPOS 🡨 [CONTROL] 🡨 ECR

Δίνεται η δυνατότητα ρύθμισης από την ECR ορισμένων παραμέτρων του EFTPOS που αφορούν τη διασύνδεση με

την ECR.

[t1]

EFTPOS 🡪[SUCCESS ή ERROR]🡪 ECR

t1-t0 < 2 sec

4.6. Ροή επανάληψης [RESULT] τελευταίας συναλλαγής

[t0]

EFTPOS 🡨 [RESEND-ΟΝΕ] 🡨 ECR

Αν η συναλλαγή εγκρίθηκε στο EFTPOS αλλά λόγω προβλήματος σύνδεσης η ECR δε λαμβάνει την απάντηση [RESULT] ή το EFTPOS δε λαμβάνει την απάντηση [ACK-RESULT] ο χειριστής της ECR μπορεί να επιλέξει αυτή την ενέργεια ώστε να ολοκληρωθεί η συνήθης ροή.

[t1]

EFTPOS 🡪 [RESULT] 🡪 ECR

Το EFTPOS αναζητά στο πακέτο συναλλαγών την τελευταία συναλλαγή και εφόσον ταιριάζει με τα δεδομένα του αιτήματος αποστέλλει άμεσα τα στοιχεία της. Διαφορετικά επιστρέφει απόρριψη.

t1-t0 < 5 sec

[t2]

EFTPOS 🡨 [ACK-RESULT] 🡨 ECR

H ECR επιβεβαιώνει τη λήψη του τελικού αποτελέσματος και το EFTPOS καταχωρεί (εφόσον βέβαια αφορούσε έγκριση) ότι η συναλλαγή έχει διεκπεραιωθεί πλήρως ως προς την ECR.

t2-t1 < 2 sec

Σχηματική απεικόνιση της ροής επανάληψης [RESULT] παρατίθεται στην Εικόνα 5 .

POS saves the

transaction as approved

[RESUL T] 🡪 X [connection lost]

t2

X 🡨[ACK-RESULT] (amt-2,session-2)

t3 ί

[connection restored]

[RESULT]🡪

🡨[ACK-RESULT] (amt-2,session-2)

POS marks the transaction as “ECR completed”

POS TRANSACTION FILE

TRANS ID

AMT

...

ECR SESSION

ECR COMPLETED

ID-1

amt-1

...

session-1

YES

ID-2

amt-2

session-2

NO(t2…t6) / YES(t6)

Εικόνα 5

4.7. Ροή επανάληψης [RESULT] για όλες τις εκκρεμείς συναλλαγές

[t0]

EFTPOS 🡨 [RESEND-ALL] 🡨 ECR

Αν το EFTPOS έχει αποθηκευμένες πιστωτικές συναλλαγές που εκτελέστηκαν αυτόνομα ή χρεωστικές συναλλαγές που ξεκίνησαν από το EFTPOS ως προφορτωμένες αποδείξεις (μέσω ροών REGRECEIPT) ή προφορτωμένα τιμολόγια της ECR , τότε το EFTPOS δεν επιτρέπει την επιλογή «ΑΠΟΣΤΟΛΗ ΠΑΚΕΤΟΥ», δηλαδή την εκκαθάριση των συναλλαγών από τον πάροχο υπηρεσιών πληρωμών και την πίστωση του εμπόρου.

Σε αυτήν την περίπτωση ο χειριστής της ECR θα πρέπει να ζητήσει από το EFTPOS μέσω ειδικής εντολής τη λήψη των εκκρεμών αυτών συναλλαγών.

[t1]

Το EFTPOS ξεκινά και στέλνει όσες συναλλαγές

t1-t0 < 5 sec

ήταν πιστωτικές κι εκτελέστηκαν αυτόνομα Στην περίπτωση αυτή επειδή δεν είχαν ECR sessionnumber , αυτό στέλνεται ως POSTXN.

ήταν χρεωστικές κι εκτελέστηκαν με βάση προφορτωμένες αποδείξεις ή προφορτωμένα τιμολόγια .

EFTPOS 🡪 [RESULT] 🡪 ECR

EFTPOS 🡨 [ACK-RESULT] 🡨 ECR

EFTPOS 🡪 [RESULT] 🡪 ECR

EFTPOS 🡨 [ACK-RESULT] 🡨 ECR

EFTPOS 🡪 [RESULT] 🡪 ECR

EFTPOS 🡨 [ACK-RESULT] 🡨 ECR

Κατά το [RESEND-ALL] δε στέλνονται δεδομένα εκτύπωσης ακόμη κι αν αυτή υποστηρίζεται από την ECR.

Το τελευταίο [RESULT] έχει μηδενικό ποσό, μηδενικό session number και είναι απόρριψη, σημαίνοντας τη λήξη της αποστολής.

Παράδειγμα επανάληψης ροής για εκκρεμείς συναλλαγές απεικονίζεται στην Εικόνα 6 . Το EFTPOS επαναλαμβάνει την αποστολή [RESULT] μόνο για 2 συναλλαγές:

Για την ΙD-3 , η οποία αφορά πιστωτική συναλλαγή

Για την ΙD-4 , η οποία ξεκίνησε από το EFTPOS καθώς αντιστοιχούσε σε απόδειξη που είχε ήδη εκδοθεί από την ECR και η οποία φορτώθηκε στο EFTPOS για την πληρωμή της με κάρτα.

EFTPOS TRANSACTION FILE

TRANS ID

AMT

...

ECR SESSION

ECR COMPLETED

ID-1

amt-1

...

session-1

YES

ID-2

amt-2

...

session-2

YES

ID-3

amt-3

...

-

NO

ID-4

amt-4

...

session-4

NO

ID-5

amt-5

...

session-5

YES

ID-6

amt-6

...

session-6

YES

EFTPOS

ECR

[RESEND-ALL]

Ο

ο i

ID-3

amt-3

...

POSTXN

YES (t2)

ID-4

amt-4

...

session-4

YES (t4)

Εικόνα 6

5. Ροή και μηνύματα αναλυτικά

5.1. Σύνταξη των μηνυμάτων

Κάθε μήνυμα αποτελείται από μια κεφαλίδα κι ένα κυρίως μέρος ως ακολούθως

BYTES

ΠΕΡΙΓΡΑΦΗ

0-1

MSG SIZE

(2 bytes, binary)

Το μέγεθος του μηνύματος σε bytes που ακολουθεί:

MSG SIZE: b0*256 + b1

2-4

DIRECTION INDICATOR

(3 bytes, ascii)

Χαρακτηρίζει την πηγή του μηνύματος:

ECR (από ECR προς EFTPOS)

EFTPOS (από EFTPOS προς ECR)

5-6

PROTOCOL VARIANT

(2 bytes, ascii)

Καθορίζει τη ροή και τη λειτουργία:

01: default λειτουργία (“variant 1”)

02: η ECR αναλαμβάνει την εκτύπωση της απόδειξης του EFTPOS (“variant 2”)

7-8

PROTOCOL VERSION

(2 bytes, ascii)

Καθορίζει τη σύνταξη στο σώμα του μηνύματος. Για το προτεινόμενο πρωτόκολλο η τιμή του είναι 10.

9-…

Κυρίως μέρος μηνύματος

(MSG SIZE-7)

Όπως προδιαγράφεται στη συνέχεια.

ΕΙΔΙΚΕΣ ΠΕΡΙΠΤΩΣΕΙΣ

Στη σύνδεση μέσω RS232 θα χρησιμοποιείται ως πρόθεμα ολόκληρου του μηνύματος (δηλαδή πριν και από το πρόθεμα μήκους) η συμβολοσειρά “ECR” ή “POS” αντιστοίχως και ως κατάληξη (δηλαδή ως τελευταίο byte του κυρίως μέρους) ένα ψηφίο LRC για συμπληρωματικό έλεγχο ακεραιότητας του μηνύματος (βλ. 5.14 ).

Στη σύνδεση μέσω middleware θα χρησιμοποιείται ως πρόθεμα ολόκληρου του μηνύματος η συμβολοσειρά “ACQ< 3-digits-acqId >TID <8-digits-POS-tid> ”, όπου ACQ θα είναι κάποιος καθορισμένος τριψήφιος κωδικός του φορέα εκκαθάρισης.

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

Ως field separator χρησιμοποιείται το ‘/’ και ως subfield separator το ‘:’. Ως escape χαρακτήρας ορίζεται ο ‘\’, ωστόσο στην πράξη δεν προκύπτει ανάγκη για χρήση escape χαρακτήρα. Έτσι το κυρίως μέρος κάθε μηνύματος ακολουθεί την εξής σύνταξη:

MSG BODY := < msg type >/< field >{/< field >{/ <field> }…} msg type := < letter >

field := {< letter >}< subfield >{:< subfield >{:< subfield >}…}

letter := A | B | C | … | Ζ

subfield := όπως προδιαγράφεται σε κάθε περίπτωση

(τύπος δεδομένων, πλήθος bytes, σημασία)

Για τους ορισμούς τύπων δεδομένων χρησιμοποιούνται οι ακόλουθες συντομογραφίες:

num – numeric, δεξιά στοίχιση και πλήρωση με 0 an – alphanumeric, δεν επιτρέποντα διαστήματα ούτε ειδικοί χαρακτήρες anp – alphanumeric, επιτρέπονται διαστήματα ans – alphanumeric, επιτρέπονται διαστήματα και ειδικοί χαρακτήρες

5.2. Μήνυμα [ECHO]

Στέλνεται από την ECR με επιλογή του χειριστή (συνήθως κατά την εγκατάσταση) για έλεγχο της σύνδεσης με το EFTPOS. Στην ηχώ προστίθενται το terminal ID και το EFTPOS application version. Επισημαίνεται ότι η εντολή αυτή αποστέλλεται από την ECR στο EFTPOS χωρίς κρυπτογράφηση.

Σύνταξη : ECR REQUEST:

X/ <text>

EFTPOS RESPONSE:

X/ <text>/T<tid> : <app-version>

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

text

anp

1..200

Ελεύθερο κείμενο, το οποίο αναμένεται το ίδιο στην απάντηση

tid

an

1..8

Terminal ID

app-version

ans

1..10

EFTPOS application version

Παράδειγμα :

ECR->EFTPOS: BYTES 23

00 17 |..

45 43 52 30 32 31 30 58 2F 48 65 6C 6C 6F 20 66 |ECR0210X/Hello f

72 6F 6D 20 45 43 52 |rom ECR

EFTPOS->ECR: BYTES 42

00 2A 50 4F 53 30 32 31 30 58 2F 48 65 6C 6C 6F |.*POS0210X/Hello

20 66 72 6F 6D 20 45 43 52 2F 54 36 34 39 39 39 | from ECR/T64999

39 39 39 3A 31 2E 35 2E 32 33 2E 30 |999:8.5.23.0

Ειδικότερα, επιτρέπεται να χρησιμοποιηθεί η ακόλουθη μορφή της εντολής

ECHO, προκειμένου να ενημερωθεί το EFTPOS από την ECR για τον αριθμό μητρώου της ECR, ώστε να μπορέσει το EFTPOS να υποβάλλει αίτηση στο ΠΣΦΗΜ Esend, για την λήψη του Master Key, όπως περιγράφεται στην παράγραφο 9:

X/INIT:ECRNumber

5.3. Μήνυμα [AMOUNT]

Στέλνεται από την ECR κατά την έναρξη μιας νέας αγοράς.

Σύνταξη :

ECR REQUEST:

A/S <session number> /F <amount>:< cur-code>:<cur-exp>

/D <datetime>/R<ecr-id> / H<operator-number> / T<receipt number>

/M <custom-data>{ / Q<mac> }

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

session number

an

6

Διαφορετικός για κάθε νέα αγορά 6- ψήφιος αριθμός. Μπορεί να είναι ακολουθιακός, ψευδοτυχαίος ή βάσει άλλης σύμβασης.

Το EFTPOS πρέπει να ελέγχει πως κάθε νέο αίτημα έρχεται με διαφορετικό session number από το προηγούμενο.

amount

num

1..12

Το ποσό της συναλλαγής

cur-code

num

3

Ο ISO 4217 κωδικός νομίσματος (978 για €)

cur-exp

num

1

Tα δεκαδικά του νομίσματος (2 για €)

datetime

num

14

Τρέχουσα ημ/νία και ώρα σε μορφή YYYYMMDDhhmmss

ecr-id

an

11

Αριθμός μητρώου ECR

operator-number

an

1..8

Κωδικός ταμία

receipt-number

an

1..8

Προοδευτικός αριθμός απόδειξης ECR

custom-data

ans

1..100

Δεδομένα που καθορίζονται ανά περίπτωση και τύπο ταμειακής.

Αν δε χρησιμοποιείται αρκεί να στέλνεται ένας χαρακτήρας του μηδενός (“M0”).

Σε συναλλαγές πληρωμής λογαριασμού τα custom-data περιλαμβάνουν ειδικό 12-ψήφιο κωδικό πληρωμής.

mac

an

8

T-DES mac μηχανισμός για τη βεβαίωση του γνησίου των ECR αιτημάτων. Το MAC υπολογίζεται επί του συνόλου του μηνύματος από το γράμμα-πρόθεμα μέχρι το ‘/Q’ (χωρίς αυτό).

Κατά σύμβαση χρησιμοποιούνται τα 4 πρώτα bytes του MAC (εκφρασμένα σε ASCII).

Το MAC είναι υποχρεωτικό. Είναι προαιρετικό μόνο σε καθεστώς συντήρησης του λογισμικού και επίλυσης προβλημάτων.

Παράδειγμα

ECR->EFTPOS: BYTES 81

00 51 |.Q

45 43 52 30 32 31 30 41 2F 53 30 30 31 30 30 38 |ECR0210A/S001008 2F 46 32 35 30 30 3A 39 37 38 3A 32 2F 44 32 30 |/F2500:978:2/D20

32 32 30 35 32 34 31 30 32 35 31 37 2F 52 41 42 |220524102517/RAB

43 30 30 31 31 31 32 32 32 2F 48 31 32 31 2F 54 |C00111222/H121/T

31 30 32 30 2F 4D 30 2F 51 35 39 44 31 39 45 37 |1020/M0/Q59D19E7

44 |D

5.4. Μήνυμα [CONFIRMED]

Στέλνεται άμεσα από το EFTPOS ως απάντηση στο αρχικό αίτημα αγοράς της ECR, επιβεβαιώνοντας ότι η επεξεργασία του βρίσκεται σε εξέλιξη.

Σύνταξη :

EFTPOS RESPONSE:

A/S <session number> /F <amount> / R<ecr-id> / T<receipt-number>

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

session number

an

6

Πρέπει να είναι τα ίδια με αυτό του [AMOUNT] και αυτό να ελέγχεται από την ECR.

amount

num

1..12

ecr-id

an

11

receipt-number

an

1..8

Παράδειγμα :

EFTPOS->ECR: BYTES 41

00 29 50 4F 53 30 32 31 30 41 2F 53 30 30 31 30 |.)POS0210A/S0010

30 38 2F 46 32 35 30 30 2F 52 41 42 43 30 30 31 |08/F2500/RABC001

31 31 32 32 32 2F 54 31 30 32 30 |11222/T1020

5.5. Μήνυμα [RESULT]

Στέλνεται από το EFTPOS ως τελική απάντηση στο αρχικό αίτημα αγοράς (ή άλλης συναλλαγής) της ECR σχετικά με την έκβαση της συναλλαγής.

Η απάντηση μπορεί να έρθει άμεσα (αν αφορά offline απόρριψη ή έγκριση), σε λίγα δευτερόλεπτα (τυπική περίπτωση online έγκρισης) ή ακόμη και περισσότερο από λεπτό αν καθυστερεί η online επικοινωνία ή η εισαγωγή PIN. Συνίσταται ρύθμιση timeout >150 sec στην ECR.

Σύνταξη

R/S <session number> / R<ecr-id> / T<receipt-number> { :<receipt-number> }

/ Μ<custom-data> /C<rsp- code> {/D <trans-data> {/P <prn-data> }}

Τo πεδίο <trans-data> επιστρέφεται μόνο εφόσον η συναλλαγή εγκρίθηκε, δηλ το < rsp-code> είναι 00.

Τo πεδίο <trans-data> συντίθεται από τα ακόλουθα στοιχεία:

<trans-data> = <card-type>:<txn-type>:<cardpan-masked>: <amount>:<amount-final>:<amount-tip> : <amount-loy >: <amount-cb >: <bankId ( Acqid ) >:<terminalId>: <batch-num>:<rrn>:<stan>:<authcode>: <trans-datetime>:<txn-ecr-status>

Τo πεδίο <prn-data> επιστρέφεται εφόσον α) η συναλλαγή εγκρίθηκε β) το protocol variant στην κεφαλίδα του μηνύματος [AMOUNT] ήταν 02 γ) το protocol variant στην κεφαλίδα του μηνύματος [RESULT] είναι επίσης 02 1 . Έχει συνήθως μέγεθος 1-4 Kb και συντίθεται από τις σειρές προς εκτύπωση μαζί με καθορισμένους χαρακτήρες μορφοποίησης, όπως προδιαγράφεται στη συνέχεια.

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

session number

an

6

Πρέπει να είναι τα ίδια με αυτά του [CONFIRMED] και αυτό να ελέγχεται από την ECR εκτός κι αν πρόκειται για την ακόλουθη εξαίρεση όπου τέτοιος έλεγχος δεν μπορεί να γίνει ή δεν είναι βέβαιο ότι θα πετύχει.

Εξαίρεση : σε περίπτωση που το μήνυμα [RESULT] έρχεται ως απάντηση σε μήνυμα [RESEND-ALL], το session number μπορεί να έχει την ειδική τιμή “POSTXN”, που σημαίνει ότι η συναλλαγή ξεκίνησε από το EFTPOS. Σε αυτή την περίπτωση τα στοιχεία:

ecr-id και receipt-number θα έχουν μηδενική τιμή αν η συναλλαγή πραγματοποιήθηκε μόνο στο EFTPOS.

ecr-id και receipt-number θα έχουν μη

ecr-id

an

11

receipt-number

(προοδευτικός αριθμός σήμανσης στις ΦΤΜ,ΑΔΗΜΕ,ΕΑ

ΦΔΣΣ/ΦΗΜΑΣ)

an

1..8

1 Μπορεί να πρέπει το POS να τυπώσει την απόδειξη πληρωμής με κάρτα, παρά την ικανότητα της ECR να το τυπώσει εκείνη. Τέτοια μπορεί να είναι η περίπτωση όπου το CVM της κάρτας απαιτεί υπογραφή του κατόχου της. Ειδικά σε υλοποιήσεις όπου η ECR εκτυπώνει μόνο το αντίγραφο απόδειξης πληρωμής με κάρτα του πελάτη, είναι αναγκαία η εκτύπωση του αντιγράφου για τον έμπορο της απόδειξης πληρωμής με κάρτα, από το EFTPOS.

μηδενική τιμή αν η συναλλαγή αντιστοιχεί σε προφορτωμένη απόδειξη ή τιμολόγιο που έχουν εκδοθεί από τον ΦΗΜ.

rsp-code

num

2

EFTPOS κωδικός έκβασης της συναλλαγής:

00: επιτυχία, συναλλαγή εγκρίθηκε

33: γενικός κωδικός απόρριψης

Σε ορισμένες υλοποιήσεις ο κωδικός έκβασης προσδιορίζει καλύτερα το λόγο της απόρριψης ως εξής:

03: user cancellation or timeout

04: declined by the terminal

05: declined by the host

06: communication problem

09: bank’s host unreachable

66: system error in EFTPOS

card-type

an

1..20

O τύπος της κάρτας (Visa, Mastercard κλπ)

txn-type

num

2

Τύπος συναλλαγής:

00: αγορά

01: ακύρωση

02: επιστροφή

03: καταχώρηση προέγκρισης

04: mail order

05: αγορά με δόσεις

card-panmasked

ans

14..19

Ο αριθμός της κάρτας με καλυμμένα τα ενδιάμεσα ψηφία.

amount

num

1..12

Το ποσό της συναλλαγής. Πρέπει να είναι το ίδιο με αυτό του [CONFIRMED] και αυτό να ελέγχεται από την ECR. Το πεδίο είναι θετικό αν πρόκειται για πληρωμή με κάρτα, ενώ είναι αρνητικό (έχει το πρόσημο μείον) αν πρόκειται για επιστροφή σε κάρτα.

amount-final

num

1..12

Μπορεί να διαφέρει από το amount σε περίπτωση loyalty με εξαργύρωση ή προσθήκης φιλοδωρήματος. Το πεδίο είναι

θετικό αν πρόκειται για πληρωμή με κάρτα, ενώ είναι αρνητικό (έχει το πρόσημο μείον) αν πρόκειται για επιστροφή σε κάρτα.

amount-tip

num

1..12

Ποσό φιλοδωρήματος

amount-loy

num

1..12

Ποσό εξαργύρωσης loyalty

amount-cb

num

1..12

Ποσό cashback

bankId ( Acqid)

num

1..3

Kωδικός του παρόχου υπηρεσιών πληρωμών ή της τελικής τράπεζας εκκαθάρισης.

Χρήσιμο σε διαμορφώσεις με περισσότερες τράπεζες εγκρίσεων (multiacquiring)

terminalId

an

1..8

Το terminal Id.

batch-num

num

1..6

Ο αριθμός πακέτου στο EFTPOS

rrn

num

0..12

Το rrn της συναλλαγής

Σε κάποιες υλοποιήσεις μπορεί να είναι κενό στην περίπτωση offline σ/γών.

stan

num

1..6

Ο αριθμός συναλλαγής στο EFTPOS

authcode

an

6..8

Ο κωδικός έγκρισης

trans-datetime

num

Hμ/νία και ώρα έγκρισης σε μορφή YYYYMMDDhhmmss

txn-ecr-status

num

1

Χαρακτηρίζει τη συναλλαγή ως προς την επικοινωνία με την ECR

0 – έναρξη από ECR – επιτυχία

1 - έναρξη από ECR – αποτυχία στην ολοκλήρωση (αρχικό RESULT)

2 – έναρξη στο EFTPOS με χρήση στοιχείων προφορτωμένης ΑΛΠ/ΑΠΥ/ τιμολογίου

3 – έναρξη στο EFTPOS με στοιχεία ΑΛΠ/ΑΠΥ/τιμολογίου τα οποία έχουν εντοπιστεί σε προγενέστερη εγγραφή του EFTPOS.

4 – έναρξη από EFTPOS χωρίς εισαγωγή στοιχείων ΑΛΠ/ΑΠΥ/τιμολογίου (αντιστοιχεί σε βλάβη της ECR).

5 – Αδυναμία επικοινωνίας ΕCR- EFTPOS λόγω βλάβης των επιμέρους συστημάτων διασύνδεσης (βλάβη υποδομής).

prn-data

ans

0..4Κb

Συντίθεται από σειρές προς εκτύπωση και

χαρακτήρες ελέγχου για ειδική μορφοποίηση ως ακολούθως:

0x0A - αλλαγή γραμμής

0x1Β 0x01 - εκτύπωση βασικού λογότυπου

0x1Β 0x02 - εκτύπωση 2 ου λογότυπου

(π.χ. loyalty)

0x1Β 0x03 - εκτύπωση εικονιδίου c- less

0x1Β 0x04 ως 0x1Β 0x06 δεσμευμένα για χρήση εικονιδίων

0x1Β 0x07 ως 0x1Β 0x09

δεσμευμένα για χρήση BAR/QR codes

0x1Β 0x0C - παύση για εκτύπωση αντιγράφου πελάτη

0x1Β 0x43 - στοίχιση κέντρο

0x1Β 0x52 - στοίχιση δεξιά

0x1Β 0x4C (‘L’) - στοίχιση αριστερά (default μετά από νέα γραμμή)

0x1Β 0x4E (‘Ν’) - χρήση χαρακτήρων κανονικού μεγέθους (default)

0x1Β 0x42 (‘Β’)- χρήση bold χαρακτήρων

0x1Β 0x53 (‘S’) - χρήση χαρακτήρων μικρού μεγέθους.

Ελληνικοί χαρακτήρες στέλνονται σε ISO- 8859-7. Κυριλλικοί σε ISO-8859-5.

Παραδείγματα

1. Παράδειγμα απόρριψης

[220524 184605] ECR connection from [10.1.101.129]

ECR->EFTPOS: BYTES 81

00 51 |.Q

45 43 52 30 31 31 30 41 2F 53 30 30 31 30 34 39 |ECR0110A/S001049 2F 46 32 35 30 30 3A 39 37 38 3A 32 2F 44 32 30 |/F2500:978:2/D20

32 32 30 35 32 34 31 37 34 32 33 31 2F 52 41 42 |220524174231/RAB 43 30 30 31 31 31 32 32 32 2F 48 31 32 31 2F 54 |C00111222/H121/T 31 30 34 34 2F 4D 30 2F 51 36 42 32 38 37 45 39 |1044/M0/Q6B287E9

35 |5

EFTPOS->ECR: BYTES 41

00 29 50 4F 53 30 31 31 30 41 2F 53 30 30 31 30 |.)POS0110A/S0010

34 39 2F 46 32 35 30 30 2F 52 41 42 43 30 30 31 |49/F2500/RABC001

31 31 32 32 32 2F 54 31 30 34 34 |11222/T1044

[220524 184606] ECR request

[220524 184610] TXN-C [1][552053xxxxxx9096][000000002500]

[220524 184616] Connecting (0) to [ ]

[220524 184618] T [280]===>

[220524 184619] <===H [128]

[AMOUNT]

[CONFIRMED] online authorization

[220524 184622] TXN-C declined (75) rrn=214430253013

EFTPOS->ECR: BYTES 42

00 2A 50 4F 53 30 31 31 30 52 2F 53 30 30 31 30 |.*POS0110R/S0010 34 39 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F |49/RABC00111222/ 54 31 30 34 34 2F 4D 30 2F 43 33 33 |T1044/M0/C33

[220524 184626] ECR connection closed

[RESULT]

2. Παράδειγμα έγκρισης (χωρίς αποστολή δεδομένων εκτύπωσης – “variant-1”)

[220524 185118] ECR connection from [10.1.101.129]

ECR->EFTPOS: BYTES 81 00 51 |.Q

45 43 52 30 31 31 30 41 2F 53 30 30 31 30 35 30 |ECR0110A/S001050

[AMOUNT]

2F 46 32 30 30 30 3A 39 37 38 3A 32 2F 44 32 30 |/F2000:978:2/D20

32 32 30 35 32 34 31 37 34 37 34 34 2F 52 41 42 |220524174744/RAB 43 30 30 31 31 31 32 32 32 2F 48 31 32 31 2F 54 |C00111222/H121/T

31 30 34 35 2F 4D 30 2F 51 31 45 44 45 43 43 44 |1045/M0/Q1EDECCD 39 |9

EFTPOS->ECR: BYTES 41

20,00€

00 29 50 4F 53 30 31 31 30 41 2F 53 30 30 31 30 |.)POS0110A/S0010

35 30 2F 46 32 30 30 30 2F 52 41 42 43 30 30 31 |50/F2000/RABC001

31 31 32 32 32 2F 54 31 30 34 35 |11222/T1045

[220524 185118] ECR request

[CONFIRMED]

[220524 185124] TXN-L [1][422164xxxxxx5257][2000]

[220524 185129] Connecting (0) to [ ]

[220524 185131] T [117]===>

online authorization

[220524 185135] TXN-L authorized (890753) rrn=214430253014

EFTPOS->ECR: BYTES 147

00 93 50 4F 53 30 31 31 30 52 2F 53 30 30 31 30 |..POS0110R/S0010 35 30 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F |50/RABC00111222/ 54 31 30 34 35 2F 4D 30 2F 43 30 30 2F 44 56 69 |T1045/M0/C00/DVi 73 61 20 43 72 65 64 69 74 3A 30 30 3A 34 32 32 |sa Credit:00:422

31 36 34 2A 2A 2A 2A 2A 2A 35 32 35 37 3A 32 30 |164******5257:20 30 30 3A 32 30 30 30 3A 30 3A 30 3A 30 3A 31 31 |00:2000:0:0:0:11

3A 36 34 39 39 39 39 39 39 3A 31 32 36 3A 32 31 |:64999999:126:21 34 34 33 30 32 35 33 30 31 34 3A 38 36 3A 38 39 |4430253014:86:89 30 37 35 33 3A 32 30 32 32 30 35 32 34 31 38 35 |0753:20220524185 31 33 35 3A 30 |135:0

ECR->EFTPOS: BYTES 41

[RESULT]

00 29 |.)

45 43 52 30 31 31 30 52 2F 53 30 30 31 30 35 30 |ECR0110R/S001050

2F 52 41 42 43 30 30 31 31 31 32 32 32 2F 46 32 |/RABC00111222/F2

30 30 30 2F 54 31 30 34 35 |000/T1045

[220524 185136] ECR connection closed

[ACQ-RESULT]

3. Παράδειγμα έγκρισης (με αποστολή δεδομένων εκτύπωσης – “variant-2”)

[220524 190150] ECR connection from [10.1.101.129]

ECR->EFTPOS: BYTES 80

00 50 |.P

45 43 52 30 32 31 30 41 2F 53 30 30 31 30 35 33 |ECR0210A/S001053

2F 46 35 30 30 3A 39 37 38 3A 32 2F 44 32 30 32 |/F500:978:2/D202

32 30 35 32 34 31 37 35 38 31 35 2F 52 41 42 43 |20524175815/RABC

30 30 31 31 31 32 32 32 2F 48 31 32 31 2F 54 31 |00111222/H121/T1

30 34 38 2F 4D 30 2F 51 36 43 30 42 38 38 35 42 |048/M0/Q6C0B885B

[AMOUNT]

EFTPOS->ECR: BYTES 40

00 28 50 4F 53 30 32 31 30 41 2F 53 30 30 31 30 |.(POS0210A/S0010 35 33 2F 46 35 30 30 2F 52 41 42 43 30 30 31 31 |53/F500/RABC0011 31 32 32 32 2F 54 31 30 34 38 |1222/T1048

[220524 190150] ECR request

[220524 190154] TXN-L [1][422164xxxxxx5257][500]

[220524 190209] Connecting (0) to [ ]

[220524 190213] T [276]===>

[220524 190214] <===H [152]

[220524 190214] TXN-L authorized (890755) rrn=214430253016 EFTPOS->ECR: BYTES 1235

04 D3 50 4F 53 30 32 31 30 52 2F 53 30 30 31 30 |..POS0210R/S0010 35 33 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F |53/RABC00111222/ 54 31 30 34 38 2F 4D 30 2F 43 30 30 2F 44 56 69 |T1048/M0/C00/DVi 73 61 20 43 72 65 64 69 74 3A 30 30 3A 34 32 32 |sa Credit:00:422

31 36 34 2A 2A 2A 2A 2A 2A 35 32 35 37 3A 35 30 |164******5257:50 30 3A 35 30 30 3A 30 3A 30 3A 30 3A 31 31 3A 36 |0:500:0:0:0:11:6

34 39 39 39 39 39 39 3A 31 32 36 3A 32 31 34 34 |4999999:126:2144 33 30 32 35 33 30 31 36 3A 38 39 3A 38 39 30 37 |30253016:89:8907 35 35 3A 32 30 32 32 30 35 32 34 31 39 30 32 31 |55:2022052419021 33 3A 30 2F 50 1B 01 0A 1B 4E C4 4F 4B 49 4D 41 |3:0/P N.OKIMA D3 54 49 4B 4F D3 20 45 4D D0 4F 50 4F D3 0A 1B |.TIKO. EM.OPO...

4E 54 45 53 54 20 50 4F 53 0A 1B 4E 31 38 35 34 |NTEST POS..N1854 37 2C 20 20 D0 45 49 50 41 49 41 D3 0A 0A 1B 53 |7, .EIPAIA S

C1 D1 2E D4 C1 CC C5 C9 C1 CA C7 D3 3A 20 41 42 | : AB

43 30 30 31 31 31 32 32 32 0A 1B 53 D7 C5 C9 D1 |C00111222..S

C9 D3 D4 C7 D3 3A 20 31 32 31 0A 1B 53 C1 D1 2E | : 121..S...

D3 D5 CD C4 C5 D3 C7 D3 3A 20 31 30 35 33 0A 1B | : 1053..

53 C1 D1 2E C1 CB D0 2F C1 D0 D5 3A 20 31 30 34 |S /...: 104 38 0A 0A 1B 4E 32 34 2F 30 35 2F 32 30 32 32 1B |8...N24/05/2022.

52 1B 4E 31 39 3A 30 32 0A 1B 43 1B 42 56 69 73 |R.N19:02..C.BVis 61 20 43 72 65 64 69 74 0A 0A 1B 4E 2A 2A 2A 2A |a Credit...N**** 2A 2A 2A 2A 2A 2A 2A 2A 35 32 35 37 0A 0A 1B 43 |********5257...C 1B 53 28 28 28 63 6F 6E 74 61 63 74 6C 65 73 73 |.S(((contactless 29 29 29 0A 1B 43 1B 53 56 49 53 41 20 43 4F 4E |)))..C.SVISA CON 54 41 43 54 4C 45 53 53 0A 1B 43 1B 42 C1 C3 CF |TACTLESS..C.B...

D1 C1 2D 53 41 4C 45 0A 1B 42 D0 CF D3 CF 2F C1 |..-SALE..B /.

CC D4 3A 1B 52 1B 42 35 2C 30 30 20 45 55 52 0A |..:.R.B5,00 EUR.

0A 1B 4E C1 D1 2E D4 C5 D1 CC C1 D4 C9 CA CF D5 |..N

3A 20 36 34 39 39 39 39 39 39 0A 1B 4E C1 D1 2E |: 64999999..N...

D0 C1 CA C5 D4 CF D5 3A 20 31 32 36 0A 1B 4E C1 | : 126..N.

D1 2E D3 D5 CD C1 CB CB C1 C3 C7 D3 3A 20 38 39 | : 89

0A 1B 4E CA D9 C4 2E C5 C3 CA D1 C9 D3 C7 D3 3A |..N :

20 38 39 30 37 35 35 0A 1B 4E 52 52 4E 3A 20 32 | 890755..NRRN: 2 31 34 34 33 30 32 35 33 30 31 36 0A 0A 1B 53 4D |14430253016...SM 49 44 3A 20 31 32 33 34 38 31 34 20 30 30 30 37 |ID: 1234814 0007 0A 1B 53 4C 31 31 20 76 31 2E 35 2E 32 33 2E 30 |..SL11 v1.5.23.0 0A 0A 1B 53 41 50 2E 4C 41 42 45 4C 3A 20 56 69 |...SAP.LABEL: Vi 73 61 20 43 72 65 64 69 74 0A 1B 53 41 49 44 3A |sa Credit..SAID:

20 41 30 30 30 30 30 30 30 30 33 31 30 31 30 0A | A0000000031010.

1B 43 1B 42 D6 D5 CB C1 CE D4 C5 20 D4 CF 20 C1 |.C.B

CD D4 C9 C3 D1 C1 D6 CF 0A 1B 43 1B 42 C1 CD D4 | C.B...

C9 C3 D1 C1 D6 CF 20 C5 CC D0 CF D1 CF D5 0A 1B |

43 1B 42 2A 2A 2A 2A 20 C5 D5 D7 C1 D1 C9 D3 D4 |C.B****

CF D5 CC C5 20 2A 2A 2A 2A 0A 1B 4E 0A 0A 0A 0A | ****..N

0A 1B 0C 1B 01 0A 1B 4E C4 4F 4B 49 4D 41 D3 54 | N.OKIMA.T 49 4B 4F D3 20 45 4D D0 4F 50 4F D3 0A 1B 4E 54 |IKO. EM.OPO...NT 45 53 54 20 50 4F 53 0A 1B 4E 31 38 35 34 37 2C |EST POS..N18547, 20 20 D0 45 49 50 41 49 41 D3 0A 0A 1B 53 C1 D1 | .EIPAIA S..

[CONFIRMED] online authorization

[RESULT] Με δεδομένα εκτύπωσης.

Το αποτέλεσμα της εκτύπωσης φαίνεται στη ν Εικόνα 7

2E D4 C1 CC C5 C9 C1 CA C7 D3 3A 20 41 42 43 30 | : ABC0

30 31 31 31 32 32 32 0A 1B 53 D7 C5 C9 D1 C9 D3 |0111222..S

D4 C7 D3 3A 20 31 32 31 0A 1B 53 C1 D1 2E D3 D5 |...: 121..S

CD C4 C5 D3 C7 D3 3A 20 31 30 35 33 0A 1B 53 C1 | : 1053..S.

D1 2E C1 CB D0 2F C1 D0 D5 3A 20 31 30 34 38 0A | /...: 1048.

0A 1B 4E 32 34 2F 30 35 2F 32 30 32 32 1B 52 1B |..N24/05/2022.R. 4E 31 39 3A 30 32 0A 1B 43 1B 42 56 69 73 61 20 |N19:02..C.BVisa 43 72 65 64 69 74 0A 0A 1B 4E 34 32 32 31 36 34 |Credit...N422164 2A 2A 2A 2A 2A 2A 35 32 35 37 0A 0A 1B 43 1B 53 |******5257...C.S 28 28 28 63 6F 6E 74 61 63 74 6C 65 73 73 29 29 |(((contactless)) 29 0A 1B 43 1B 53 56 49 53 41 20 43 4F 4E 54 41 |)..C.SVISA CONTA 43 54 4C 45 53 53 0A 1B 43 1B 42 C1 C3 CF D1 C1 |CTLESS..C.B

2D 53 41 4C 45 0A 1B 42 D0 CF D3 CF 2F C1 CC D4 |-SALE..B /... 3A 1B 52 1B 42 35 2C 30 30 20 45 55 52 0A 0A 1B |:.R.B5,00 EUR...

4E C1 D1 2E D4 C5 D1 CC C1 D4 C9 CA CF D5 3A 20 |N :

36 34 39 39 39 39 39 39 0A 1B 4E C1 D1 2E D0 C1 |64999999..N

CA C5 D4 CF D5 3A 20 31 32 36 0A 1B 4E C1 D1 2E | : 126..N...

D3 D5 CD C1 CB CB C1 C3 C7 D3 3A 20 38 39 0A 1B | : 89..

4E CA D9 C4 2E C5 C3 CA D1 C9 D3 C7 D3 3A 20 38 |N : 8

39 30 37 35 35 0A 1B 4E 52 52 4E 3A 20 32 31 34 |90755..NRRN: 214 34 33 30 32 35 33 30 31 36 0A 0A 1B 53 4D 49 44 |430253016...SMID 3A 20 31 32 33 34 38 31 34 20 30 30 30 37 0A 1B |: 1234814 0007..

53 4C 31 31 20 76 31 2E 35 2E 32 33 2E 30 0A 0A |SL11 v1.5.23.0.. 1B 53 41 50 2E 4C 41 42 45 4C 3A 20 56 69 73 61 |.SAP.LABEL: Visa 20 43 72 65 64 69 74 0A 1B 53 41 49 44 3A 20 41 | Credit..SAID: A 30 30 30 30 30 30 30 30 33 31 30 31 30 0A 1B 43 |0000000031010..C 1B 42 C1 CD D4 C9 C3 D1 C1 D6 CF 20 D0 C5 CB C1 |.B

D4 C7 0A 1B 43 1B 42 2A 2A 2A 2A 20 C5 D5 D7 C1 | C.B****

D1 C9 D3 D4 CF D5 CC C5 20 2A 2A 2A 2A 0A 1B 4E | ****..N

0A 0A 0A 0A 0A |

ECR->EFTPOS: BYTES 40

00 28 |.(

45 43 52 30 32 31 30 52 2F 53 30 30 31 30 35 33 |ECR0210R/S001053 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F 46 35 |/RABC00111222/F5 30 30 2F 54 31 30 34 38 |00/T1048

[220524 190216] ECR connection closed

[ACQ-RESULT]

ΛΟΓΟΤΥΠΟ ΤΡΑΠΕΖΑΣ

ΛΟΓΟΤΥΠΟ ΤΡΑΠΕΖΑΣ

ΑΟΚΙΜΑΣΤΙΚΟΣ ΕΜΠΟΡΟΣ TEST PCS

13547, ΠΕΙΡΑΙΑΣ

ΔΟΚΙΜΑΣΤΙΚΟΣ ΕΜΠΟΡΟΣ TEST ΡΟΞ

18542, ΠΕΙΡΑΙΑΣ

ΛΡ.ΤήΗΕΙΛΚΗί: AΒΟΟύ111222

ΧΕΙΡ1ΕΓΗ£! 121

ΛΡ.ΕΪΙϋΕΕΗΞ! 1Α55

ΑΡ.ΑΛΙ1/ΑΠΪ: 1046

Αί'.ΓΑΗΕΙΑΚΗϊί ABC0i)111222

ΧΕΙΡΙΪΤΒΪ! 121

ΑΡ.ΪΪΪΔΕΪΗΪΙ 1053

ΑΡ.ΑΑΠ/ΑΠΪ: 1046

24/0.5/2322 19:02 '

Visa Credit

24./ϋ5/2ύ22 19:02

Visa credit

422164“““5257

ί( (cent jetless 1I) VISA CONTACTLESS ΑΓΟΡΑ-SALE ΠΟΕΟ/ΑΗΤ: 5,00 EUR

1ί(contact lessΗ1 VISA COffTACTLESS

ΑΓΟΡΆ-SALE

ΠΟΕΟ/ΑΜΤ: 5,00 EUR

AP,ΤΕΡΜΑΤΙΚΟΥ: b4&99<>90

AF.ΠΑΚΕΤΟΥ: 126

ΑΡ.ΣΪΗΑΛΛΑΠΙΣ: 39

ΚΠΑ. ΕΓΚΡΙΣΗΣ: 39075.5

RRN: 21443/1253016

ΑΡ/ΓΕΡΗΑΊΊΚΟΥ: 64999999

ΑΡ. ΠΑΚΕΤΟΥ: 126

AP.ΣΥΝΑΛΛΑΓΗΣ: 39

ΚΟΔ.ΕΓΚΡΙΣΗΣ: 890755

RRN: 214430253016

ΠΙΟ; 1234814 0007

L11 111.5.27.0

MIL·: 1234614 06Ci7

1,11 Ή.5.21.0

ΑΡ.LABEL: Visa Credit

AW: ΛΟύβΟΟΟΟΟηΟΙΟ

ΦΥΛΑΞΤΕ TO ΑΒΤΙΓΡΑΦ0 ΑΝΤΙΓΡΑΦΟ ΕΜΠΟΡΟΥ **** ΕΪΧΑΡΚΤΟΪΜΕ ****

AF.LABEL: Visa Credit

AID; Α00ΟϋΑ90Ο31Ο1ΰ

ΑΝΤΙΓΡΑΦΟ ΠΕΛΑΤΗ **** ΕΥΧΑΡΙΕΤΟΥΜΕ ****

Εικόνα 7

5.6. Μήνυμα [ACK-RESULT]

Στέλνεται από την ECR ως επιβεβαίωση λήψης του [RESULT].

Σύνταξη :

ECR RESPONSE:

R/S <session number> / R<ecr-id> /F <amount>

/ T<receipt-number> { :<receipt-number> }

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

session number

an

6

Πρέπει να είναι τα ίδια με αυτά του [RESULT] και αυτό να ελέγχεται από τo EFTPOS.

Εξαίρεση : (βλ. μήνυμα [RESULT])

ecr-id

an

11

amount

num

1..12

receipt-number

an

1..8

Παράδειγμα : στην ενότητα 5.5 για τις περιπτώσεις 2 και 3.

5.7. Μήνυμα [REGRECEIPT]

Στέλνεται από την ECR με στοιχεία ΑΠΛ που εκδόθηκε για ετεροχρονισμένη πληρωμή (π.χ για παράδοση κατ’ οίκον). Πρόκειται για τη διαδικασία φόρτωσης στο EFTPOS αποδείξεων ή τιμολογίων που ήδη εκδόθηκαν από τον ΦΗΜ, και τα οποία πρέπει να εξοφληθούν με κάρτα αργότερα.

Το EFTPOS καταχωρεί τα στοιχεία της απόδειξης (ποσό, session number, receipt number) και τα έχει διαθέσιμα προς χρήση για 24 ώρες.

Είναι ίδιο με το μήνυμα [AMOUNT] με εξαίρεση το αρχικό σύμβολο που είναι W.

Το πεδίο custom-data μπορεί να φέρει κάποια σύντομη σημείωση, ως ελεύθερο κείμενο, σχετική με την πληρωμή.

Σύνταξη :

ECR REQUEST

W/S <session number> /F <amount>:< cur-code>:<cur-exp> /D <datetime>/R<ecr-id> / H<operator-number> / T<receipt number> /M <custom-data>{ / Q<mac> }

Παράδειγμα :

[220711 115333] ECR connection from [10.1.101.217]

ECR->EFTPOS: BYTES 81 00 51 |.Q

45 43 52 30 31 31 30 57 2F 53 30 30 31 35 37 33 |ECR0110W/S001573 2F 46 35 30 30 30 3A 39 37 38 3A 32 2F 44 32 30 |/F5000:978:2/D20

32 32 30 37 31 31 31 30 35 30 30 39 2F 52 41 42 |220711105009/RAB

43 30 30 31 31 31 32 32 32 2F 48 31 32 31 2F 54 |C00111222/H121/T

31 32 32 38 2F 4D 30 2F 51 33 30 41 44 44 38 41 |1228/M0/Q30ADD8A

33 |3

EFTPOS->ECR: BYTES 12

00 0C 50 4F 53 30 31 31 30 45 2F 30 30 30 |..POS0110E/000

5.8. Μήνυμα [RESEND-ONE]

Στέλνεται από την ECR μετά από επιλογή του χειριστή, στην περίπτωση που το EFTPOS ενέκρινε τη συναλλαγή αλλά απέτυχε η αποστολή του [RESULT].

Σύνταξη :

ECR REQUEST:

Ο/S <session number> /F <amount>:<cur-code>:<cur-exp>

/ R<ecr-id> / T<receipt-number> {/ Q<mac> }

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

session number

an

6

Πρέπει να ταιριάζουν με αυτά της συναλλαγής που εγκρίθηκε στο EFTPOS.

amount

num

1..12

cur-code

num

3

cur-expo

num

1

ecr-id

an

11

receipt-number

an

1..8

mac

an

8

(Βλ. [AMOUNT])

Παράδειγμα :

[220524 193308] ECR connection from [10.1.101.135]

ECR->EFTPOS: BYTES 56

00 38 |.8

45 43 52 30 31 31 30 4F 2F 53 30 30 31 30 35 38 |ECR0110O/S001058

2F 46 31 35 30 3A 39 37 38 3A 32 2F 52 41 42 43 |/F150:978:2/RABC

30 30 31 31 31 32 32 32 2F 54 31 30 35 31 2F 51 |00111222/T1051/Q

46 37 31 36 37 41 39 46 |F7167A9F

[220524 193309] ECR request

EFTPOS->ECR: BYTES 145

00 91 50 4F 53 30 31 31 30 52 2F 53 30 30 31 30 |..POS0110R/S0010 35 38 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F |58/RABC00111222/ 54 31 30 35 31 2F 4D 30 2F 43 30 30 2F 44 56 69 |T1051/M0/C00/DVi 73 61 20 43 72 65 64 69 74 3A 30 30 3A 34 32 32 |sa Credit:00:422

31 36 34 2A 2A 2A 2A 2A 2A 35 32 35 37 3A 31 35 |164******5257:15

30 3A 31 35 30 3A 30 3A 30 3A 30 3A 31 31 3A 36 |0:150:0:0:0:11:6

34 39 39 39 39 39 39 3A 31 32 36 3A 32 31 34 34 |4999999:126:2144 33 30 32 35 33 30 31 39 3A 39 32 3A 38 39 30 37 |30253019:92:8907

35 38 3A 32 30 32 32 30 35 32 34 31 39 33 32 30 |58:2022052419320

31 3A 31 |1:1

ECR->EFTPOS: BYTES 40

00 28 |.(

45 43 52 30 31 31 30 52 2F 53 30 30 31 30 35 38 |ECR0110R/S001058

2F 52 41 42 43 30 30 31 31 31 32 32 32 2F 46 31 |/RABC00111222/F1

35 30 2F 54 31 30 35 31 |50/T1051

[220524 193310] ECR connection closed

5.9. Μήνυμα [RESEND-ALL]

Στέλνεται από την ECR μετά από επιλογή του χειριστή, στην περίπτωση που το EFTPOS δεν μπορεί να κλείσει πακέτο λόγω συναλλαγών σε εκκρεμότητα ως προς την ECR.

Σύνταξη :

ECR REQUEST:

L/ R<ecr-id> /D <datetime> {/ Q<mac> }

Element name

Type

Size

Description

ecr-id

an

11

Το EFTPOS πρέπει να παρακάμπτει συναλλαγές που έχουν ληφθεί από διαφορετική ECR.

datetime

num

14

(Βλ. [AMOUNT])

mac

an

8

(Βλ. [AMOUNT])

Παράδειγμα

[220711 121010] ECR connection from [10.1.101.217]

ECR->EFTPOS: BYTES 47

00 2F |./

45 43 52 30 31 31 30 4C 2F 52 41 42 43 30 30 31 |ECR0110L/RABC001 31 31 32 32 32 2F 44 32 30 32 32 30 37 31 31 31 |11222/D202207111 31 30 36 34 35 2F 51 36 43 34 38 33 46 43 45 |10645/Q6C483FCE EFTPOS->ECR: BYTES 132

00 84 50 4F 53 30 31 31 30 52 2F 53 50 4F 53 54 |..POS0110R/SPOST 58 4E 2F 52 2F 54 2F 4D 30 2F 43 30 30 2F 44 56 |XN/R/T/M0/C00/DV 69 73 61 20 43 72 65 64 69 74 3A 30 30 3A 34 33 |isa Credit:00:43

32 34 38 33 2A 2A 2A 2A 2A 2A 34 31 38 35 3A 32 |2483******4185:2

35 30 30 3A 32 35 30 30 3A 30 3A 30 3A 30 3A 31 |500:2500:0:0:0:1

3A 36 34 39 39 39 39 39 33 3A 32 33 3A 32 32 |1:64999993:23:22

32 32 32 31 30 30 30 30 31 3A 31 35 33 3A 31 |2222100001:153:1

33 34 35 37 3A 32 30 32 32 30 37 31 31 31 32 |23457:2022071112

30 30 35 37 3A 35 |0057:5

ECR->EFTPOS: BYTES 41

Αγορά 25€ με τιμολόγιο

00 29 |.)

45 43 52 30 31 31 30 52 2F 53 30 30 31 35 37 34 |ECR0110R/S001574 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F 46 35 |/RABC00111222/F5

30 30 30 2F 54 31 32 32 38 |000/T1228

ECR ACK RES: RESULT OF PARSING

S=[001574] amt=[5000] ecr=[ABC00111222] rcp=[1228]

EFTPOS->ECR: BYTES 145

00 91 50 4F 53 30 31 31 30 52 2F 53 31 35 37 33 |..POS0110R/S1573 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F 54 31 |/RABC00111222/T1 32 32 38 2F 4D 30 2F 43 30 30 2F 44 56 69 73 61 |228/M0/C00/DVisa 20 43 72 65 64 69 74 3A 30 30 3A 34 33 32 34 38 | Credit:00:43248

33 2A 2A 2A 2A 2A 2A 34 31 38 35 3A 35 30 30 30 |3******4185:5000 3A 35 30 30 30 3A 30 3A 30 3A 30 3A 31 31 3A 36 |:5000:0:0:0:11:6

34 39 39 39 39 39 33 3A 32 33 3A 32 32 32 32 32 |4999993:23:22222

32 31 30 30 30 30 32 3A 31 35 34 3A 31 32 33 34 |2100002:154:1234 35 38 3A 32 30 32 32 30 37 31 31 31 32 30 31 32 |58:2022071112012

34 3A 32 |4:2

ECR->EFTPOS: BYTES 41

00 29 |.)

45 43 52 30 31 31 30 52 2F 53 30 30 31 35 37 34 |ECR0110R/S001574 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F 46 35 |/RABC00111222/F5

30 30 30 2F 54 31 32 32 38 |000/T1228

ECR ACK RES: RESULT OF PARSING

S=[001574] amt=[5000] ecr=[ABC00111222] rcp=[1228]

EFTPOS->ECR: BYTES 147

00 93 50 4F 53 30 31 31 30 52 2F 53 50 4F 53 54 |..POS0110R/SPOST 58 4E 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F |XN/RABC00111222/ 54 31 32 33 30 2F 4D 30 2F 43 30 30 2F 44 56 69 |T1230/M0/C00/DVi 73 61 20 43 72 65 64 69 74 3A 30 30 3A 34 33 32 |sa Credit:00:432

34 38 33 2A 2A 2A 2A 2A 2A 34 31 38 35 3A 32 30 |483******4185:20 30 30 3A 32 30 30 30 3A 30 3A 30 3A 30 3A 31 31 |00:2000:0:0:0:11

3A 36 34 39 39 39 39 39 33 3A 32 33 3A 32 32 32 |:64999993:23:222

32 32 32 31 30 30 30 30 34 3A 31 35 35 3A 31 32 |222100004:155:12

33 34 36 30 3A 32 30 32 32 30 37 31 31 31 32 30 |3460:20220711120

32 30 31 3A 32 |201:2

ECR->EFTPOS: BYTES 41

00 29 |.)

45 43 52 30 31 31 30 52 2F 53 30 30 31 35 37 34 |ECR0110R/S001574 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F 46 35 |/RABC00111222/F5

30 30 30 2F 54 31 32 32 38 |000/T1228

ECR ACK RES: RESULT OF PARSING

S=[001574] amt=[5000] ecr=[ABC00111222] rcp=[1228]

EFTPOS->ECR: BYTES 39

00 27 50 4F 53 30 31 31 30 52 2F 53 30 30 30 30 |.'POS0110R/S0000

30 30 2F 52 41 42 43 30 30 31 31 31 32 32 32 2F |00/RABC00111222/ 54 30 2F 4D 30 2F 43 33 33 |T0/M0/C33

[220711 121012] ECR connection closed

Αγορά 50€ μέσω της ροής REGRECEIPT

Αγορά 25€ με πληκτρολόγηση του αριθμού ΑΛΠ από τον χειριστή.

5.10. Μήνυμα [ERROR]

Στέλνεται από το EFTPOS ως άμεση απάντηση στο αρχικό αίτημα της ECR στις περιπτώσεις που δεν είναι δυνατή η επεξεργασία του.

Σύνταξη :

EFTPOS RESPONSE:

E /<error code>

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

error code

num

3

001: “protocol not supported”

002: “duplicate request received”

003: “Syntax error in request”

004: “Invalid currency”

100: “Internal EFTPOS error”

500: “Invalid command”

501: “Wrong parameter”

502: “Missing MAC”

503: “MAC error”

504: “MAC not supported”

777: “EFTPOS not connected”

999: “BUSY”

Επεξηγήσεις ανά κωδικό :

1. Κωδικός 001 : μη υποστηριζόμενο πρωτόκολλο. Ωστόσο η απάντηση του EFTPOS χρησιμοποιεί στην κεφαλίδα τα ίδια version και variant του αιτήματος της ECR.

2. Κωδικός 002 : το session number είναι το ίδιο με αυτό της προηγούμενης σ/γής.

3. Κωδικός 003 : συντακτικό λάθος στο σώμα του μηνύματος.

4. Κωδικός 004 : η ταμειακή στέλνει ποσό σε διαφορετικό νόμισμα από αυτό του EFTPOS.

5. Κωδικός 100 : εσωτερικό πρόβλημα του EFTPOS.

6. Κωδικός 500/501 : στέλνεται στην περίπτωση μη έγκυρου [CONTROL] μηνύματος.

7. Κωδικός 502 : στο αίτημα ECR λείπει MAC πεδίο ενώ είναι υποχρεωτικό

8. Κωδικός 503 : το αίτημα ECR έχει λάθος MAC

9. Κωδικός 504 : το EFTPOS δεν μπορεί να υποστηρίξει MAC (π.χ. λείπουν κλειδιά)

10. Κωδικός 777 : μη συνδεδεμένο EFTPOS (δεσμευμένος κωδικός για middleware)

11. Κωδικός 999 : το EFTPOS είναι κατειλημμένο (π.χ. εκτελούνται χειρισμοί από το μενού, επικοινωνεί για παραμέτρους κλπ).

Σημείωση: κατά το χρονικό διάστημα εξυπηρέτησης συναλλαγής προερχόμενης από την ECR, το EFTPOS δεν μπορεί να αποκριθεί σε άλλο αίτημα ούτε κατά την εκτύπωση της απόδειξης της τρέχουσας σ/γής.

Παραδείγματα :

1. Αίτημα από ECR σε κατειλημμένο EFTPOS

ECR->EFTPOS: BYTES 80

00 50 |.P

45 43 52 30 32 31 30 41 2F 53 30 30 31 30 31 35 |ECR0210A/S001015 2F 46 32 35 30 3A 39 37 38 3A 32 2F 44 32 30 32 |/F250:978:2/D202

32 30 35 32 34 31 32 33 32 32 39 2F 52 41 42 43 |20524123229/RABC

30 30 31 31 31 32 32 32 2F 48 31 32 31 2F 54 31 |00111222/H121/T1

30 32 37 2F 4D 30 2F 51 33 42 35 34 30 37 33 46 |027/M0/Q3B54073F

EFTPOS->ECR: BYTES 12

00 0C 50 4F 53 30 32 31 30 45 2F 39 39 39 |..POS0210E/999

2. Αίτημα από ECR που έχει ρυθμισμένο άλλο νόμισμα

ECR->EFTPOS: BYTES 81 00 51 |.Q

45 43 52 30 32 31 30 41 2F 53 30 30 31 30 31 36 |ECR0210A/S001016

2F 46 32 30 30 30 3A 36 34 31 3A 32 2F 44 32 30 |/F2000:641:2/D20

32 32 30 35 32 34 31 32 33 35 32 30 2F 52 41 42 |220524123520/RAB

43 30 30 31 31 31 32 32 32 2F 48 31 32 31 2F 54 |C00111222/H121/T

31 30 32 38 2F 4D 30 2F 51 46 38 32 38 36 42 39 |1028/M0/QF8286B9

32 |2

EFTPOS->ECR: BYTES 12

00 0C 50 4F 53 30 32 31 30 45 2F 30 30 34 |..POS0210E/004

3. Αίτημα από ECR με μη υποστηριζόμενο protocol version ή variant

ECR->EFTPOS: BYTES 80

00 50 |.P

45 43 52 30 33 30 33 41 2F 53 30 30 30 36 37 35 |ECR0303A/S000675

2F 46 32 35 30 30 3A 39 37 38 3A 32 2F 44 32 30 |/F2500:978:2/D20

32 31 31 31 32 32 31 31 35 39 32 37 2F 52 38 2F |211122115927/R8/

48 31 32 31 2F 54 30 30 30 36 37 34 2F 47 3A 30 |H121/T000674/G:0

3A 30 3A 30 3A 30 2F 4D 31 32 33 34 35 36 37 38 |:0:0:0/M12345678 EFTPOS->ECR: BYTES 12

00 0C 4D 45 4C 30 33 30 33 45 2F 30 30 31 |..POS0303E/001

5.11. Μήνυμα [SUCCESS]

Αποτελεί ειδική περίπτωση μηνύματος [ERROR] με κωδικό 000.

Σύνταξη :

EFTPOS RESPONSE:

E/000

5.12. Μήνυμα [CONTROL]

Γενικό μήνυμα για έλεγχο συμπεριφοράς του EFTPOS από την ECR.

Σύνταξη :

ECR REQUEST:

U /R<ecr-id>/ C <command-name> : <parameter-value>{:paramater-value}

Στοιχείο

Τύπος

Μέγεθος

Περιγραφή

ecr-id

an

11

command-name

an

1..20

Συμβολική ονομασία της παραμέτρου προς ρύθμιση

parameter-value

an

1..50

Τιμή της παραμέτρου

Το σύνολο των παραμέτρων και των δυνατών τιμών τους είναι επεκτάσιμο ανάλογα με τις ανάγκες που θα προκύπτουν.

ΠΑΡΑΜΕΤΡΟΣ

ΤΙΜΕΣ

UNBIND_POS

0 - το EFTPOS έχει κλειδωμένο πληκτρολόγιο και δεν μπορεί να ξεκινήσει συναλλαγές αυτόνομα.

1 - το EFTPOS μπορεί να εκτελέσει πιστωτικές συναλλαγές αυτόνομα, χωρίς εντολή ECR

MAC_K

1 η τιμή : MAC session κλειδί (32 hex digits), κρυπτογραφημένο υπό ορισμένο master key εμφυτευμένο σε αμφότερα ECR και EFTPOS.

2 η τιμή : το CV του κλειδιού (6 hex digits). Αν αποτύχει ο έλεγχος του KCV, το EFTPOS επιστρέφει Ε/503

Για του παράδειγμα του κεφαλαίου Error: Reference source not found θα ήταν:

MAC_K:1ED9F7AE0B2509281BBC2DE38EF2A12B:CC5FFF

Παραδείγματα :

1. Άνοιγμα – κλείσιμο πληκτρολογίου τερματικού (πιστωτικές συναλλαγές μόνο):

ECR->EFTPOS: BYTES 35

00 23 |.#

45 43 52 30 32 31 30 55 2F 52 41 42 43 30 30 31 |ECR0210U/RABC001

31 31 32 32 32 2F 43 55 4E 42 49 4E 44 5F 50 4F |11222/CUNBIND_PO

53 3A 31 |S:1

EFTPOS->ECR: BYTES 12

00 0C 50 4F 53 30 32 31 30 45 2F 30 30 30

|..POS0210E/000

ECR->POS: BYTES 35 00 23 |.#

45 43 52 30 32 31 30 55 2F 52 41 42 43 30 30 31 |ECR0210U/RABC001

31 31 32 32 32 2F 43 55 4E 42 49 4E 44 5F 50 4F |11222/CUNBIND_PO

53 3A 31 |S:0

EFTPOS->ECR: BYTES 12

00 0C 50 4F 53 30 32 31 30 45 2F 30 30 30 |..POS0210E/000

2. Επιτυχής αποστολή ΜΑC session κλειδιού:

ECR->EFTPOS: BYTES 68 00 44 |.D

45 43 52 30 32 31 30 55 2F 52 41 42 43 30 30 31 |ECR0210U/RABC001

31 31 32 32 32 2F 43 4D 41 43 5F 4B 3A 31 45 44 |11222/CMAC_K:1ED

39 46 37 41 45 30 42 32 35 30 39 32 38 31 42 42 |9F7AE0B2509281BB

43 32 44 45 33 38 45 46 32 41 31 32 42 3A 43 43 |C2DE38EF2A12B:CC

35 46 46 46 |5FFF

EFTPOS->ECR: BYTES 12

00 0C 50 4F 53 30 32 31 30 45 2F 30 30 30 |..POS0210E/000

5.13. Μηνύματα λοιπών συναλλαγών

Έχουν σύνταξη, περιεχόμενο και ροή ακριβώς όπως και το [AMOUNT] με μόνη διαφορά το αρχικό σύμβολο, το οποίο θα είναι και πρόθεμα στο αντίστοιχο μήνυμα [CONFIRM].

Όποια συμπληρωματικά στοιχεία είναι απαραίτητα για την ακύρωση, την επιστροφή κλπ (π.χ. αριθμός αρχικής συναλλαγής) εισάγονται πια στο EFTPOS από τον χειριστή και δε λαμβάνονται από την ECR.

ECR REQUEST (AMOUNT-INSTALM):

I/S <session number> /F <amount>:< cur-code>:<cur-exp> /D <datetime> / R<ecr-id> / H<operator-number> / T<receipt number> /M <custom-data> { /Q<mac> }

EFTPOS CONFIRMATION:

I/S <session number> /F <amount> / R<ecr-id> / T<receipt number>

ECR REQUEST (AMOUNT-REFUND):

Ζ/S <session number> /F <amount>:< cur-code>:<cur-exp> /D <datetime> / R<ecr-id> / H<operator-number>

/ T<receipt number> /M <custom-data> { /Q<mac> }

EFTPOS CONFIRMATION:

Z/S <session number> /F <amount> / R<ecr-id> / T<receipt number>

ECR REQUEST (AMOUNT-VOID):

V/S <session number> /F <amount>:< cur-code>:<cur-exp>

/D <datetime>/R<ecr-id> / H<operator-number>

/ T<receipt number> /M <custom-data> { /Q<mac> }

EFTPOS CONFIRMATION:

V/S <session number> /F <amount> / R<ecr-id> / T<receipt number>

ECR REQUEST (AMOUNT-COMPLETION):

P/S <session number> /F <amount>:< cur-code>:<cur-exp>

/D <datetime>/R<ecr-id> / H<operator-number>

/ T<receipt number> /M <custom-data> { /Q<mac> }

EFTPOS CONFIRMATION:

P/S <session number> /F <amount> / R<ecr-id> / T<receipt number>

ECR REQUEST (AMOUNT-MAIL):

M/S <session number> /F <amount>:< cur-code>:<cur-exp>

/D <datetime>/R<ecr-id> / H<operator-number>

/ T<receipt number> /M <custom-data> { /Q<mac> }

EFTPOS CONFIRMATION:

M/S <session number> /F <amount> / R<ecr-id> / T<receipt number>

Στην περίπτωση προφορτωμένων αποδείξεων μέσω μηνύματος REGRECEIPT, η επιλογή του τύπου της χρεωστικής συναλλαγής μπορεί να γίνει εκ των υστέρων μέσω μενού επιλογής στο EFTPOS. Μετά την επιλογή απόδειξης ακολουθεί η επιλογή του τύπου της συναλλαγής π.χ.: ΑΓΟΡΑ, ΔΟΣΕΙΣ, ΚΑΤΑΧΩΡΗΣΗ ΠΡΟΕΓΚΡΙΣΗΣ, MAIL ORDER, OFFLINE ΕΓΚΡΙΣΗ.

Για τη συναλλαγή ΤΟΠΙΚΗ ΕΓΚΡΙΣΗ (η οποία είναι υπό κατάργηση από τα τραπεζικά ιδρύματα) δεν προβλέπεται ξεχωριστός τύπος μηνύματος. Θα πραγματοποιείται μόνο ως προφορτωμένη απόδειξη.

5.14. Χειρισμός σφαλμάτων

Σφάλματα στις ροές και στα μηνύματα όπως περιγράφονται στις προηγούμενες ενότητες αντιμετωπίζονται ως λάθη συστήματος τα οποία αναμένεται να συμβαίνουν εξαιρετικά σπάνια κι εάν συμβούν τότε σημαίνουν:

Είτε πρόβλημα της φυσικής σύνδεσης και του δικτύου που απαιτεί ανθρώπινη παρέμβαση

Είτε εσωτερικό προγραμματιστικό λάθος και ελλιπή χειρισμό κάποια συγκυρίας

Και στις δύο περιπτώσεις πρέπει να παρέχεται σαφής ένδειξη του προβλήματος στο χειριστή έτσι ώστε να προβεί στις απαιτούμενες ενέργειες χειροκίνητης ολοκλήρωσης της συναλλαγής (ή ακύρωσής της), εξάλειψης του προβλήματος ή ακόμη και κλήσης της τεχνικής υποστήριξης. Η ευθύνη για τα δύο μέρη (EFTPOS και ECR) ως ανεξάρτητα και αυτοτελή συστήματα στην εν λόγω διασύνδεση, είναι να ελέγχουν προσεκτικά την εγκυρότητα της εισόδου τους.

Το πρωτόκολλο για τέτοια σπάνια σφάλματα δεν προβλέπει μηχανισμούς επανάληψης της μετάδοσης ή αυτόματης διόρθωσης δεδομένων. Αυτό θα περιέπλεκε ανώφελα την υλοποίηση, δεδομένου κιόλας ότι η ακεραιότητα της μετάδοσης θεωρείται εξασφαλισμένη στις συνδέσεις TCP/IP και USB και για τόσο μικρό μέγεθος δεδομένων.

Κατ’ εξαίρεση για τη σύνδεση με RS232, μπορεί να υλοποιηθεί συμπληρωματικά μηχανισμός επιβεβαίωσης γνωστός από την εποχή των ασύγχρονων modem όπου η κάθε πλευρά στο τέλος του εξερχόμενου μηνύματος προσθέτει ένα byte ελέγχου (LRC) ως αποτέλεσμα διαδοχικών XOR επί των χαρακτήρων που αποστέλλονται.

Ο λήπτης αν υπολογίσει διαφορετικό LRC από το δηλωθέν στο μήνυμα, απαντά με ένα μοναδικό χαρακτήρα ΝΑΚ (0x15) αιτώντας την επανάληψη της αποστολής ή, μετά από 3 επαναλήψεις, διακόπτει την επικοινωνία ως ατελέσφορη.

Ακολουθεί σύνοψη των περιπτώσεων σε ένα τυπικό κύκλο αγοράς που μπορεί να προκύψουν σφάλματα και των ενδεδειγμένων χειρισμών από πλευράς EFTPOS και ECR.

[t0]

EFTPOS 🡨 [AMOUNT] 🡨 ECR

[t1]

EFTPOS 🡪 [CONFIRMED] 🡪 ECR

t1-t0 < 2 sec

[t2]

EFTPOS 🡪 [RESULT] 🡪 ECR

Συνήθως

t2-t1 < 60 sec

[t3]

EFTPOS 🡨 [ACK-RESULT] 🡨 ECR

t3-t2 < 2 sec

ΠΕΡΙΠΤΩΣΗ 1 (EFTPOS): Στο [t0] το EFTPOS είναι εκτός ρεύματος ή μη συνδεδεμένο στην ECR

Η ECR οφείλει να εγκαταλείψει την προσπάθεια σύνδεσης και να αναφέρει στο χειριστή αδυναμία σύνδεσης.

ΠΕΡΙΠΤΩΣΗ 2 (EFTPOS): Στο [t0] το EFTPOS λαμβάνει:

a)

σκουπίδια (εντελώς αδόμητα δεδομένα)

b)

μη έγκυρο μήνυμα (μη υποστηριζόμενη έκδοση, duplicate session κοκ)

Για το a) το EFTPOS πρέπει να αγνοήσει και να απορρίψει τα δεδομένα και κατά προτίμηση να ενημερώσει το χειριστή τυπώνοντας ή εμφανίζοντας σχετικό μήνυμα.

Για το b) το EFTPOS πρέπει να απαντήσει με το αντίστοιχο μήνυμα λάθους (001, 002, 003, 004 κοκ) όπως περιγράφεται στην ενότητα 5.10 .

ΠΕΡΙΠΤΩΣΗ 3 (EFTPOS): Στο [t1] το EFTPOS αντιλαμβάνεται αποτυχία αποστολής CONFIRM AMOUNT λόγω προβλήματος επικοινωνίας.

Το EFTPOS δεν πρέπει να προχωρήσει στην εκτέλεση της συναλλαγής παρά να εμφανίσει ή να εκτυπώσει σχετικό μήνυμα.

ΠΕΡΙΠΤΩΣΗ 4 (ECR): To μήνυμα CONFIRMED

a)

δε λαμβάνεται εντός του αναμενόμενου χρόνου ή

b)

αντί του CONFIRMED λαμβάνεται μήνυμα λάθους

c)

το μήνυμα CONFIRMED έχει μη έγκυρα στοιχεία (session number, amount, ecr ID κλπ)

d)

αντί του CONFIRMΕD λαμβάνει μήνυμα RESULT εκτός σειράς, με στοιχεία προηγούμενης συναλλαγής.

Για το 4.a) η ECR μετά παρέλευση 5 sec μπορεί να ζητήσει επιβεβαίωση του χειριστή για διακοπή της προσπάθειας ή συνέχιση της αναμονής

Για το 4.b) η ECR αναφέρει το σχετικό λάθος και διακόπτει την επικοινωνία. Ειδικά για την περίπτωση του λάθους 503 και 504, η ECR μπορεί να στείλει μία φορά CONTROL μήνυμα με MAC session key και να επαναλάβει την αποστολή.

Για το 4.c) η ECR πρέπει να διακόψει την επικοινωνία με το EFTPOS και να εμφανίσει σχετικό μήνυμα ότι το σύστημα βρίσκεται σε μη έγκυρη κατάσταση.

Αν το EFTPOS είχε λάβει σωστά το αρχικό αίτημα και είχε εγκρίνει τη συναλλαγή, τότε θα επιχειρήσει να στείλει ανεπιτυχώς RESULT και η συναλλαγή θα αποθηκευτεί με ecr txn status 1. Σε αυτήν την περίπτωση η αποστολή RESEND- ONE εκ μέρους της ECR μπορεί να ολοκληρώσει επιτυχώς την επικοινωνία.

Για το 4.d) η ECR πρέπει να αγνοήσει το μήνυμα που για κάποιο λόγο ήρθε καθυστερημένο από προηγούμενη μη ολοκληρωμένη συναλλαγή και να περιμένει την έλευση του CONFIRMED (ή του ERROR).

ΠΕΡΙΠΤΩΣΗ 5 (ECR): Το διάστημα αναμονής t2 και t1 διαρκεί πολύ. Υπάρχουν δύο πιθανές αιτίες:

α)

η επικοινωνία EFTPOS και ιδρύματος πληρωμών είναι πολύ αργή ή ο κάτοχος αργεί πολύ να εισάγει το PIN

β)

Το EFTPOS κόλλησε ή έκανε επανεκκίνηση

Η ECR πρέπει να παρέχει τη δυνατότητα διακοπής της επικοινωνίας. Τότε:

Στην περίπτωση 5.a) το EFTPOS τελικά λαμβάνει έγκριση και στέλνει RESULT μήνυμα, αλλά αυτό δε φτάνει στην ECR λόγω διακοπής της σύνδεσης. Εναπόκειται στο χειριστή να κάνει τις απαιτούμενες ενέργειες, όπως το να εκτελέσει RESEND-ΟΝΕ.

Στην περίπτωση 5.b): απαιτούνται οι ανάλογες ενέργειες του χειριστή και της τεχνικής υποστήριξης.

ΠΕΡΙΠΤΩΣΗ 6: Στο [t2] η ECR δε λαμβάνει έγκυρη απάντηση στο RESULT (σκουπίδια, λάθος μήνυμα ή λάθος στοιχεία)

Η ECR θα πρέπει να διακόψει την επικοινωνία και να εμφανίσει σχετικό μήνυμα. Εναπόκειται στο χειριστή να κάνει τις απαιτούμενες ενέργειες, όπως το να ελέγξει το αν η συναλλαγή εγκρίθηκε από το EFTPOS και να εκτελέσει RESEND- ΟΝΕ.

Το EFTPOS εφόσον διαπιστώνει την αποτυχία αποστολής RESULT εμφανίζει ή εκτυπώνει σχετικό μήνυμα και καταχωρεί τη συναλλαγή (αν εγκρίθηκε) με ecr txn status 1.

ΠΕΡΙΠΤΩΣΗ 7 (EFTPOS): Στο [t3] το EFTPOS δε λαμβάνει ACK-RESULT

Αυτό μπορεί να οφείλεται είτε σε αποτυχία αποστολής του RESULT είτε σε εσωτερικό πρόβλημα της ECR είτε σε πρόβλημα επικοινωνίας κατά την αποστολή του ACK-RESULT.

Το EFTPOS καταχωρεί τη συναλλαγή με ecr txn status 1.

6. Περιγραφή του μηχανισμού MAC

Ο σχετικός μηχανισμός του MAC (message authentication checksum) από πλευράς υλοποίησης για την επικοινωνία των δύο μερών συνοψίζεται στην Εικόνα 8 .

Εικόνα 8

1) Στο αρχικό στάδιο προετοιμασίας συμφωνείται μεταξύ των παρόχων EFTPOS και ECR η εμφύτευση σε αμφότερες τις συσκευές ενός κοινού αρχικού κλειδιού (master key - ΜΚ), με διαδικασίες και πρακτικές που θα το προστατεύουν από το να διαρρεύσει.

H διαδικασία περιγράφεται στο κεφάλαιο «Έκδοση και διάθεση αρχικού κλειδιού (master key-ΜΚ)»

2) Η ECR παράγει ένα ψευδοτυχαίο session κλειδί (SK) για χρήση.

3) Μέσω ροής ελέγχου ([CONTROL] μήνυμα), η ECR στέλνει στο EFTPOS το SK κρυπτογραφημένο υπό το ΜΚ με T-DES

4) Το EFTPOS αποκρυπτογραφεί το SK υπό το MK και το αποθηκεύει για χρήση.

5) Κατά τις ροές των συναλλαγών είναι το SK που χρησιμοποιείται για έλεγχο εγκυρότητας του αποστολέα των αιτημάτων.

Tο SK μπορεί να ανανεώνεται τακτικά με χρήση [CONTROL] μηνύματος από την ECR.

Το ΜΚ μπορεί να ανανεώνεται σε πιο αραιά χρονικά διαστήματα, με διαδικασίες και μηχανισμούς που θα συμφωνούν από κοινού οι πάροχοι των EFTPOS και των ECR.

Προτείνεται η χρήση T-DES MAC αλγορίθμου (του συνήθους mode CBC 1) με double length κλειδί (16 bytes).

Παράδειγμα κρυπτογράφησης session κλειδιού και υπολογισμού MAC

Test ΜΚ (plain): ABCDEF01234567899876543210ABCDEF (KCV: 48934A)

Test SΚ (plain): 12340000ABCD111122223333FFFFDDDD (KCV: CC5FFF) Test SΚ (encr): 1ED9F7AE0B2509281BBC2DE38EF2A12B

Message:

I A/S000922/F2000:978:2/D20220513150958/RABC00111222/H121/T000922/M00000000 |

MAC: 4540A2547CFBA23A

Στοιχείο mac : /Q4540A254

Ο υπολογισμός του MAC του παραπάνω παραδείγματος γίνεται ως εξής

INPUT AFTER PADDING (length=80):

41 2F 53 30 30 30 39 32 32 2F 46 32 30 30 30 3A |A/S000922/F2000: 39 37 38 3A 32 2F 44 32 30 32 32 30 35 31 33 31 |978:2/D202205131 35 30 39 35 38 2F 52 41 42 43 30 30 31 31 31 32 |50958/RABC001112 32 32 2F 48 31 32 31 2F 54 30 30 30 39 32 32 2F |22/H121/T000922/ 4D 30 30 30 30 30 30 30 30 00 00 00 00 00 00 00 |M00000000

Number of blocks: 10

Block 0: P:

Block 5: P:

41 2F 53 30 30 30 39 32

H:

|A/S00092

42 43 30 30 31 31 31 32

H:

|BC001112

00 00 00 00 00 00 00 00 P(xor)H:

|

E2 D8 E8 13 0F 40 1A F0 P(xor)H:

| @..

41 2F 53 30 30 30 39 32 TDES of P(xor)H:

|A/S00092

A0 9B D8 23 3E 71 2B C2

TDES of P(xor)H:

|...#>q+.

00 41 06 32 34 81 FB 65

Block 1:

P:

|.A.24..e

1C 84 7B 3C E8 0D 33 41

Block 6:

P:

|..{<..3A

32 2F 46 32 30 30 30 3A

H:

|2/F2000:

32 32 2F 48 31 32 31 2F

H:

|22/H121/

00 41 06 32 34 81 FB 65 P(xor)H:

|.A.24..e

1C 84 7B 3C E8 0D 33 41 P(xor)H:

|..{<..3A

32 6E 40 00 04 B1 CB 5F

TDES of P(xor)H:

|2n@ _

2E B6 54 74 D9 3F 02 6E

TDES of P(xor)H:

|..Tt.?.n

EB 92 A8 CD 45 24 2A 10

Block 2:

P:

| E$*.

15 9E 89 04 3F B1 CA 40

Block 7:

P:

| ?..@

39 37 38 3A 32 2F 44 32

|978:2/D2

54 30 30 30 39 32 32 2F

|T000922/

H:

H:

EB 92 A8 CD 45 24 2A 10

| E$ 2 .

15 9E 89 04 3F B1 CA 40

| ?..@

P(xor)H:

P(xor)H:

D2 A5 90 F7 77 0B 6E 22

| w.n"

41 AE B9 34 06 83 F8 6F

|A..4...o

TDES of P(xor)H:

TDES of P(xor)H:

CE 85 08 94 25 AE 32 5E

| %.2^

19 48 5D 23 E9 36 DD 38

|.H]#.6.8

Block 3:

Block 8:

P:

P:

30 32 32 30 35 31 33 31

|02205131

4D 30 30 30 30 30 30 30

|M0000000

H:

H:

CE 85 08 94 25 AE 32 5E

| %.2^

19 48 5D 23 E9 36 DD 38

|.H]#.6.8

P(xor)H:

P(xor)H:

FE B7 3A A4 10 9F 01 6F

|..: o

54 78 6D 13 D9 06 ED 08

|Txm

TDES of P(xor)H:

TDES of P(xor)H:

D5 E9 95 DF DA 5F DF 69

| _.i

93 56 0E CE A7 E2 CA 8A

|.V

Block 4:

Block 9:

P:

P:

35 30 39 35 38 2F 52 41

|50958/RA

30 00 00 00 00 00 00 00

|0

H:

H:

D5 E9 95 DF DA 5F DF 69

| _.i

93 56 0E CE A7 E2 CA 8A

|.V

P(xor)H:

P(xor)H:

E0 D9 AC EA E2 70 8D 28

| p.(

A3 56 0E CE A7 E2 CA 8A

|.V

TDES of P(xor)H:

TDES of P(xor)H:

E2 D8 E8 13 0F 40 1A F0

| @..

45 40 A2 54 7C FB A2 3A

|E@.T|..:

Result: [4540A2547CFBA23A]

7. Σύνοψη χειρισμών αντιστοίχισης συνόλων

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

ΣΤΗ ΝΕΑ ΔΙΑΣΥΝΔΕΣΗ :

Κάθε συναλλαγή του EFTPOS πρέπει να έχει αντιστοίχιση σε απόδειξη της ECR.

Το EFTPOS δε θα επιτρέπει από το μενού το κλείσιμο πακέτου ημέρας, αν υπάρχουν συναλλαγές που δεν έχουν τέτοια αντιστοίχιση και θα παραπέμπει σε διεκπεραίωση μέσω ECR.

Σε κάθε περίπτωση, οι συναλλαγές στο EFTPOS που έγιναν χωρίς επικοινωνία της ECR έχουν διακριτή σήμανση τόσο στις αποδείξεις όπως και στις ημερήσιες αναφορές του EFTPOS, όπως:

Σ/ΓΗ POS-3: αν ξεκίνησε από το EFTPOS με βάση προφορτωμένη απόδειξη ή τιμολόγιο που εκδόθηκε ήδη από την ECR όπου χρησιμοποιήθηκαν περισσότερες κάρτες για την ίδια αγορά.

Σ/ΓΗ POS-4: πιστωτική συναλλαγή που έγινε στο EFTPOS αυτόνομα χωρίς χρήση ΦΗΜ, ή χρεωστική συναλλαγή που έγινε στο EFTPOS αυτόνομα, λόγω βλάβης της ECR ή βλάβης υποδομής, κατόπιν έγκρισης από το ΠΣ ΦΗΜ.

ΤΑ ΣΥΝΗΘΗ ΣΕΝΑΡΙΑ :

1) Αγορά στην ECR με μετρητά

2) Αγορά στην ECR με κάρτα, αλλά ο πελάτης τελικά δεν είχε μαζί του κάρτα Διακόπτεται από το EFTPOS και η ECR λαμβάνει [RESULT] απόρριψης.

3) Αγορά στην ECR με χρήση κάρτας και ομαλή επικοινωνία EFTPOS-ECR Το EFTPOS λαμβάνει αυτόματα, καταχωρεί και εκτυπώνει στην απόδειξή του: session number (ΑΡ.ΣΥΝΔΕΣΗΣ) , ecr Id (ΑΡ.ΜΗΤΡΩΟΥ ΜΗΧΑΝΗΣ) , receipt - number (ΑΡ. ΑΠΟΔΕΙΞΗΣ) .

4) Αγορά στην ECR με χρήση κάρτας και προβληματική ολοκλήρωση επικοινωνίας EFTPOS-ECR

Το EFTPOS λαμβάνει αυτόματα, καταχωρεί και εκτυπώνει: session number , ecrId , receipt -number .

Η ECR δε λαμβάνει την τελική απάντηση του EFTPOS και δεν τυπώνει απόδειξη. Tο EFTPOS σημειώνει τη σχετική εγγραφή ως εκκρεμή ως προς την ECR . Στην απόδειξη του EFTPOS εκτυπώνεται συμπληρωματικά “**Σ/ ΓΗ POS-1**”.

Ο χειριστής της ECR μπορεί να ζητήσει από το EFTPOS επανάληψη της τελικής απάντησης (RESEND ONE π.χ. με μια επιλογή « POS ΞΑΝΑΣΤΕΙΛΕ ») και να τυπώσει απόδειξη. Τότε το EFTPOS σημειώνει τη σχετική εγγραφή ως διεκπεραιωθείσα ως προς την ECR .

5) Αγορά στο EFTPOS κατά την παράδοση κατ’ οίκον

To EFTPOS έχει λάβει κάποια «προφορτωμένη» απόδειξη ή τιμολόγιο από την ECR μέσω της ροής REGRECEIPT με τα στοιχεία της (ποσό, ecrid, session number, receipt number, custom data) και εκτελεί ετεροχρονισμένα και αυτόνομα μέσω ειδικής επιλογής χειρισμού μία ή περισσότερες χρεωστικές ή πιστωτικές συναλλαγές για την συγκεκριμένη προφορτωμένη απόδειξη, χωρίς ωστόσο το αλγεβρικό σύνολο των συναλλαγών αυτών να υπερβαίνει το συνολικό ποσό της προφορτωμένης απόδειξης.

Στην απόδειξη του EFTPOS εκτυπώνεται η σήμανση “**ΣΥΝ/ΓΗ POS-2**”

6) Εξόφληση πολλών προφορτωμένων αποδείξεων με μία χρεωστική συναλλαγή

Το EFTPOS έχει λάβει αρκετές προφορτωμένες αποδείξεις ή τιμολόγια από την ECR μέσω της ροής REGRECEIPT με τα στοιχεία τους (ποσό, ecrid, session number, receipt number, custom data) και εκτελεί ετεροχρονισμένα και αυτόνομα μέσω ειδικής επιλογής χειρισμού μία χρεωστική συναλλαγή εξόφλησης επιλέγοντας περισσότερες από μία προφορτωμένες αποδείξεις ή τιμολόγια, με τον περιορισμό πάντοτε της μη πληκτρολόγησης ποσού.

Στην απόδειξη του POS εκτυπώνεται η σήμανση “**ΣΥΝ/ΓΗ POS-3**”.

ΚΛΕΙΣΙΜΟ ΠΑΚΕΤΟΥ ΣΤΟ EFTPOS :

Εφόσον το EFTPOS εντοπίζει πιστωτικές συναλλαγές που εκτελέστηκαν αυτόνομα ή χρεωστικές συναλλαγές που εκτελέστηκαν με προφορτωμένες αποδείξεις ή τιμολόγια της ECR, δε θα επιτρέπει την εκτέλεση της ενέργειας και θα παραπέμπει στην ECR για τακτοποίηση των εκκρεμοτήτων μέσω επιλογής με ονομασία π.χ. « ΕΛΕΓΧΟΣ ΠΑΚΕΤΟΥ POS» .

Η επιλογή « ΕΛΕΓΧΟΣ ΠΑΚΕΤΟΥ POS» εκτελεί τη ροή RESEND-ALL όπου η ECR λαμβάνει μία-μία τις εκκρεμείς εγγραφές από το EFTPOS και επιστρέφει κάποιο sessionId.

Σε κάθε περίπτωση η ECR θα πρέπει επιστρέψει ένα ACK-RESULT μήνυμα στο EFTPOS για κάθε εκκρεμή εγγραφή ώστε το EFTPOS να μπορεί να κλείσει πακέτο.

Στο EFTPOS τηρείται επί μακρόν ξεχωριστό αρχείο με τα βασικά στοιχεία των συναλλαγών που εστάλησαν με RESEND-ALL. Συγκεκριμένα για κάθε συναλλαγή τηρούνται τα ακόλουθα στοιχεία:

Ημερομηνία-χρόνος

Τύπος (αγορά, ακύρωση, …)

Ποσό

Κατηγορία επικοινωνίας με την ECR (0,1,2,3,4,5)

ecrId

Session Id

Η χρονική διάρκεια τήρησης των εγγραφών αυτών περιορίζεται από το αποθηκευτικό χώρο του EFTPOS και την ημερήσια εμφάνιση εκκρεμών εγγραφών. Ως τυπικό όριο τίθενται οι 1000 εγγραφές.

Σε περίπτωση λειτουργίας του EFTPOS με βλάβη ECR, όχι όμως στην περίπτωση βλάβης υποδομής, επιτρέπεται το EFTPOS να εκτελέσει κλείσιμο πακέτου, με την προϋπόθεση της μη διαγραφής των εκκρεμών συναλλαγών προς την ECR. Η διάκριση στο EFTPOS αν πρόκειται για βλάβη ECR ή βλάβη υποδομής, προκύπτει από την τιμή του πεδίου UNLTime που έλαβε το EFTPOS από το ΠΣΦΗΜ Esend

κατά την δήλωση της βλάβης. Ειδικότερα, αν το πεδίο UNLTime έχει τιμή μεγαλύτερη του 12, πρόκειται για βλάβη ECR, ενώ αν έχει τιμή μικρότερη ή ίση του 12, πρόκειται για βλάβη υποδομής.

8. Πιθανά σενάρια βλαβών και διαδικασίες αντιμετώπισής τους

Για την εύρυθμη λειτουργία των επιχειρήσεων, σε περίπτωση βλάβης της ECR ή σε περίπτωση βλάβης στην υποδομή της επιχείρησης ορίζεται η παρακάτω διαδικασία αποδέσμευσης του κλειδώματος του πληκτρολογίου του EFTPOS. Σε όλες τις περιπτώσεις επικοινωνίας, απαραίτητη προϋπόθεση είναι η επιτυχής αποστολή του Master Key MK από το ΠΣΦΗΜ Esend στο EFTPOS, όπως περιγράφεται στην παράγραφο 9.

Διαδικασία ενεργοποίησης πληκτρολογίου τερματικού:

Ο χρήστης του EFTPOS, αφού διαπιστωθεί και επιβεβαιωθεί βλάβη στην επικοινωνία, μέσω κατάλληλου χειρισμού επιλέγει τον τύπο βλάβης, Βλάβη ECR ή Βλάβη Υποδομής. Μετά την επιλογή του χρήστη, το EFTPOS εκτελεί κλήση στον ΠΣ ΦΗΜ (Esend) όπου δηλώνεται ο τύπος της βλάβης (δείγμα επικοινωνίας παρακάτω). Εφόσον υπάρχει απάντηση επιτυχίας (SUCCESS) από το ΠΣΦΗΜ Esend, ξεκλειδώνεται το πληκτρολόγιο του EFTPOS και επιτρέπεται η χειροκίνητη έκδοση συναλλαγών. Το χρονικό διάστημα που επιτρέπεται να λειτουργεί το EFTPOS με ενεργοποιημένη την χειροκίνητη εισαγωγή ποσού συναλλαγής καθώς και συχνότητα που επιτρέπεται αυτή η ενεργοποίηση, αναφέρεται στην Απόφαση αυτή. Το χρονικό διάστημα που επιτρέπεται να λειτουργεί το EFTPOS με ενεργοποιημένη την χειροκίνητη εισαγωγή ποσού συναλλαγής ορίζεται σε ειδικό πεδίο (UNLTime) μέσα στην απάντηση που λαμβάνεται από τον server . Τα σενάρια για τα οποία επιτρέπεται η διαδικασία ενεργοποίησης του πληκτρολογίου είναι τα παρακάτω:

1. Σενάριο 1: Η ECR έχει βλάβη που δεν μπορεί να αντιμετωπιστεί άμεσα (κρίσιμο σφάλμα υλικού). Η συναλλαγή όταν εκτελεστεί αυτόνομα από το EFTPOS και παίρνει το num 4 στο πεδίο “txn-ecr-status”.

2. Σενάριο 2: H ECR λειτουργεί, αλλά υπάρχει βλάβη στην υποδομή της επιχείρησης που δεν επιτρέπει την επικοινωνία των συσκευών. Η συναλλαγή όταν εκτελεστεί αυτόνομα από το EFTPOS, παίρνει το num 5 στο πεδίο “txn-ecr- status”. Ο χειριστής είναι υποχρεωμένος σε κάθε συναλλαγή να εισάγει τον αριθμό της απόδειξης (Προοδευτικός Α/Α αποδείξεων). Μετά την εισαγωγή του αριθμού της απόδειξης προχωράει η διαδικασία έγκρισης.

Να σημειωθεί ότι σε όλα τα παραπάνω σενάρια οι συναλλαγές αυτές πρέπει υποχρεωτικά να διαφυλάσσονται στο EFTPOS έως ότου επανέλθει η ορθή επικοινωνία με την ECR.

Επαναφορά Επικοινωνίας - Διαδικασία Απενεργοποίησης πληκτρολογίου τερματικού:

Μετά την αποκατάσταση της βλάβης, πρέπει είτε μέσω ειδικού χειρισμού της ECR να στέλνεται η εντολή CONTROL (UNBIND_POS - 0) στο EFTPOS, είτε να γίνεται οποιαδήποτε άλλη ορθή επικοινωνία μεταξύ ECR->EFTPOS. Με τον τρόπο αυτό η ECR επιβεβαιώνει την αποκατάσταση της βλάβης. Λαμβάνοντας την εντολή αυτή, το EFTPOS αυτόματα κλειδώνει το πληκτρολόγιό του και ακολούθως κάνει νέα κλήση στο ΠΣΦΗΜ Esend, όπου δηλώνει την επίλυση της βλάβης. Στη συνέχεια μέσω ειδικού χειρισμού, η ECR με την αποστολή της εντολής RESEND- ALL ζητάει από το EFTPOS όλες τις συναλλαγές που εκδόθηκαν αυτόνομα (είτε είναι για κάποιο άλλο λόγο σε εκκρεμότητα), έτσι ώστε να μπορέσουν να δημιουργηθούν οι έγγραφές των φορολογικών αρχείων e.txt με κωδικό παραστατικού 356 και ποσά amount, amount final θετικά εφόσον πρόκειται για πληρωμή με κάρτα ή αρνητικά, εφόσον πρόκειται για επιστροφή σε κάρτα. Έως ότου αποσταλούν επιτυχώς οι συναλλαγές αυτές στην ECR, το EFTPOS δεν θα μπορεί να εκτελέσει κλείσιμο πακέτου.

Στο EFTPOS υπάρχει ειδική αναφορά στην οποία αποτυπώνονται ξεχωριστά οι μετρητές, τα δεδομένα και τα ποσά για τις ως άνω συναλλαγές , βάσει ημερολογιακών κριτηρίων.

Τεχνικές προδιαγραφές εντολής αιτήματος στο Esend

Μορφή ανταλλαγής δεδομένων: JSON

HTTP method: POST

Standard API Description (EFTPOS <--> Esend)

Production endpoint: https://www1.aade.gr/tameiakes/mysec/keyblock.php

Πεδία πακέτου αποστολής

Field

Size

Description

TID

≤10 chars

Terminal Identification Number (EFTPOS)

UNBOUND_POS

1 char

0 (Η βλάβη αποκαταστάθηκε)

1 (Ενεργοποίηση πληκτρολογίου)

TAX ID

9 chars

ΑΦΜ επιχείρησης

ECR ID

11 chars

Αριθμός μητρώου ECR για την οποία έχει ήδη δηλωθεί προσωρινή βλάβη σύμφωνα με την παρ.39 της Α.1173/2022.

MACKEY

32 chars

To Master key που έλαβε αρχικά το EFTPOS από το ΠΣΦΗΜ esend.

Μορφοποίηση πεδίων (αίτημα ενεργοποίησης πληκτρολογίου):

{

"TID": "99009999",

"UNBOUND_POS": "1",

"TAXID": "01345678",

"ECRID": "XXX12345678",

"MACKEY": "30001234C330001234C330001234C322" }

Μορφοποίηση πεδίων (κλήση αποκατάστασης βλάβης):

{ "TID": "99009999",

"UNBOUND_POS": "0",

"TAXID": "01345678",

"ECRID": "XXX12345678",

"MACKEY": "30001234C330001234C330001234C322" }

Πεδία απάντησης

Field

Size

Description

Status

3 chars

Replied status code

TID

≤10 chars

Terminal Identification Number (EFTPOS)

UNLTime

≤4 chars

The Maximum allowed time (in hours) that EFT can accept manual payments

Μορφοποίηση πεδίων απάντησης

{

"Status": "000",

"TID": "99009999"

"UNLTime": "12"

}

Response Status codes

Status

Description

000

SUCCESS

101

Check the contents of the fields

102

Format error

103

Unregistered Device

104

Busy-Retry

105

Unspecified error

106

DENIED (The UNLTime field will be zero)

Στην περίπτωση όπου δεν έχει προηγηθεί δήλωση προσωρινής βλάβης ECR ή δήλωση προσωρινής βλάβης υποδομής στο ΠΣΦΗΜ, ή η ισχύς της δηλώσεως προσωρινής βλάβης έχει παρέλθει, τότε η απάντηση του ΠΣΦΗΜ Εsend στο EFTPOS για την απελευθέρωση του πληκτρολογίου, είναι αρνητική. Αρνητική είναι επίσης η απάντηση στην περίπτωση όπου το master key δεν αντιστοιχεί στο συγκεκριμένο EFTPOS.

9. Έκδοση και διάθεση αρχικού κλειδιού (master key-ΜΚ)

Για την αποφυγή της δημοσιοποίησης των κλειδιών κατά την σύζευξη της ECR και του EFTPOS και με σκοπό την αποτροπή οποιασδήποτε ενέργειας παράκαμψης της αρχικής σύνδεσης, η έκδοση και η εγκατάσταση του αρχικού κλειδιού (master key-MK) γίνεται μέσω ανεξάρτητων κλήσεων των ECR και EFTPOS στο ΠΣΦΗΜ Esend, που λειτουργεί και συντηρείται στις υποδομές της ΑΑΔΕ.

Οι κλήσεις εκτελούνται με πεδία αρχικοποίησης για την ECR: τον αριθμό μητρώου ECR και το ΑΦΜ της επιχείρησης, ενώ για το EFTPOS: το TID του EFTPOS, το

ΑΦΜ της επιχείρησης, το διακριτικό όνομα του κατασκευαστή EFTPOS και το αντίστοιχο APIKEY.

Η διαδικασία δημιουργίας του αρχικού κλειδιού(master key-MK) εκκινεί από την ECR έτσι ώστε μετά τη δημιουργία και επιστροφή στην ECR του αρχικού κλειδιού από το ΠΣΦΗΜ Esend, αυτό να είναι διαθέσιμο για την λήψη του και από το EFTPOS.

Security

Το url επικοινωνίας των EFTPOS με το ΠΣΦΗΜ Esend για την λήψη του ΜΚ είναι το : https://www1.aade.gr/tameiakes/mysec/eftposmk.php

Για την επικοινωνία των ΦΗΜ με το ΠΣΦΗΜ Esend χρησιμοποιείται η διαδικασία κρυπτογράφησης μέσω AES-256 που καθορίζεται στην Απόφαση Διοικητή ΑΑΔΕ ΠΟΛ 1166/2018. Το url επικοινωνίας των ΦΗΜ με το ΠΣΦΗΜ Esend για την λήψη του ΜΚ είναι το : http://tam.gsis.gr/eafdss/ myweb/fhmmk.php

Standard API Description (EFTPOS <--> Esend)

Production endpoint: https://www1.aade.gr/tameiakes/mysec/eftposmk.php

Μορφή ανταλλαγής δεδομένων: JSON

HTTP method: POST

Πεδία πακέτου αποστολής

Field

Size

Description

TID

≤10 chars

Terminal Identification Number (EFTPOS)

ECRID

11 chars

Fiscal device number from ECR ECHO call

TAX ID

9 chars

ΑΦΜ επιχείρησης

MAN

<=20 chars

Διακριτικό όνομα κατασκευαστή EFTPOS

APIKEY

<= 64 chars

APIKEY

Μορφοποίηση πεδίων:

{ "TID": "99009999", "ECRID": "XXX99000000", "TAXID": "01345678",

"MAN": "eftpos-hellas", "APIKEY":

"012345678901234567890123456789QWERTYUIOPASDFGHJKLZ12345678 901234" }

Το πεδίο MAN, καθορίζεται από τον ενδιαφερόμενο κατασκευαστή EFTPOS που το κοινοποιεί στην αρμόδια υπηρεσία του ΠΣΦΗΜ Esend με αίτηση μέσω email, ενώ το πεδίο APIKEY καθορίζεται από την αρμόδια υπηρεσία του ΠΣΦΗΜ Esend που το κοινοποιεί στον ενδιαφερόμενο κατασκευαστή EFTPOS μέσω email.

Πεδία απάντησης

Field

Size

Description

Status

3 chars

Replied status code

Descriptio n

<= 25 chars

Status description

TID

≤10 chars

Terminal Identification Number (EFTPOS)

MACKEY

32 chars

master key-MK

Μορφοποίηση πεδίων:

{

"Status": "000",

"Description": "SUCCESS",

"TID": "990099",

"MACKEY": "30001234C330001234C330001234C322"

}

Standard API Description (ΦΗΜ <--> Esend)

Production endpoint: http://tam.gsis.gr/eafdss/myweb/fhmmk.php

Μορφή ανταλλαγής δεδομένων: ENCRYPTED RAW (AES KEY encryption method).

HTTP method: POST

Πεδία πακέτου αποστολής

Field Size Description

ECRID

11 chars

Αριθμός Μητρώου ΦΗΜ

TID

≤10 chars

Terminal Identification Number (EFTPOS)

TAX ID

9 chars

ΑΦΜ επιχείρησης

Μορφοποίηση πεδίων (αν δεν ήταν κρυπτογραφημένα) "XXX99000000;990099;01345678"

Πεδία απάντησης

Field

Size

Description

Status

3 chars

Replied status code

Descriptio n

<= 25 chars

Status description

TID

≤10 chars

Terminal Identification Number (EFTPOS)

MACKEY

32 chars

master key-MK

Μορφοποίηση πεδίων (αν δεν ήταν κρυπτογραφημένα):

"000;SUCCESS;XXX99000000;30001234C330001234C330001234C322"

Response Status codes

Status

Description

000

SUCCESS

101

Check the contents of the fields

102

Format error

103

Unregistered Fiscal Device

104

Busy-Retry

105

Unspecified error

Ειδικότερα, για την λήψη του Master Key (MK , MACKEY) ισχύουν οι ακόλουθοι κανόνες κρυπτογράφησης:

Ερώτημα από ΦΗΜ:

1) ECRID

2) TID-encrypted-HEX_representation

3) TAXID ΑΦΜ-encrypted-HEX_representation(με το ίδιο IV)

4) IV (Initialization vector του ΦΗΜ)-HEX_representation

To encryption γίνεται με το AESKEY του κατασκευαστή.

Όλα τα πεδία είναι συνεχόμενα, με διαχωριστή delimiter (;), plain/text POST.

Απάντηση από Esend:

1) Status

2) Description

3) TID-encrypted-HEX_representation

4) MACKEY-encrypted-HEX_representation(με το ίδιο IV)

5) IV (Initialization vector του server)-HEX_representation

To decryption γίνεται με το AESKEY του κατασκευαστή.

Όλα τα πεδία είναι συνεχόμενα, με διαχωριστή delimiter (;).

10. Λήψη του AESΚΕΥ από το ΠΣΦΗΜ για τους ΦΗΜ.

Ταυτόχρονα με την απόφαση έγκρισης ΦΗΜ, κοινοποιείται στην κατασκευάστρια επιχείρηση ΦΗΜ, το «βασικό AESKEY» της κατασκευάστριας επιχείρησης για τους ΦΗΜ της συγκεκριμένης έγκρισης. Μετά την υποβολή της δήλωσης έναρξης Δ13, ο ΦΗΜ μπορεί να επικοινωνήσει με ειδικό url του ΠΣΦΗΜ Esend χρησιμοποιώντας ως AESKEY το βασικό AESKEY του κατασκευαστή. Το ΠΣΦΗΜ

Esend, επιστρέφει στον ΦΗΜ κρυπτογραφημένο, το AESKEY του ΦΗΜ που θα χρησιμοποιείται για τις κρυπτογραφήσεις των διαβιβάσεων δεδομένων συναλλαγών.

Standard API Description (ΦΗΜ <--> Esend)

Production endpoint: http://tam.gsis.gr/eafdss/myweb/aeskey.php

Μορφή ανταλλαγής δεδομένων: ENCRYPTED RAW (AES KEY encryption method).

HTTP method: POST

Πεδία πακέτου αποστολής

Field

Size

Description

ECRID

11 chars

Αριθμός Μητρώου ΦΗΜ

TAX ID

9 chars

ΑΦΜ επιχείρησης - κατόχου

Μορφοποίηση πεδίων (αν δεν ήταν κρυπτογραφημένα)

"XXX99000000;01345678"

Πεδία απάντησης

Field

Size

Description

Status

3 chars

Replied status code

Description

25 chars

Status description

ECRID

11 chars

Αριθμός Μητρώου ΦΗΜ

AESKEY

40 chars

AESKEY

Μορφοποίηση πεδίων (αν δεν ήταν κρυπτογραφημένα)

"000;SUCCESS;XXX99000000;30001234C330001234C330001234C3223456

789F"

Response Status codes

Status

Description

000

SUCCESS

101

Check the contents of the fields

102

Format error

103

Unregistered Fiscal Device

104

Busy-Retry

105

Unspecified error

Ειδικότερα, κατά την λήψη του AESΚΕΥ για τους ΦΗΜ από το Esend, ισχύουν οι ακόλουθοι κανόνες κρυπτογράφησης:

Ερώτημα από ΦΗΜ:

1) ECRID

2) TAXID ΑΦΜ-encrypted-HEX_representation

3) IV (Initialization vector του ΦΗΜ)-HEX_representation

To encryption γίνεται με το AESKEY του κατασκευαστή.

Όλα τα πεδία είναι συνεχόμενα, με διαχωριστή delimiter (;), plain/text POST.

Απάντηση από ESEND:

1) Status

2) Description

3) ECRID-encrypted-HEX_representation

4) AESKEY-encrypted-HEX_representation(με το ίδιο IV)

5) IV (Initialization vector του server)-HEX_representation

To decryption γίνεται με το AESKEY του κατασκευαστή.

Όλα τα πεδία είναι συνεχόμενα, με διαχωριστή delimiter (;)