KNOWLEDGEBASE

Knowledgebase-128x128

Συχνά σφάλματα-λύσεις POS

Πληροφορίες σχετικά με τη διασύνδεση υπάρχουν στο wiki της Entersoft και πιο συγκεκριμένα:

Read me ERP-EL02-5.8.0.1 https://wiki.entersoft.eu/wiki/ERP-EL02-5.8.0.1
Implementation manual POS 1155 (επιλέγετε τo Latest version) https://wiki.entersoft.eu/wiki/%CE%9A%CE%B1%CF%84%CE%B7%CE%B3%CE%BF%CF%81%CE%AF%CE%B1:POS_DOCS
Πριν την παραμετροποίηση όπως προχωρήσετε σε εγκατάσταση latest hotfixes

Για τη διερεύνηση ενός προβλήματος που αφορά διασύνδεση Πάροχο – POS:

Σε πρώτη φάση ελέγχουμε εάν το μοντέλο είναι συμβατό, βάσει της λίστας στο Entersoftwiki:
       https://wiki.entersoft.eu/wiki/Compatible_POS

Να διασφαλιστεί ότι έχουν περαστεί τα latest hotfixes στο EBS
Για οποιοδήποτε πρόβλημα αντιμετωπίζουμε, πρέπει να διασφαλίσουμε ότι έχει γίνει η απαραίτητη παραμετροποίηση βάσει του implementation manual που βρίσκεται στο wiki μας (https://wiki.entersoft.eu/wiki/V1.2_5.8.0.1_POS_1155_ImplementationManual)
και παράλληλα να εξετάσουμε αν το POS έχει αναβαθμιστεί με επιτυχία.

Πληροφορίες σχετικά με τους NSP μπορείτε να βρείτε στο link

POS_FHMAS_1155

Σε περίπτωση που το πρόβλημα απαιτεί περαιτέρω διερεύνηση μπορείτε να επικοινωνήσετε με το Support, στην επικοινωνία σας προτείνουμε να έχετε διαθέσιμα τα παρακάτω

Έχουμε περιπτώσεις όπου κατά την έγκριση πληρωμής μπορεί να λάβουμε σφάλμα:

«H πληρωμή με POS απέτυχε. Κωδικός σφάλματος 58;TXN_VALIDATION_FAILED.»

Φαίνεται ότι το συγκεκριμένο τερματικό δεν έχει το κλειδί του παρόχου. Θα χρειαστεί στο POS να δηλώσετε Provider ID (Κλειδί Παρόχου).

Για να το κάνετε αυτό πρέπει:

Στην αρχική οθόνη του τερματικού πατάμε “OK”,
Στην επιλογή “ΛΕΙΤ.EDPS” πατάμε “OK”,
Πληκτρολογούμε “50” και “OK”,
Επιλέγουμε «ΚΛΕΙΔΙ ΠΑΡΟΧΟΥ»,
Πληκτρολογούμε το τριψήφιο κωδικό παρόχου 002

CARDLINK intranet: model A80 σφάλμα THE_POS_DID_NOT_RESPOND_ON_TIME
Σε περίπτωση όπου κατά την έγκριση πληρωμής λάβω το σφάλμα:

«H πληρωμή με POS απέτυχε. Κωδικός σφάλματος SaleAsync – Unexpected response: [THE_POS_DID_NOT_RESPOND_ON_TIME] >> Http status 200»

transactionData >> {} error >> [THE_POS_DID_NOT_RESPOND_ON_TIME]

Nα ελεγχθεί:

εάν το ECR είναι ενεργοποιημένο πριν τη συναλλαγή
στο προφίλ επικοινωνίας με POS, IP δικτύου και Πόρτα καθώς η cardlink είναι μέσω intranet.

Εάν το ECR είναι ενεργοποιημένο και η παραμετροποίηση σωστή θα πρέπει να γίνουν εκ νέου τα βήματα της αναβάθμισης (κυρίως από το 3 και μετά) και να μας ενημερώσετε εάν το σφάλμα εξακολουθεί να υφίσταται.

Στις περιπτώσεις όπου κατά την επικοινωνία μεταξύ ERP και POS (π.χ. έγκριση πληρωμής) λαμβάνουμε σφάλμα στο EBS

«H πληρωμή με POS απέτυχε. Κωδικός σφάλματος DECLINED;COMPLETED”’.»

και το παραστατικό αφορά πιστωτικό θα χρειαστεί να επικοινωνήσετε με την EURONET για την ενεργοποίηση του refund ανά TID.

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

Στις περιπτώσεις όπου κατά την επικοινωνία μεταξύ ERP και POS (π.χ. έγκριση πληρωμής) λαμβάνουμε σφάλμα, πέραν του etl σφάλματος που λάβαμε στο ui του EBS, το Service της Cardlink κρατάει log αρχεία από το service προς το pos και αντίστροφα, τα αρχεία είναι διαθέσιμα στο path C:ProgramDataSonomalogs

Για παράδειγμα, ένα σφάλμα που μπορεί να καταγραφεί στο Log αρχείο είναι το εξής:

«2024-07-19 10:32:39,791 INFO [http-nio-8080-exec-4] c.s.e.c.SimpleFunctional 319] Trxn 3: sale failed. – [THE_POS_IS_NOT_AVALIABLE]»

