Una sessione API Locale è il periodo tra un Login e un Logout. Le transazioni possono essere eseguite solo all'interno di una sessione aperta. Questo vale per i trasporti HTTP e TCP/IP; l'API Cloud non ha sessioni.
Login
POST /login apre la sessione. Invia i dettagli del tuo SaleSoftware (nome dell'applicazione, fornitore, versione). Nel Login il POS comunica la versione più alta del protocollo supportata; il terminale risponde con la versione che utilizzerà per la sessione.
Un Response.Result pari a Success conferma che la sessione è aperta. Se il messaggio in ingresso non può essere interpretato, il terminale restituisce invece una EventNotification con EventToNotify: Reject.
Lavorare all'interno della sessione
- Può essere eseguito un solo dialogo di servizio alla volta. L'avvio di un secondo pagamento prima che il primo sia terminato restituisce una condizione
BusyoNotAllowed(HTTP403sull'endpoint di pagamento mentre uno è in corso). - Conserva il
POITransactionIDdi ogni pagamento completato per successivi storni, rimborsi e interrogazioni di stato.
Rilevare una sostituzione hardware
Conserva il numero di serie del terminale al primo login (disponibile tramite una chiamata Diagnosis) e verifica che sia lo stesso nei login successivi. Un numero di serie cambiato significa che il terminale fisico dietro lo stesso indirizzo è stato sostituito — un rischio di frode e riconciliazione che il tuo POS dovrebbe segnalare.
Logout
POST /logout chiude la sessione. Effettua nuovamente il login dopo ogni riavvio del terminale o aggiornamento del firmware. Le operazioni inviate dopo un logout, o dopo la scadenza della sessione, restituiscono la condizione LoggedOut.
Nota
Consulta la documentazione dell'API Locale su MuleSoft per gli schemi di Login e Logout.