Προφορτωμένες συναλλαγές. Πως "διαβάζονται" οι συναλλαγές που ολοκληρώθηκαν όταν επιστρέψει το POS στην βάση του?

Σε περίπτωση προφορτωμένων κινήσεων σε EFT/POS και εφόσον το response δεν περιέχει περισσότερες πληροφορίες πέραν του SessionId, με ποιον τρόπο είναι δυνατή η ανάγνωση των κινήσεων μετά την επιστροφή της συσκευής στην έδρα? Το σενάριο αφορά delivery και θα θέλαμε να γνωρίζουμε.
α. Αν πρέπει να υλοποιηθούν οι κλήσεις RESEND από το ERP ή αν μπορεί να γίνει από τη συσκευή.

β. Μην γνωρίζοντας RRN ή ότιδήποτε άλλο από τις απεσταλμένες κινήσεις ποιον τρόπο προτείνετε να γίνει το Matching των κινήσεων για την ενημέρωση των υπολοίπων συστημάτων.


Για το ερώτημα (α) θα πρέπει να υλοποιηθούν οι κλησεις Resend από το ERP και για την λήψη περισσότερων πληροφοριών θα πρέπει να καλέσετε την Transaction Details με την χρήση του REF Number της συναλλαγής.

Για το ερώτημα (β) Μην γνωρίζοντας το RRN της συναλλαγής δεν είναι εφικτή η τελική εύρεση αυτής. Σε πιθανές μελλοντικές αναβαθμίσεις είναι πιθανό να καλυφθεί αυτό το θέμα


Σε όλες τις περιπτώσεις η εφαρμογή ERP στέλνει στο Request τα uniqueTxnId & receiptNumber & documentIdentifier(ή token).


Update 27/9/2024


Για να ενημερωθείτε για την εξέλιξη της συναλλαγής μπορείτε να το κάνετε μέσω του GetTransactionDetails

π.χ. σε κίνηση σε κανονικό POS και όχι σε VPOS (για χρήση VPOS θέλει και το uniqueIntegratorId)


POST http://localhost:9090/transactiondetails

{
"serviceData": {
"host": "{posIp}",
"port": "4000",
"ecrid": "{tid}"
},
"transactionData": {
"uniqueTxnId": "84db7cddf0fb4cb9e9b94cb02b4a4aeb",
"referenceNumber": "001001"
}
}

Η αναζήτηση της συναλλαγής γίνεται μέσω του referenceNumber, και αυτό που μπορείτε να κάνετε είναι εφόσον η προηγούμενη ολοκληρωμένη συναλλαγή

ήταν π.χ. 010002

  • 010 -> Αριθμός πακέτου
  • 002 -> αριθμός συναλλαγής

Τότε το transactionDetails μήνυμα θα διαμορφωνόταν ως εξής:


POST http://localhost:9090/transactiondetails

{
"serviceData": {
"host": "{posIp}",
"port": "4000",
"ecrid": "{tid}"
},
"transactionData": {
"uniqueTxnId": "84db7cddf0fb4cb9e9b94cb02b4a4aeb",
"referenceNumber": "010003"
}
}


Σε Possible version όπου θα διατεθεί πολύ σύντομα θα υπάρχει διαθέσιμη θα λειτουργεί και η αναζήτηση μέσω του uniqueTxnId.


Το uniqueTxnId είναι πεδίο όπου εσείς γεμίζετε με 32 χαρακτήρες, το οποίο θα χρησιμοποιείται όπως παρακάτω για την εύρεση της εν λόγω συναλλαγής.


POST http://localhost:9090/transactiondetails

{
"serviceData": {
"host": "{posIp}",
"port": "4000",
"ecrid": "{tid}"
},
"transactionData": {
"uniqueTxnId": "84db7cddf0fb4cb9e9b94cb02b4a4aeb",
"referenceNumber": "000000"
}
}