Άρα στην παραπάνω περίπτωση μπορώ να εξετάσω αν δικτυακά βλέπω την IP / PORT του POS.

Η κίνηση που θα καλεί η ενέργεια «’Έγκριση Συναλλαγής μέσω POS» εξαρτάται από τον κωδικό ΑΑΔΕ που έχει το παραστατικό. Πιο συγκεκριμένα:

Για παραστατικό με κωδικοποίηση ΑΑΔΕ 11.1, 8.4, 1.1 κλπ, η ενέργεια της έγκρισης θα κάνει είσπραξη.
Για παραστατικό με κωδικοποίηση ΑΑΔΕ 11.4, 8.5 , 5.1 κλπ, η ενέργεια της έγκρισης θα κάνει επιστροφή.
 

1) Στον φάκελο ESNoSync της εφαρμογής κάνουμε δημιουργία αρχείου txt

2) Μετονομάζουμε το αρχείο σε ESPOSImplRequests

3) Αλλάζουμε την κατάληξη του αρχείου από . txt σε .trigger

Μετά την συγκεκριμένη προσθήκη κάθε επικοινωνία που θα γίνεται με το POS θα κρατιούνται logs στον φάκελο ESNoSyncESPOSImpl

 

Για συναλλαγές μέσω POS της Cardlink, όπου ενώ έχει ολοκληρωθεί η διασύνδεση του POS, η ΑΑΔΕ εξακολουθεί να βλέπει το POS ως μη διασυνδεδεμένο θα πρέπει να ελέγξετε τα εξής:

1) Έχει εγκατασταθεί η version 6.3.0 του service της Cardlink. Μέσα στο Program filessonoma θα βρείτε σχετικό PDF αρχείο στον φάκελο εγκατάστασης του service, όπου αναφέρει το release version.

2) Να έχει πραγματοποιηθεί τουλάχιστον μία συναλλαγή από το POS

3) Να επιβεβαιώσετε ότι στο xml της σύνοψης της συναλλαγής αναγράφετε το TID του POS.

 

Διασύνδεση ΦΗΜΑΣ-POS | Cardlink-Exec__echo-Unexpected response
Υπάρχουν περιπτώσεις που κατά την διαδικασία διασύνδεσης ΦΗΜΑΣ-POS της Cardlink λαμβάνουμε το παρακάτω σφάλμα

Σε αυτήν την περίπτωση πρέπει να προχωρήσουμε εκτελώντας με σειρά τα παρακάτω βήματα

