Une session API locale est la période entre une connexion et une déconnexion. Les transactions ne peuvent s'exécuter que pendant une session ouverte. Cela s'applique aux transports HTTP et TCP/IP ; l'API Cloud n'a pas de session.
Connexion
POST /login ouvre la session. Envoyez vos détails SaleSoftware (nom de l'application, fournisseur, version). Lors de la connexion, le POS annonce la version de protocole la plus élevée qu'il supporte ; le terminal répond avec la version qu'il utilisera pour la session.
Un Response.Result de Success confirme que la session est ouverte. Si le message entrant ne peut pas être analysé, le terminal renvoie à la place une EventNotification avec EventToNotify: Reject.
Travail à l'intérieur de la session
- Un seul dialogue de service s'exécute à la fois. Le démarrage d'un second paiement avant la fin du premier renvoie une condition
BusyouNotAllowed(HTTP403sur le point de terminaison de paiement pendant qu'un paiement est en cours). - Conservez le
POITransactionIDde chaque paiement terminé pour les annulations, remboursements et requêtes de statut ultérieurs.
Détection d'un échange matériel
Conservez le numéro de série du terminal lors de la première connexion (disponible via un appel Diagnosis) et vérifiez-le lors des connexions suivantes. Un numéro de série modifié signifie que le terminal physique derrière la même adresse a été échangé — un risque de fraude et de réconciliation que votre POS doit signaler.
Déconnexion
POST /logout ferme la session. Reconnectez-vous après tout redémarrage du terminal ou mise à jour du firmware. Les opérations envoyées après une déconnexion, ou après l'expiration de la session, renvoient la condition LoggedOut.
Note
Voir la référence de l'API locale sur MuleSoft pour les schémas de connexion et de déconnexion.