Απεγκατάσταση του ήδη υπάρχων Service “Ecr2EftWeb”
Εγκατάσταση του Service εκ νέου το σωστό από το παρακάτω Link ECR2WEB Training Run As Service x64 CRDL 1155.pptx – Παρουσιάσεις Google
Επιβεβαίωση ότι το Zip που έγινε λήψη είναι Unblocked
Τέλος προχωράμε σε δοκιμή διασύνδεσης εκ νέου
ΤΟ ΣΦΑΛΜΑ

Exec__echo – Unexpected response >> Http status 404

timestamp >> 1727512115921

status >> 404

error >> Not Found

message >> Not Found

path >> /echo

(No log)

System.ApplicationException, mscorlib

   σε Entersoft.ERP.Financials.DS.ESPOS.ESPOSHandler.PairTaxMachineWithPOS_TerminalBind(PairingRequest request)

   σε Entersoft.ERP.GlobalObjects.UI.TaxMechanismPairedPOSForm.MiddlewareConnect_btn_Click(Object sender, EventArgs e)

   σε System.Windows.Forms.Control.OnClick(EventArgs e)

   σε System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

   σε System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

   σε System.Windows.Forms.Control.WndProc(Message& m)

   σε System.Windows.Forms.ButtonBase.WndProc(Message& m)

   σε System.Windows.Forms.Button.WndProc(Message& m)

   σε System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Exec__echo – Unexpected response >> Http status 404

timestamp >> 1727512115921

status >> 404

error >> Not Found

message >> Not Found

path >> /echo

(No log)

Entersoft.Framework.Platform.Integrations.POS.ESPOSWebEcrException, ESPOSImpl

   σε Entersoft.Framework.Platform.Integrations.POS.Cardlink.IntranetECR.CardlinkClient.VB$StateMachine_29_DoRequest.MoveNext()

— Τέλος ιχνηλάτησης στοίβας από προηγούμενη θέση όπου δημιουργήθηκε μια εξαίρεση —

   σε System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

   σε System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

   σε Entersoft.Framework.Platform.Integrations.POS.Cardlink.IntranetECR.CardlinkClient.VB$StateMachine_25_Exec__echo.MoveNext()

— Τέλος ιχνηλάτησης στοίβας από προηγούμενη θέση όπου δημιουργήθηκε μια εξαίρεση —

   σε System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

   σε System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

   σε Entersoft.Framework.Platform.Integrations.POS.Cardlink.IntranetECR.CardlinkClient.VB$StateMachine_5_TerminalBindAsync.MoveNext()

Υποστηρίχθηκε η δυνατότητα ταυτόχρονης είσπραξης προκαταβολής μέσω POS κατά την καταχώρηση παραγγελιών πωλήσεων. Εφόσον η παραγγελία περιλαμβάνει είσπραξη με POS (βάσει 1155) θα ανατεθεί αυτόματα κωδικός ΑΑΔΕ 8.4 και θα διαβιβαστεί το παραστατικό σε πάροχο και ΑΑΔΕ ως προείσπραξη.

Σημειώσεις παραμετροποίησης:

Οι τύποι παραστατικών παραγγελιών και οι αντίστοιχες σειρές ΔΕΝ πρέπει να έχουν συμπληρωμένο κωδικό ΑΑΔΕ.
Στους τύπους παραστατικών παραγγελιών χρειάζεται να συμπληρωθούν οι αποδεκτοί όροι πληρωμής όπως γίνεται και στα υπόλοιπα trade παραστατικά (πχ ΑΠΛ).
Δημιουργήθηκε νέα φόρμα παραγγελιών (ESFIDocumentTrade_POSSalesOrder_DEF) η οποία περιλαμβάνει το τμήμα εξόφλησης με τις κατάλληλες ενέργειες συναλλαγής με POS.
Σε περίπτωση που υπάρχουν custom φόρμες θα πρέπει να προστεθούν οι κατάλληλες ενέργειες.

Υποστηρίχθηκε η δυνατότητα ταυτόχρονης είσπραξης προκαταβολής μέσω POS κατά την έκδοση δωροεπιταγών (ΕΔΚ). Εφόσον στο παραστατικό περιλαμβάνεται είσπραξη με POS (βάσει 1155) θα ανατεθεί αυτόματα κωδικός ΑΑΔΕ 8.4 και θα διαβιβαστεί το παραστατικό σε πάροχο και ΑΑΔΕ ως προείσπραξη.

Σημειώσεις παραμετροποίησης:

Ο τύπος παραστατικού και οι σειρές ΔΕΝ πρέπει να έχουν συμπληρωμένο κωδικό ΑΑΔΕ.
Στον τύπο παραστατικού ΕΔΚ χρειάζεται να συμπληρωθούν οι αποδεκτοί όροι πληρωμής όπως γίνεται και στα υπόλοιπα trade παραστατικά (πχ ΑΠΛ).
Επεκτάθηκε η φόρμα ESFIDocumentTrade_VoucherRecharge_DEF ώστε να περιλαμβάνει τις κατάλληλες ενέργειες συναλλαγής με POS.
Σε περίπτωση που υπάρχουν custom φόρμες θα πρέπει να προστεθούν οι κατάλληλες ενέργειες.
   

Για ποιο λόγο σταμάτησε να λειτουργεί το service της Cardlink “Ecr2EftWeb” και δεν μπορεί να γίνει η εκκίνηση του;

Έχει παρατηρηθεί τον τελευταίο καιρό να υπάρχει πρόβλημα με το service να τερματίζεται και να μην μπορεί να γίνει η εκκίνηση του. Σε αυτές τις περιπτώσεις θα πρέπει να γίνει αντικατάσταση του αρχείου “application.properties” (υπάρχει στα επισυναπτόμενα του άρθρου γνώσης -KB-02726) στο path “C:ProgramDataSonomaEcr2EftWEB”. 

   

  

 

Knowledgebase-128x128

Μηνύματα MyData Α.Α.Δ.Ε.

  • Μήνυμα

  • Αιτία
  • Λύση
  • Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription
  • Λανθασμένοι κωδικοί MyData
  • Εκδώστε κωδικούς myData
  • User VAT number XXXXXXXXX is not authorized to execute this method
  • Οι κωδικοί που έχετε ορίσει δεν είναι του myData αλλά του e-timologio
  • Εκδώστε κωδικούς myData
  • Counterpart postal code is mandatory for this invoice type
  • Κενό πεδίο ΤΚ
  • Θα πρέπει να συμπληρωθεί ο ΤΚ στα στοιχεία του πελάτη.
  • Counterpart city is mandatory for this invoice type
  • Κενό πεδίο Πόλης
  • Θα πρέπει να συμπληρωθεί η πόλη του πελάτη.
  • Code: 243, Message: Counterpart’s country for this invoice type must be in Europe but not Greece
  • Λάθος Χώρα
  • Στα στοιχεία του πελάτη θα πρέπει να δηλωθεί η σωστή χώρα στο αντίστοιχο πεδίο.
  • Counterpart’s country for this invoice type must not be in EU
  • Λάθος Χώρα
  • Στα στοιχεία του πελάτη θα πρέπει να δηλωθεί χώρα εκτός ΕΕ.
  • Code: 217, Message: When vatCategory has value 7, element vatExemptionCategory is mandatory
  • Μη συμπλήρωση άρθρου Απαλλαγής ΦΠΑ
  • Κατά την έκδοση Παραστατικού, , θα να συμπληρώσετε το πεδίο Απαλλαγή Φ.Π.Α. με το σωστό άρθρο Απαλλαγής.
  • Code: 216, Message: Vat category must have value other than 8 for this invoice type
  • Λάθος Καθεστώς ΦΠΑ
  • Λάθος Καθεστώς ΦΠΑ
  • Code: 215, Message: Vat category must have value 8 for this invoice type
  • Λάθος Καθεστώς ΦΠΑ
  • Λάθος Καθεστώς ΦΠΑ ”
    • Code: 222, Message: NetValue per line must have value greater than 0 for this invoice type
    • Το παραστατικό έχει μηδενική αξία
    • Ο συγκεκριμένος τύπος παραστατικού δεν είναι αποδεκτός από το mydata με μηδενική αξία.
  • Code: 204, Message: CorrelatedInvoices is mandatory for this invoice type
  • Το παραστατικό πρέπει να είναι συσχετιζόμενο
  • Έχετε κάνει έκδοση σε σειρά που απαιτεί σχετικό παραστατικό. Θα πρέπει είτε να συνδέσετε το παραστατικό με το σχετικό του
  • Code: 101, Message: Line:59.Position:10.The element ‘incomeClassification’ in namespace ‘http://www.aade.gr/myDATA/invoice/v1.0’ has invalid child element ‘amount’ in namespace ‘https://www.aade.gr/myDATA/incomeClassificaton/v1.0’. List of possible elements expected: ‘classificationType, classificationCategory’ in namespace ‘
  • Δεν υπάρχει πρόταση Χαρακτηρισμών
  • Δεν υπάρχει πρόταση Χαρακτηρισμών εξαιτίας της παραμετροποίησης.
  • Classification type is forbidden for Classification category category1_3 combined with invoice type item2_1
  • Λάθος Τύπος Παραστατικού MyData
  • Δεν είναι αποδεκτός ο συνδυασμός του Category με αυτό τον τύπο παρ/κού
  • Bad Gateway
  • Υπάρχει τεχνικό ζήτημα με την πλατφόρμα της Α.Α.Δ.Ε.
  • Παρακαλούμε δοκιμάστε τη διαβίβαση αργότερα
  • Message: XXXXXXXXXX: Invalid Greek VAT number
  • Λάθος ΑΦΜ
  • Διορθώστε το ΑΦΜ στην καρτέλα Πελάτη
  • Code: 253, Message: IssueDate is invalid, it must be greater or equal than 2023-01-01 and less or equal than current date
  • Η ημερομηνία έκδοσης του παραστατικού είναι μεταγενέστερη της τρέχουσας ημερομηνίας
  • Δοκιμάστε την διαβίβαση κατά την ημερομηνία έκδοσης του παραστατικού ή αργότερα.
  • The remote server returned an error: (403) Forbidden
  • Υπάρχει τεχνικό ζήτημα με την πλατφόρμα της Α.Α.Δ.Ε.
  • Παρακαλούμε δοκιμάστε τη διαβίβαση αργότερα
  • <html> <head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>Microsoft-Azure-Application-Gateway/v2</center> </body> </html>
  • Αδυναμία σύνδεσης λόγω τεχνικών προβλημάτων Α.Α.Δ.Ε.
  • Παρακαλούμε δοκιμάστε τη διαβίβαση αργότερα
  • Unexpect techn error
  • Αδυναμία σύνδεσης λόγω τεχνικών προβλημάτων Α.Α.Δ.Ε.
  • Παρακαλούμε δοκιμάστε τη διαβίβαση αργότερα
  • Η σύνδεση με τον απομακρυσμένο διακομιστή απέτυχε.
  • Υπάρχει τεχνικό ζήτημα με την πλατφόρμα της Α.Α.Δ.Ε.
  • Παρακαλούμε δοκιμάστε τη διαβίβαση αργότερα
  • Code: 301 , Message: Invoice with ΜΑΡΚ 4000000****** not found for VAT number *********
  • Το παραπάνω μήνυμα εμφανίζεται καθώς δεν έχει ολοκληρωθεί η επεξεργασία και η απεικόνιση του πρωτογενούς παραστατικού στο συνοπτικό βιβλίο από την πλατφόρμα MYDATA με αποτέλεσμα να μην είναι εφικτή η διαβίβαση του σχετικού παραστατικού
  • Δοκιμάστε αργότερα την διαβίβαση του σχετικού παραστατικού.
  • Knowledgebase-128x128

    Χρήση web hooks στο EBS οικοσύστημα

    Πολλές φορές υπάρχει η ανάγκη να ενημερωθεί το EBS από κάποιο εξωτερικό σύστημα ώστε να κάνει κάποιοα ενέργεια. Π.χ μια παραγγελία μπήκε σε κάποιο marketplace, μια πληρωμή μπήκε μέσω ΔΙΑΣ, ολοκληρώθηκε η αποστολή από μια μεταφορική κτλ. Τότε την στιγμή που γίνεται η ενέργεια στο τρίτο σύστημα, θα θέλαμε να ενημερωθεί το EBS ώστε να δημιουργηθεί και σε αυτό η αντίστοιχη εγγραφή. Το Entersoft, με το Web Api που παρέχει δίνει την δυνατότητα να υλοποιηθούν web hooks που εκπληρώνουν την ανάγκη αυτή. Έτσι υλοποιείτε ένας απλός αυτοματισμός με συγκεκριμένες προδιαγραφές που δέχεται όλη το περιεχόμενο της κλήσης από το εξωτερικό σύστημα (συνήθως json) και δημιουργεί τις αντίστοιχες εγγραφές στο ERP.

    Παρακάτω οι προδιαγραφές που δίνει η Entersoft για την παραγωγή του εν λόγω μηχανισμού

    KB-02230 Generic Web Hook API
    Κατηγορία: WEBAPI

    The need:

    Some APIs require to call a web hook to invoke some action od pass some information to the caller, e.g. EBS. In such cases the API provides parameters to define the URL to be called and the authentication to be passed, to gether with documentation regarding the payload passed to the web hook and optionally, the expected return values

    The solution:

    WEBAPI has implemented a generic WEB Hook API in Entersoft Business Suite WEBAPI available using the eComConnector Cloud App.

    The API has the following URL:

    /api/endpoint/autohook/scroller Area/Scroller ID/Scroller Automation ID

    it requires a POST verb and it calls directly the specified Scroller Automation (with ID Scroller Automation ID) declared on a scroller in the scroller Area with scroller ID Scroller ID
    it requires a POST verb and it calls directly the specified Scroller Automation.

    The Web Hook Automation:

    1. must have a Command Parameter with Code Payload (attn. the name is case-sensitive)
    2. may have an output variable with code RetCode (attn. the name is case-sensitive)
    3. must have Apply to: Without view i.e. it runs without a source dataset

    How it works:
    When called the API calls the Scroller automation and passes the POST payload to the automation Payload command parameter

    The automation processes the the Payload (e.g. if it’s JSON it may use Newtonsoft library to parse it)
    and formulates the proper responce to the output variable RetCode
    The API returns RetCode’s string content the result to the caller.

    Εδώ απαιτείται μια σημαντική επισήμανση. Η απάντηση από το web api webhook είναι πάντα σε text (κείμενο) ακόμα και αν πρόκεται για σωστά δομημένο json. Εδώ παρέχουμε ως πρόσθετη υπηρεσία σε πελάτες μας που έχουν ενεργό συμβόλαιο υποστήριξης με την INTELISEIS και ενεργές εκδόσεις με την ENTERSOFT, μέσω azure functions ένα σύνολο από κλήσεις που
    1. Λαμβάνουν από το τρίτο σύστημα την κλήση
    2. Καταγράφουν με ένα απλό τρόπο την πηγή της κλήσης ώστε στο ERP να γνωρίζετε από που προήλθε μέσω ενός αναγνωριστικού.
    3. Την μεταφέρουν στον αντίστοιχο subscirption του api.entersoft.gr
    4. Επιστρέφουν το αποτέλεσμα της κλήσης που στέλνει το Entersoft μορφοποιημένο ως json ώστε να ενημερωθεί σωστά το τρίτο σύστημα.

    LOAD MORE