HorecaPOSManuale Introduzione Vai alla cassa
IT

Manuale HorecaPOS

Questo manuale è diviso in tre parti: prima per il personale (di sala), poi per il manager e infine per l'amministratore. Ogni parte si basa sulla precedente: un manager può fare tutto ciò che può fare il personale di sala, e l'amministratore può fare tutto.

Cosa può fare esattamente il tuo ruolo lo imposta l'amministratore in Impostazioni → Permessi. Se non vedi un pulsante, il tuo ruolo non ha (ancora) il permesso per usarlo.

Questo manuale è disponibile anche nella cassa: tocca il pulsante © in basso a destra su ogni schermata e scegli Manuale, oppure apri http://<kassa-pc>:3000/handleiding. Vedi anche l'introduzione e la documentazione API.

Parte 1 · Personale

Per iniziare

Accesso. Apri la cassa sulla cassa, sul tablet o sul telefono e inserisci il tuo PIN (da 4 a 8 cifre). Vedrai poi la piantina della sala.

Accesso con PIN

Aprire un tavolo. Tocca un tavolo. Un tavolo libero riceve un nuovo ordine; con un tavolo occupato continui l'ordine già aperto. In alto passi da una sala all'altra (ad esempio Sala e Terrazza). Per il banco usi Vendita rapida, per gli ordini da asporto Asporto.

Piantina della sala

Ordinare. Scegli un gruppo di prodotti e tocca i prodotti. Compaiono sullo scontrino a sinistra. Se vuoi, scegli prima la portata (1 = subito, 2 e 3 attendono finché non le chiami). Tocca Invia ordine: le comande vanno in cucina e al bar. Finché non hai toccato Invia ordine, puoi semplicemente togliere le righe.

Incassare. Tocca Incassa, scegli Carta / Bancontact, Contanti o Buono regalo, eventualmente una mancia, e conferma. Con la carta il pagamento parte da solo sul terminale. Lo scontrino viene stampato; puoi anche inviarlo via e-mail.

Incassare

Uscire. Esci quando hai finito, così nessun altro lavora con il tuo nome. Dopo 8 ore vieni disconnesso automaticamente.

Niente internet? La cassa continua a funzionare. Se in alto compare Nessuna connessione internet · carta manuale, digita l'importo direttamente sul terminale e nella schermata di incasso scegli Già pagato sul terminale.

Più gruppi allo stesso tavolo

Allo stesso tavolo possono sedere più gruppi, ognuno con il proprio conto e il proprio scontrino.

Dividere il conto all'incasso

Schermata di incasso

L'incasso funziona come sempre: Tutto in una volta. Nella schermata di incasso ora il conto si può anche dividere, con i pulsanti sotto Indietro e Incassa (così restano sempre visibili, senza scorrere):

Un pagamento parziale registra solo il pagamento; il conto resta aperto e nella schermata ordini compare "già pagato … · ancora da pagare …". Lo scontrino (con tutti i pagamenti) arriva con l'ultimo pagamento, come per un incasso normale. Il pagamento con carta tramite il collegamento è esattamente per l'importo parziale. Se è già stato pagato in parte, non si possono più spostare righe in un altro gruppo né aggiungere sconti; togliere righe è possibile solo se resta abbastanza da pagare. Ogni pagamento parziale finisce nel registro.

Vendita rapida e asporto (senza tavolo)

Piantina sala con Vendita rapida e Asporto

In alto a destra sulla schermata dei tavoli ci sono Vendita rapida e Asporto. Entrambi aprono subito un ordine senza tavolo. Vendita rapida è la vendita al banco (IVA per consumo sul posto); Asporto usa l'aliquota IVA da asporto di ogni prodotto. Con "Nome cliente" aggiungi un nome, che compare sullo scontrino ("Asporto – Rossi") e in cima alla comanda. Gli ordini aperti senza tavolo sono sotto i pulsanti delle sale ("Senza tavolo: Asporto #12 – Rossi"), così li ritrovi. Se torni indietro senza vendere nulla, l'ordine vuoto sparisce da solo.

Entrambi i pulsanti si possono attivare o disattivare per locale in Impostazioni → Attività, subito sotto il tema chiaro/scuro (attivo di default). Disattivato = pulsante nascosto; gli ordini senza tavolo già aperti restano visibili.

Consegna e fasce orarie

Ordini che prendi tu stesso alla cassa, ad esempio al telefono o al banco, con le stesse regole del webshop: zone di consegna e un numero massimo di ordini per fascia oraria. Si attiva in Impostazioni → Attività → Consegna e fasce orarie, subito sotto i pulsanti Vendita rapida e Asporto (disattivato di default).

Estensioni (tutte disattivate di default; senza queste impostazioni funziona esattamente come sopra):

Codice: lib/bezorgen.ts, routes/bezorgen.ts, BezorgDialoog.tsx, BezorgInstellingen.tsx, BezorgKaart.tsx e lib/kaart.ts (la mappa, senza pacchetti aggiuntivi; lo stesso codice si trova come public/kaart.js nel webshop).

Telefonia: riconoscere il cliente in un ordine telefonico

Impostazioni → Telefonia (disattivato di default; disattivandolo si conserva tutto). Due interruttori separati:

La ricerca avviene nella carta fedeltà, negli ordini a domicilio e da asporto della cassa, nella webshop, in Thuisbezorgd, nelle piattaforme di consegna e nelle prenotazioni. I numeri vengono uniformati (+31 6 1234 5678, 0031612345678 e 06-12345678 sono uguali; anche numeri belgi).

Come arriva il numero (più fonti insieme sono possibili; la stessa chiamata conta una volta):

FontePerConfigurazione
Webhook / action URL3CX (integrazione CRM), Aircall, Voys / VoIPGRID, Yeastar serie P, telefoni con action URL per chiamata in arrivo (Fanvil, Grandstream, Mitel 6800/6900, Snom, Yealink: funziona con qualsiasi centralino e operatore), servizi di integrazione (Zapier, Make, n8n, Power Automate)l'indirizzo da Impostazioni → Telefonia (/api/telefonie/oproep?sleutel=...&nummer=...), GET o POST, JSON, modulo o query; anche tramite il portale: https://<portaal>/telefonie/<kassa-id>/oproep?sleutel=...
Asterisk (AMI)Asterisk, FreePBX, Issabel, VitalPBX, Grandstream UCMindirizzo, porta (5038; Grandstream UCM 7777), utente AMI e password (permessi call)
FRITZ!BoxFRITZ!Box con telefoniaindirizzo (fritz.box) e porta 1012; attivare una volta il callmonitor con #96*5*
Modem USB caller IDlinea fissa analogica con visualizzazione del numeroporta seriale (COM3, /dev/ttyACM0), baud e comando di inizializzazione (predefinito AT+VCID=1)
Telefono Androidil telefono integrato di un telefono Android del localeapp HorecaPOS su quel telefono, Impostazioni → Telefonia → Associa questo telefono (Android 10+: scegliere l'app come app per l'identificativo chiamante)

La risposta contiene il chiamante, anche come contact (firstname, lastname, phone, email, address) per un modello CRM di 3CX. Le chiamate in uscita e interne non vengono mostrate; Solo queste linee limita a determinate linee o telefoni. Le chiamate vengono cancellate dopo il periodo di conservazione (predefinito 30 giorni, GDPR). Chiamata di prova simula la chiamata di un numero.

Codice: apps/pos-server/src/lib/telefonie.ts, routes/telefonie.ts, packages/shared/src/telefonie.ts; schermate Telefonie.tsx, BezorgDialoog.tsx; Android android-app/native/java/Beller*.java. Registro: Telefonia.

Fattorini propri: giri, versamento cassa e tracciamento

Per le attività con fattorini propri. Attivalo in Impostazioni → Attività → Consegna → Fattorini propri (disattivato di default). Non serve un'app per il fattorino: usa una pagina nel browser del proprio telefono (chi vuole può usare l'app Optimum Bezorger: vedi App fattorini qui sotto).

Creare un giro. In cassa c'è il pulsante Giri (con il numero di consegne ancora da far partire più i giri in consegna).

  1. In Pronti per la consegna spunta gli ordini che partono. Sono gli ordini a domicilio dalla cassa, dal webshop e da Thuisbezorgd (solo consegna propria; non quelli con un fattorino di Thuisbezorgd).
  2. Scegli il fattorino (un dipendente) e il fondo resto che porta con sé (di default l'importo dell'impostazione), e tocca Crea giro.
  3. Compare un codice QR. Il fattorino lo scansiona con il proprio telefono e vede per ogni indirizzo il nome, l'indirizzo con un pulsante Percorso (navigazione), Chiama, la nota, l'orario richiesto e quanto incassare. C'è un calcolatore del resto (il cliente dà € 50 → resto € 31,50). Non serve accedere. Condividi il link solo con il fattorino: chi ce l'ha vede gli indirizzi di questo giro. Con Codice QR per il fattorino crei un nuovo link; il vecchio non funziona più.
  4. Tocca Parti quando il fattorino esce. Il fondo resto esce dal cassetto (uscita di denaro, con il motivo). Il cliente riceve un avviso che l'ordine è in consegna:
    • per un ordine dalla cassa via SMS e/o e-mail, se Messaggi al cliente è attivo (vedi Consegna e fasce orarie);
    • per il webshop come impostato nel webshop (e-mail, SMS o notifica push);
    • per Thuisbezorgd tramite Thuisbezorgd.

Se il giro non è ancora partito, si può ancora annullare.

  1. Durante il giro il fattorino tocca per ogni indirizzo Consegnato, contanti, Consegnato, carta (un proprio terminale POS) o Consegnato (già pagato). La cassa lo vede subito. Se il fattorino non può segnalarlo, si può fare anche in cassa. Di ritorno al locale il fattorino tocca Sono di ritorno al locale.

Versamento cassa. Dopo il giro tocca Incassa (permesso Gestire il cassetto):

Tracciamento (da attivare a parte nell'impostazione). Con in consegna il cliente riceve un link a una pagina di tracciamento sul portale. Il link è nell'SMS o nell'e-mail, e nel webshop sulla pagina di stato (Segui il tuo fattorino). Sulla pagina di tracciamento ci sono:

Le pagine sono nella lingua del telefono (tutte le lingue del portale). In cassa vedi per ogni giro quando la posizione è stata trasmessa l'ultima volta (con un link alla mappa).

Privacy. Il portale conserva i dati di un giro (nomi, indirizzi, numeri di telefono, la posizione) solo finché il giro è in corso. All'incasso viene cancellato tutto, altrimenti dopo 24 ore. Il cliente vede solo il proprio ordine. La posizione del fattorino è visibile solo durante il giro, e non più appena il fattorino è rientrato.

Pianificazione giri (facoltativa)

Attivala in Impostazioni → Attività → Consegna → Pianificazione giri (disattivata per impostazione predefinita; funziona con i fattorini propri). Nella finestra Giri compare allora il pulsante Proponi giri. La cassa riunisce in giri gli ordini ancora da consegnare:

Con Usa questo giro spunti quegli ordini, in quell'ordine; scegli il fattorino e tocca Crea giro. Per un giro non ancora partito, Ordine migliore mette gli indirizzi nell'ordine più veloce (anche sul telefono del fattorino). Per ogni giro sono indicati distanza e tempo di percorrenza.

Impostazioni: indirizzi per giro, durata massima di un giro, la fascia oraria, la velocità del rider (bici ~15, scooter ~25, auto ~35 km/h in città) e i minuti per indirizzo (parcheggiare, suonare, incassare; predefinito 2). Questi valori può impostarli anche il manager: nella finestra Giri con il pulsante Imposta pianificazione giri (permesso Imposta pianificazione giri, attivo di default per il manager; modificabile in Impostazioni → Permessi). Attivare o disattivare la pianificazione giri e il servizio di percorsi (indirizzo, chiave API) restano all'amministratore.

Distanza e tempo di percorrenza, a scelta dell'amministratore:

Con Prova verifichi il servizio. Se il servizio non risponde, la pianificazione torna alla stima e lo segnala. Un indirizzo con posizione sconosciuta (senza CAP e numero civico validi) compare nella proposta sotto senza posizione nota e non viene pianificato. L'esportazione della configurazione include le impostazioni, ma non la chiave.

Codice: lib/ritplanning.ts.

App fattorini (facoltativa)

Attivala in Impostazioni → Attività → Consegna → App fattorini (disattivata di default; funziona con i fattorini propri e il portale di gestione). Ogni fattorino abbina allora il proprio telefono una sola volta, invece di scansionare un codice QR per ogni giro:

  1. In Telefoni abbinati scegli il fattorino (un dipendente), eventualmente il nome del telefono, e tocca Abbina telefono.
  2. Compare un codice QR. Il fattorino lo scansiona nell'app Optimum Bezorger (pulsante Abbina) o con la fotocamera del telefono: la pagina si apre nel browser. Funziona anche senza app e si può aggiungere alla schermata Home.
  3. L'abbinamento resta valido finché non lo revochi; il telefono da quel momento non vede più nulla. Un nuovo abbinamento per lo stesso dipendente sostituisce quello vecchio (ad esempio con un telefono nuovo).

Nell'app o nella pagina ci sono tutti i giri propri (ogni giro che la cassa crea per questo fattorino), con gli stessi pulsanti di un giro: Percorso, Chiama, importo da incassare con calcolatore del resto, Consegnato e Sono di ritorno al locale. Attivabili separatamente:

L'app per Android è su Google Play e sulla pagina di download del portale (/download/). Una versione per iPhone è pronta, ma uscirà solo quando ci sarà un account sviluppatore Apple; fino ad allora gli iPhone usano la pagina web. Su un giro preso dal fattorino stesso compare preso dal fattorino nell'app.

Codice: lib/bezorgersapp.ts, nel portale src/volgen.mjs e l'app nel repo horecapos-bezorger.

Nel registro risulta chi ha creato un giro, l'ha fatto partire, l'ha segnalato come consegnato e l'ha incassato, con gli importi. Disattivare: nessun pulsante Giri; giri e impostazioni restano salvati.

Sul portale: /bezorger/<sleutel> e /volg/<code>. Codice: lib/bezorgers.ts, routes/bezorgers.ts, Bezorgers.tsx e nel portale src/volgen.mjs.

Avviso per tempi di preparazione troppo lunghi

Un ordine da asporto o a domicilio pronto più tardi del promesso: la cassa se ne accorge, lo segnala e può inviare subito delle scuse al cliente, eventualmente con un buono sconto. Attivalo in Impostazioni → Attività → Consegna → Avviso per tempi di preparazione troppo lunghi (disattivo per impostazione predefinita).

Codice: lib/telaat.ts, routes/telaat.ts, TeLaat.tsx e packages/shared/src/telaat.ts.

Il pulsante Invia ordine: cosa fa e quando ti serve

Toccare un prodotto e toccare Invia ordine sono due passaggi diversi:

Perché due passaggi? Al tavolo prendi l'intera ordinazione (bevande, antipasto, piatto principale), la modifichi ancora se l'ospite cambia idea e poi la mandi in cucina in una volta sola, con una comanda per reparto invece di una per prodotto. Così la cucina può iniziare molto prima del pagamento.

Cos'altro succede con Invia ordine:

Puoi anche incassare subito. Se tocchi Incassa mentre sul conto ci sono ancora nuove righe, la cassa le ordina prima automaticamente, così cucina e bar ricevono sempre la loro comanda. Al bar o per l'asporto non devi quindi toccare prima Invia ordine: tocca i prodotti e subito Incassa. Se l'ordine automatico non riesce (nessuna connessione, regola all-you-can-eat, scatola nera), la schermata di pagamento resta chiusa e vedi il motivo.

Preferisci che il bar non riceva una comanda quando incassi subito? In Impostazioni → Attività → Ordini e incasso attiva la casella Incasso diretto senza comanda. Così a cucina e bar arriva solo ciò che invii con Invia ordine; ciò che incassi subito non genera alcuna comanda.

Pulsante Incassa grande o piccolo

Con la casella Pulsante "Incassa" grande spuntata la schermata ordini mostra un pulsante Incassa grande subito sotto i prodotti ordinati: largo, alto e con l'importo, così si preme in fretta. Se il conto è già pagato in parte, il pulsante mostra l'importo ancora da pagare. Il pulsante piccolo in basso accanto a Invia ordine scompare.

Con il pulsante grande anche i pulsanti della schermata di incasso sono grandi: Incassa (con Carta, Buono regalo e gli altri metodi di pagamento) e con Contanti Contanti esatti e Incassa sono larghi e alti, facili da premere, anche con le dita sporche (per esempio in una macelleria). I metodi di pagamento sono un po' più grandi e i pulsanti mancia un po' più piccoli, così tutto resta sullo schermo.

In una nuova installazione la casella è disattivata: quindi il pulsante piccolo in basso accanto a Invia ordine e una schermata di incasso con pulsanti normali. Meglio grande? In Impostazioni → Attività, subito sotto il tema chiaro/scuro, spunta la casella Pulsante "Incassa" grande. Una cassa già in uso mantiene l'impostazione che aveva. La scelta vale per tutte le casse e i tablet dell'attività.

Segnare un prodotto come "esaurito"

Chiunque nella schermata ordini può tenere premuto un prodotto (o cliccarlo con il tasto destro del mouse) e scegliere Esaurito. Il prodotto diventa grigio e non si può più ordinare su nessuna cassa. Allo stesso modo lo rimetti con Di nuovo disponibile. Ogni modifica finisce nel registro. L'amministratore può farlo anche in Impostazioni → Prodotti. Anche il server della cassa rifiuta un prodotto segnato come "esaurito" ("Cola" è esaurita), quindi anche da un tablet che non aveva ancora ricevuto la modifica o da ordini salvati offline; quel tablet mostra allora "Invio non riuscito".

Schermo cucina (KDS)

Oltre alle stampanti delle comande (non al loro posto), la cucina o il bar possono usare uno schermo. Su un tablet/pc in cucina apri http://<kassaserver>:3000/keuken, accedi con un PIN e scegli la postazione: sono gli stessi nomi delle stampanti (cucina, bar, ...), quindi sullo schermo compare esattamente ciò che sarebbe sulla comanda. "Tutto" mostra tutte le postazioni.

Lo schermo si aggiorna da solo all'istante. Le comande continuano a essere stampate; chi non usa lo schermo non nota alcuna differenza.

Schermo cucina: inoltro, ordine e portata

Impostazioni → Stampanti → Schermo cucina. Ogni parte si attiva separatamente, disattivata per impostazione predefinita; disattivandola si conserva tutto.

Stampante cucina spenta o nessuno schermo cucina

La cassa continua sempre a funzionare, anche quando la stampante della cucina o del bar è spenta (o è finita la carta, o il cavo è staccato) e anche senza schermo cucina:

Portate (antipasto, piatto principale ...)

I pulsanti delle portate compaiono solo quando servono: non appena c'è un menu (prodotto composto) sull'ordine, o quando c'è già qualcosa nella portata da 2 a 4. Con i prodotti normali, come una cola, non li vedi e tutto va subito in cucina. Non c'è niente da impostare.

Sotto la lista dell'ordine c'è Portata 1 2 3 4. Di default è attiva la portata 1 e tutto funziona come sempre: "Invia ordine" manda tutto subito in cucina, senza intestazioni di portata sulla comanda. Se scegli la portata 2 (o successiva) prima di toccare i prodotti:

La portata 1 parte sempre subito. Se la portata 2 è già stata chiamata, un piatto ordinato in seguito nella portata 2 parte anch'esso subito.

Allergeni per prodotto

Di default disattivato: in tal caso gli allergeni non sono visibili da nessuna parte. Si attiva da Impostazioni → Attività → Inserisci e mostra allergeni per prodotto.

All you can eat

Di default disattivato. Si attiva in Impostazioni → Attività → All-you-can-eat (solo l'amministratore). Crei una o più formule, ad es. Pesce, Carne e Sushi, ognuna con:

Con ↑ ↓ imposti l'ordine. Conta quando un piatto appartiene a più formule: va a quella più in alto scelta dal gruppo. Elimina rimuove una formula per i nuovi tavoli; i tavoli in corso mantengono le loro righe di prezzo (lì si possono ancora ridurre le persone, non aumentarle).

Al tavolo:

Buoni regalo

Due interruttori in Impostazioni → Attività → Buoni regalo:

Credito ricaricabile (facoltativo)

Per club, mense sportive, centri giovanili ed eventi: un buono regalo con saldo diventa una tessera ricaricabile. Si attiva in Impostazioni → Attività → Credito ricaricabile, sotto i buoni regalo (di default disattivato; funziona solo se Vendi buoni regalo con saldo è attivo).

Buoni pasto

Solo per attività in Belgio, di default disattivato: Impostazioni → Attività → Incassa → Buoni pasto. I buoni pasto sono un benefit salariale: il datore di lavoro li carica su una tessera del dipendente (Edenred, Monizze o Pluxee). L'ospite paga con essa sul normale terminale di pagamento; non serve alcun collegamento con gli emittenti.

Valuta estera

Incasso in contanti in un'altra valuta, ad es. turisti britannici o americani, o nelle zone di confine con il franco svizzero. Di default disattivato: Impostazioni → Attività → Incassa → Valuta estera. Aggiungi le valute (CHF, CZK, DKK, GBP, HUF, NOK, PLN, SEK, TRY, USD) con un cambio per ogni valuta: quanti euro calcoli per 1 unità (ad es. 1 GBP = € 1,15).

Pulsanti aggiuntivi per ordini e incasso

Pulsanti per ciò che non serve a ogni locale. Tutto è disattivato di default; attivali uno per uno in Impostazioni → Attività → Ordini e incasso (permesso Configurare attività, pagamenti e stampanti). Disattivato = il pulsante non compare da nessuna parte nella cassa e il server di cassa rifiuta l'operazione. Nei Paesi Bassi tutto funziona senza scatola nera; in Belgio un pulsante funziona solo quando quella funzione è stata testata con la scatola nera (accanto al pulsante è indicato finché non è così).

All'apertura di un tavolo:

Durante l'ordine (schermata ordini, per ciò che tocchi dopo):

All'incasso:

In seguito (Scontrini):

Codice: apps/pos-server/src/lib/kassaopties.ts, routes/kassaopties.ts; schermata KassaOpties.tsx. Registro: Impostazione modificata, SPV riscattato, Correggi scontrino, Non pagato.

Scala acconto

Un acconto (caparra, es. per una festa o una prenotazione) lo vendi come un prodotto normale con Acconto attivo (Impostazioni → Prodotti; ha sempre un prezzo libero). Creane uno per aliquota IVA se l'acconto deve essere per aliquota (es. Acconto cibo e Acconto bevande), oppure un solo prodotto se è una parte del preventivo. Il cliente paga l'acconto in anticipo e riceve uno scontrino.

Attivare: Impostazioni → Attività → Ordini e incasso → Scala acconto (disattivato di default). Al conto finale tocca Scala acconto nella schermata ordini e inserisci il numero dello scontrino dell'acconto. La cassa mette le righe dell'acconto di quello scontrino sul conto con quantità negativa (stesso prodotto, prezzo e IVA). Ciò che è già stato scalato non può esserlo di nuovo. Se l'acconto supera il conto, il cliente riceve indietro la differenza (rimborso). In Belgio le righe scalate vanno alla scatola nera come rimborso (REFUND) (UC4110, UC4111, UC4113). Registro: Acconto scalato.

Scontrino via e-mail

Di default disattivato. Si attiva in Impostazioni → Attività → Scontrino anche via e-mail.

SMTP_HOST=smtp.voorbeeld.nl
SMTP_PORT=587
SMTP_GEBRUIKER=kassa@voorbeeld.nl
SMTP_WACHTWOORD=...
SMTP_AFZENDER=bon@voorbeeld.nl

Dopo la compilazione riavvia la cassa. Da quel momento in Incassa compare il campo Invia anche lo scontrino via e-mail (facoltativo): vuoto = solo stampa, come sempre; con un indirizzo e-mail = lo stesso scontrino (con riepilogo IVA e dati fiscali) arriva anche via e-mail all'ospite, con il nome del locale come mittente.

Prenotazioni

Si attiva in Impostazioni → Attività → Prenotazioni (disattivato di default). Lì imposti anche quanti minuti prima un tavolo prenotato compare sulla piantina sala (default 60) e la durata standard di una prenotazione (default 120 minuti).

Integrazione cassa TheFork: tavolo aperto all'arrivo, conto di ritorno

Con la POS API di TheFork la cassa lavora insieme a TheFork Manager (disattivato di default), oltre a scaricare le prenotazioni di cui sopra. Si attiva in Impostazioni → Piattaforme di prenotazione → Integrazione cassa TheFork; passa dal portale di gestione.

Documentazione di TheFork: https://docs.thefork.io/POS-API/introduction

Lista d'attesa per clienti senza prenotazione

Per i clienti senza prenotazione che aspettano un tavolo. Si attiva in Impostazioni → Attività → Lista d'attesa (senza prenotazione) (disattivato di default). Visibile solo se gli SMS tramite CM.com sono configurati; altrimenti la lista d'attesa non compare da nessuna parte nella cassa (nemmeno nelle impostazioni). Funziona separatamente dalle prenotazioni: anche se sono disattivate. Lì c'è anche il testo dell'SMS (vuoto = "Hallo {naam}, uw tafel bij {zaak} is klaar. Wilt u zich melden bij de bediening?"; {naam}, {zaak} e {personen} vengono compilati).

Carta fedeltà / punti

Si attiva in Impostazioni → Attività → Carta fedeltà / punti (disattivato di default, e allora non se ne vede nulla da nessuna parte). Lì imposti anche: punti per euro (0 = solo carte timbri), dopo quanti punti scatta un premio e quanti euro di sconto vale quel premio.

Profilo ospite: VIP, esigenze alimentari e preferenze (facoltativo)

Si attiva in Impostazioni → Attività → Profilo ospite, sotto la carta fedeltà (predefinito disattivato; funziona solo se la carta fedeltà è attiva). Poi:

Preferiti / tasti rapidi

Di default disattivato. Impostazioni → Attività → Preferiti / tasti rapidi:

Un altro giro

Nella schermata ordini c'è il pulsante ↻ Un altro giro (appena c'è qualcosa sul conto, anche se non è ancora stato ordinato). Un tocco aggiunge di nuovo l'ultimo giro (tutto ciò che è partito in una volta con "Invia ordine", o ciò che hai appena toccato) come nuove righe; poi semplicemente Invia ordine. I prezzi sono quelli attuali (anche happy hour).

Tempo al tavolo sulla piantina

Su ogni tavolo occupato compare ⏱ 45m · 12m: da quanto tempo il tavolo è occupato e da quanto è stato inserito qualcosa l'ultima volta (tieni premuto sul tavolo o passaci sopra con il mouse per gli orari precisi). Se per un po' non si ordina nulla, il tavolo riceve un bordo arancione: passa a dare un'occhiata. Quanti minuti lo imposti in Impostazioni → Attività → Tempo al tavolo (default 20, 0 = nessun bordo arancione). Se non è stato ancora inserito nulla, il tempo conta dall'apertura del tavolo.

Se a un tavolo ci sono più gruppi (conti separati), compare una riga per gruppo, ad es. G1 ⏱ 50m · 12m e Rossi ⏱ 10m (il nome del gruppo, altrimenti il numero). Un gruppo fermo da troppo tempo riceve un'etichetta arancione e il tavolo un bordo arancione.

Spostare un intero tavolo

Nella schermata degli ordini trovi Sposta tavolo. Scegli la sala (ad es. Terrazza) e un tavolo: tutti i gruppi del tavolo si spostano, ognuno con il proprio conto. Se scegli un tavolo occupato, i tavoli vengono uniti (i gruppi si aggiungono). Se vuoi spostare solo una parte, usa come prima Dividi / sposta. Se tutto deve andare su un solo conto, usa Unisci.

Lavorare offline (tablet senza wifi)

Se la connessione tra un tablet e il server di cassa cade (wi-fi in terrazza, server spento per un attimo), compare una barra gialla e il tablet continua a lavorare con gli ultimi tavoli, prodotti e ordini aperti salvati:

Numero di persone

Facoltativo e disattivato di default: Impostazioni → Attività → Ordini e pagamento → Registra numero di coperti. Disattivato = il minor numero di tocchi possibile: un tavolo libero si apre con un solo tocco, i coperti non compaiono da nessuna parte, e report, dashboard e riepilogo giornaliero non mostrano coperti né spesa per coperto.

Attivato: quando tocchi un tavolo libero, la cassa chiede quante persone sono (pulsanti grandi 1-8, oppure digita; "Salta" = 1). Sulla piantina un tavolo occupato mostra "3/4 pers." (persone/posti, in giallo se ci sono più persone che posti). Nella schermata ordini lo modifichi con il pulsante "3 pers." nella barra dei gruppi; con più gruppi il tavolo somma tutti i gruppi.

Senza coperti tutto continua a funzionare: Dividi in parti uguali al pagamento parte da 2, l'all-you-can-eat chiede da sé il numero di adulti e bambini, e le prenotazioni e la lista d'attesa mantengono il proprio numero di persone (il tavolo si apre allora senza coperti).

Registro HACCP

Ogni locale horeca deve monitorare e documentare la sicurezza alimentare: nei Paesi Bassi secondo la Hygiënecode voor de Horeca (codice di igiene per l'horeca, controllo della NVWA), in Belgio secondo l'autocontrollo del FAVV (guida G-023). Attiva il Registro HACCP in Impostazioni → Leggi e norme (disattivato per impostazione predefinita).

Impianto di spillatura e flussimetri

Ogni spillatura segnalata da un computer di spillatura o da un flussimetro finisce sul conto, così niente "va perso". Attivalo in Impostazioni → Impianto di spillatura (spento per impostazione predefinita).

Spillatura dosata e Kegboard

Con la spillatura dosata una spina si apre solo dopo che il bicchiere è stato battuto in cassa, e solo per quella quantità. Così non viene spillato nulla che non sia sul conto. Funziona solo se l'impianto di spillatura è attivo, e la attivi per spina (disattivata per impostazione predefinita).

Controllare la musica dalla cassa

Il personale controlla la musica dal touchscreen della cassa, così non serve uno schermo separato al bancone. Attivalo in Impostazioni → Attività → Schermi e utilizzo → Controllare la musica dalla cassa (disattivato per impostazione predefinita). Compare allora il pulsante Musica nella barra superiore: per sorgente (ad es. Bar e Terrazza) Riproduci, Pausa, Successivo, Precedente, Più forte, Più piano e un cursore per il volume, con ciò che è in riproduzione. Torna alla cassa chiude il pannello. Disattivandolo, le sorgenti restano salvate.

L'amministratore aggiunge le sorgenti con + Sorgente musicale, sceglie come sono collegate e le verifica con Prova:

La cassa comunica con i lettori dal server, quindi devono trovarsi nella stessa rete della cassa (Soundtrack via internet). Può controllare la musica chiunque abbia effettuato l'accesso; per configurarla serve il permesso Configurare attività, pagamenti e stampanti. Il token e la password non vengono mai più mostrati e non compaiono nel registro; nel registro compare solo la configurazione (attivo/disattivato, sorgenti), non ogni pressione di pulsante. L'esportazione della configurazione include solo attivo/disattivato (le sorgenti appartengono a una sola attività).

Secondo schermo su un tablet o telefono

La musica e le telecamere possono essere mostrate anche sul tablet o telefono personale di un dipendente, come secondo schermo accanto alla cassa. Nella finestra Musica o Telecamere c'è il pulsante Su un tablet o telefono: mostra un codice QR con l'indirizzo, ad es. http://192.168.1.20:3000/muziek o .../camera.

  1. Collega il tablet o telefono alla rete Wi-Fi del locale.
  2. Scansiona il codice QR con la fotocamera (o digita l'indirizzo nel browser).
  3. Accedi con il tuo PIN. Vedi solo ciò che ti è consentito: la musica tutti, le telecamere solo con il permesso Vedere le immagini delle telecamere.
  4. Fatto: Esci in alto a destra. Se l'accesso è scaduto (ad es. il tablet è rimasto inattivo per una notte), lo schermo chiede di nuovo il PIN.

Suggerimento: aggiungi la pagina alla schermata Home del tablet (nel browser: Aggiungi a schermata Home), così si apre come un'app.

Per questo la cassa rileva l'indirizzo IP del PC della cassa nella rete (se il PC ne ha più di uno, ad es. Wi-Fi e cavo, scegli la rete). Sul portale di gestione (cassa da remoto) è l'indirizzo del portale. Il codice QR lo genera la cassa stessa, senza internet.

Abbinare tablet: con un solo tasto al tablet (facoltativo)

Ancora più semplice: abbina un tablet una sola volta e la cassa invia la musica o le telecamere a quel tablet con un solo tasto. Attivalo in Impostazioni → Attività → Schermi e utilizzo → Tablet come secondo schermo (disattivato per impostazione predefinita).

  1. Sul tablet: apri http://<kassaserver>:3000/tablet (nell'impostazione compare Su un tablet o telefono con il codice QR), accedi con un PIN e dai un nome al tablet, es. Tablet Bar. Abbina.
  2. Sulla cassa: nella finestra Musica o Telecamere ora c'è il tasto A Tablet Bar (con un pallino verde se il tablet è acceso). Toccalo: il tablet apre quello schermo da solo. Con la musica viene inviata anche la fonte scelta (es. Terrazza).
  3. Sul tablet: Chiudi torna in attesa; Disabbina questo tablet rimuove l'abbinamento.

Lascia aperta la pagina sul tablet; se il tablet è spento o in standby, apre lo schermo appena è di nuovo acceso. Il tablet resta connesso come il dipendente che vi ha effettuato l'accesso: inviare e vedere le telecamere è possibile solo con il permesso Vedere le immagini delle telecamere. Nell'impostazione l'amministratore vede quali tablet sono abbinati e se sono accesi, e può rinominarli o rimuoverli. Il tablet conserva una propria chiave; la cassa ne conserva solo un hash. Disattivando: i tablet abbinati restano salvati. Nel registro risulta chi ha abbinato, rinominato o rimosso un tablet.

Schermo di chiamata per l'asporto

Uno schermo per i clienti con a sinistra In preparazione e a destra Pronto, con numeri grandi, come in una friggitoria o un fast food. Attivalo in Impostazioni → Attività → Schermi e utilizzo → Schermo di chiamata per l'asporto (disattivato di default).

Non serve associare: su una TV con browser (smart TV, chiavetta o mini PC), un tablet o un secondo monitor apri l'indirizzo della cassa seguito da /oproep, ad es. http://192.168.1.20:3000/oproep. Nell'impostazione e nella finestra Chiama ci sono i pulsanti Su uno schermo separato e Su un tablet o telefono (codice QR con l'indirizzo). Non serve accedere: lo schermo mostra solo numeri. Tocca lo schermo una volta, così il browser può riprodurre suoni.

Cosa compare:

Il numero: per il negozio online, Thuisbezorgd e le piattaforme di consegna, il numero d'ordine che l'ospite o il rider ha già; altrimenti il numero di ritiro (da 1 a 999). È stampato in grande sullo scontrino, con la spiegazione che il numero comparirà sullo schermo quando l'ordine è pronto (nella lingua dello scontrino).

Opzionale (disattivato per impostazione predefinita, nell'impostazione):

In cassa c'è il pulsante Chiama (con il numero di ordini ancora in preparazione):

  1. Pronto imposta un numero su pronto a mano (senza schermo cucina, o se è più veloce). Per un ordine della webshop o di Thuisbezorgd lo stato viene aggiornato, quindi anche il cliente riceve un avviso.
  2. Indietro lo riporta su In preparazione.
  3. Ritirato lo toglie dallo schermo (con Annulla).

Nell'impostazione scegli anche se mostrare il nome accanto al numero (di default no, per la privacy) e se lo schermo emette suoni. Disattivando: nessun pulsante Chiama e nessun numero di ritiro sullo scontrino; le impostazioni restano salvate. Nel registro si vede chi ha impostato cosa a mano su pronto, indietro o ritirato.

Timbratura entrata e uscita

Di default la timbratura è disattivata: in quel caso non compare da nessuna parte nella cassa (nessun pulsante nella barra superiore, niente nella schermata di accesso, nessuna scheda Orari di lavoro). Attivala in Impostazioni → Attività, sotto Timbratura entrata/uscita del personale:

Chi non usa la cassa (ad es. la cucina) timbra nella schermata di accesso: tocca Timbra entrata / uscita e inserisci il tuo PIN. Alterna tra entrata e uscita, senza accedere.

Se la timbratura è attiva, l'amministratore vede in Impostazioni → Orari di lavoro:

In Belgio ogni timbratura di entrata e uscita viene comunicata anche alla scatola nera. Se non è raggiungibile, la timbratura non avviene (come per l'incasso). Resta da confermare se ciò soddisfa esattamente la registrazione del personale belga.

Pesatura ed etichette (bilancia)

Se la bilancia è attiva (Impostazioni → Bilancia), i prodotti possono avere un prezzo al chilo. Tutti gli altri prodotti restano normalmente a pezzo.

Uber Eats, Deliveroo e HubRise

Oltre a Thuisbezorgd.nl / Takeaway.com, arrivano in cassa anche gli ordini di Uber Eats (Paesi Bassi e Belgio), Deliveroo (solo Belgio; Deliveroo ha lasciato i Paesi Bassi alla fine del 2022) e tutto ciò che passa da HubRise (tra cui Uber Eats, Deliveroo, Just Eat/Takeaway.com e app di ordinazione più piccole). Ogni piattaforma si attiva separatamente in Impostazioni → Piattaforme di consegna (disattivato di default; disattivandolo si conserva tutto). La scheda mostra per ogni piattaforma in quali paesi opera e avvisa se non opera nel paese dell'attività.

Ordini. Un ordine diventa un ordine normale (bezorgen o afhalen, nome gruppo <platform> <nummer>) con i prezzi della piattaforma: prodotti riconosciuti dall'ID (dal menu), dal codice o dal numero PLU; sconosciuto = una riga a parte con il prezzo della piattaforma (e un avviso); costi di consegna, supplementi e sconti come righe proprie; se il totale non torna comunque, una riga "Differenza". La comanda va subito a cucina/bar. Pulsante Piattaforme nella barra superiore (con il numero di ordini in corso; arancione se c'è qualcosa da accettare): accetta o rifiuta (con motivo), in preparazione, pronto, in consegna, consegnato o ritirato, annulla e Completa (pagato online). Ciò che la piattaforma supporta viene rimandato (Uber Eats: accetta, rifiuta, annulla; Deliveroo: accetta, rifiuta, in preparazione, pronto, ritirato; HubRise: tutti gli stati). Se l'attività consegna da sé (consegna propria), l'ordine compare anche in Giri, e partenza e consegna vengono inviate automaticamente alla piattaforma. Un annullamento da parte della piattaforma fa decadere l'ordine. Se la cassa non è connessa al portale da più di 2 minuti, il portale rifiuta un nuovo ordine di Uber Eats e comunica a Deliveroo (con tablet) che non è riuscito, così l'attività lo vede sul tablet.

Codice: apps/pos-server/src/lib/bezorgplatforms.ts, routes/bezorgplatforms.ts; schermate Bezorgplatforms.tsx. Lato portale: horecapos-portaal/src/platforms.mjs. Registro: Piattaforme di consegna (attivazione, impostazioni, ordini). Tutto è incluso nei backup della cassa.

Le piattaforme più piccole nei Paesi Bassi e in Belgio (Homie, Hebtrek, sneleten.nl, Bistroo ...) non hanno un'integrazione cassa pubblica; se sono su HubRise, funzionano tramite HubRise. Per il resto: vedi il backlog.

Cassa automatica (sistema chiuso di gestione del contante)

Predefinito disattivato: i contanti funzionano come sempre. Con un sistema chiuso di gestione del contante il personale non tocca i contanti: il cliente o il dipendente inserisce il denaro nella cassa automatica, che lo conta, controlla le banconote false e restituisce il resto.

Il pulsante ©

Dati OptimumPOS

In basso a destra su ogni schermata (PIN, piantina sala, ordini e cucina) c'è un piccolo pulsante ©. Apre i dati di OptimumPOS: logo, indirizzo, telefono, e-mail e sito web. L'icona è salvata localmente nell'app e quindi funziona anche senza internet. La stessa icona è anche l'icona dell'app (scheda e schermata iniziale).

Parte 2 · Manager

Per iniziare

Di default un manager può fare tutto ciò che può fare il cameriere e inoltre, tra l'altro, applicare sconti, fare resi, chiudere la giornata, gestire il cassetto e consultare il registro e il magazzino. Si trova soprattutto sotto il pulsante Rapporto:

Magazzino

Di default disattivato. Si attiva in Impostazioni → Attività → Gestione magazzino. Disattivato = non compare da nessuna parte nella cassa.

Ordinare dai fornitori

Predefinito disattivato. Si attiva in Impostazioni → Magazzino → Ordinare dai fornitori (solo con Gestione magazzino attiva). Disattivato = la lista ordini funziona come sempre.

Gestione recensioni

Leggere e rispondere alle recensioni di Google e Trustpilot dalla cassa. Si attiva in Impostazioni → Fedeltà e recensioni → Gestione recensioni (disattivato di default, e allora non se ne vede nulla da nessuna parte). Leggi e rispondi in Rapporto → Recensioni (permesso Leggere e rispondere alle recensioni, di default anche per il manager). Se lo disattivi, i collegamenti e le recensioni restano salvati.

Marketing via SMS ed e-mail

Messaggi ai clienti della carta fedeltà che hanno dato il loro consenso. Senza carta fedeltà nessuno dei due si può attivare.

Mancia per dipendente

In Impostazioni → Attività → Mancia (solo se "Mostra pulsanti mancia all'incasso" è attivo) scegli come la mancia per dipendente compare sul parziale (X), sul rapporto Z (scontrino ed e-mail) e su Fatturato per periodo (anche nel CSV):

SceltaRipartizione
Disattivato (default)solo il totale delle mance, come sempre
Mance individualimance dei conti incassati personalmente da ciascuno
Cassa comune per oretutte le mance insieme, in base alle ore timbrate nel periodo (richiede la timbratura entrata/uscita; nessuno ha timbrato = in parti uguali)
Cassa comunetutte le mance insieme, in parti uguali tra chi era in servizio (senza timbratura: chi ha inserito o incassato qualcosa)

I centesimi rimanenti vanno a chi è più vicino al centesimo successivo, così il totale torna sempre. È un riepilogo: la cassa non paga nulla (si può fare con "Denaro fuori dal cassetto"). I vecchi rapporti Z restano come erano.

Rapporto Z via e-mail

Inserisci una volta sola in Impostazioni → Attività → Invia rapporto Z a l'indirizzo e-mail dell'amministratore (più indirizzi: separati da virgola, max. 3). Dopo Chiudi giornata il rapporto Z viene inviato automaticamente a quell'indirizzo, oltre allo scontrino stampato. Vuoto = nessun invio, come sempre.

Riepilogo della giornata (facoltativo)

Se c'è un indirizzo in Invia rapporto Z a, sotto compare la casella Con un breve riepilogo della giornata in cima all'e-mail (predefinito disattivato). Attivo = in cima all'e-mail del rapporto Z alcune righe in linguaggio semplice, solo dai dati della cassa stessa (niente IA, nulla esce all'esterno):

Il rapporto Z stesso (scontrino ed e-mail) resta esattamente uguale. Anteprima di oggi mostra il riepilogo dall'ultima chiusura giornaliera fino ad ora. Il riepilogo è in olandese, come l'e-mail del rapporto Z.

Dashboard

Scheda Dashboard in Rapporto (permesso Fatturato per periodo), sola lettura:

I buoni regalo venduti non contano come ricavo, sconti e intestazioni dei menu non entrano nella top 10 (come negli altri rapporti). Una giornata va dalle 00:00 alle 24:00.

Rapporti aggiuntivi

Tre schede aggiuntive in Rapporto, ognuna attivabile separatamente da Impostazioni → Attività → Gestione e rapporti → Rapporti aggiuntivi (predefinito disattivato: nessuna scheda). Richiedono lo stesso permesso di Fatturato per periodo e sono di sola lettura. Periodo: questa settimana, la settimana scorsa, questo mese, il mese scorso, gli ultimi 90 giorni, quest'anno o a scelta (al massimo poco più di un anno).

Sconti

Un manager o un amministratore vede nella schermata ordini, accanto al totale, il pulsante % Sconto:

Lo sconto compare come riga a sé sullo scontrino ("Sconto 10%", con il motivo sotto) con la stessa aliquota IVA, così il totale e il riepilogo IVA tornano. Sull'intero scontrino lo sconto viene ripartito per aliquota IVA. Per toglierlo: tocca l'importo della riga di sconto. Se una riga con sconto proprio viene annullata, lo sconto decade con essa. Se togli un prodotto da uno scontrino con sconto percentuale sull'intero scontrino, la cassa ricalcola lo sconto su ciò che rimane (in Belgio UC226); un importo fisso resta e all'incasso viene di nuovo ripartito sulle righe. Se con uno sconto del 100% non c'è nulla da pagare, chiudi con "Chiudi (niente da pagare)". Gli sconti compaiono nel registro, e nel rapporto X/Z e nel riepilogo del periodo come "di cui sconto". In caso di reso di uno scontrino con sconto, lo sconto viene applicato in proporzione.

Codici sconto (facoltativo)

Codici con sconto su tutto lo scontrino, ad esempio per una promozione (ZOMER10). Si attivano in Impostazioni → Attività → Codici sconto (disattivato di default); i codici si creano in Impostazioni → Codici sconto (permesso Gestire prodotti):

Nella schermata ordini c'è il pulsante Codice sconto (chiunque può inserire un codice; il codice è creato in anticipo dall'attività). Lo sconto compare come riga "Codice sconto CODICE" sullo scontrino, ripartito sulle aliquote IVA; un codice per scontrino, e non più se è già stato pagato (in parte). Se rimuovi la riga o l'ordine viene annullato, l'utilizzo non conta più. Eliminare un codice usato lo disattiva (i report restano corretti). Tutto finisce nel registro (Codice sconto). Codice: lib/kortingscodes.ts, routes/kortingscodes.ts, Kortingscodebeheer.tsx, KortingscodeDialoog.tsx.

Non compaiono nell'elenco di Impostazioni → Codici sconto (il numero per promozione sì, in Rapporto → Marketing) e passano al webshop finché sono validi e non usati.

Rapporti e chiusura giornaliera

Rapporto - parziale (X)

Pulsante Rapporto nella barra superiore:

Esportazione per la contabilità

Rapporto → Fatturato per periodo → Esportazione contabilità (giornale) (permesso Fatturato per periodo) crea un CSV con una scrittura contabile al giorno, pronto da importare in e-Boekhouden, Exact, SnelStart, Twinfield ecc. (tramite la loro importazione CSV/di prima nota), oppure uno dei formati qui sotto (UBL, XAF e già pronto per 14 software).

Per ogni giorno una registrazione (KASSA-JJJJMMDD) sempre in pareggio (dare = avere):

LatoCosa
Dareincassi per metodo di pagamento (contanti, carta, buono regalo, online, altro), mance incluse
Averericavi per aliquota IVA (IVA esclusa) e IVA da versare per aliquota
Averemance (da pagare al personale, non sono ricavi)
+/-differenza di arrotondamento (arrotondamento contanti a 5 centesimi)
+/-denaro in/fuori dal cassetto (gestione cassa) in contropartita a conti transitori, e differenza di cassa dal rapporto Z

Resi e sconti sono già compresi negli scontrini e riducono i ricavi. Colonne: Datum; Boekstuk; Dagboek; Rekening; Omschrijving; Debet; Credit; Btw-code; Btw-% (punto e virgola, decimali con virgola). Dopo il download la cassa segnala se ci sono giorni non in pareggio o con una differenza superiore all'arrotondamento.

Accanto al pulsante scegli il formato (la scelta viene ricordata nel browser). Lo stesso giornale, ma formattato in modo che il software possa importarlo direttamente. L'elenco mostra solo i formati per il paese dell'attività (Impostazioni → Attività), prima gli standard (CSV, UBL, XAF), poi i software in ordine alfabetico:

FormatoFileImportazione nel software
Generale (CSV)journaal_…csvqualsiasi software con importazione CSV/prima nota (abbina le colonne)
UBL 2.1 / Peppol (XML), NL e BEjournaal_…_ubl.xml (più giorni: .zip)ogni giorno una fattura "incassi giornalieri" a Kassaverkopen (già pagata) secondo Peppol BIS Billing 3.0, con una riga per aliquota IVA e il conto ricavi in AccountingCost; solo fatturato e IVA (metodi di pagamento, mance, arrotondamento, cassetto e differenza di cassa non vanno in una fattura). Da caricare tra l'altro in Adsolut, Billit, BUNNI, DigiBoox, Expert/M, Moneybird, Popsy, Rompslomp, Storecove e TriFact365; non per l'invio tramite la rete Peppol. Nome, partita IVA e indirizzo provengono da Impostazioni → Attività
XML Auditfile Financieel (XAF 4.0), NLjournaal_…_xaf.xaffile di audit dell'Amministrazione fiscale olandese (Belastingdienst) (XSD XmlAuditfileFinancieel4.0): un unico file per il periodo, con libro mastro, codici IVA, periodi e ogni giorno una transazione di prima nota; importabile tra l'altro in Caseware, Exact Reeleezee e Visma Cash
AccountView (XML), NLjournaal_…_accountview.xmlMovimenti XML (VFPData, una transact per riga di registrazione con dj_code, period, inv_date, inv_nr, acct_nr, trn_desc e amount: dare positivo, avere negativo), un documento al giorno nella prima nota; importazione con una definizione di importazione (Document → Importeren → Importdefinitie aanmaken, tipo XML), i nomi dei campi sono quelli di AccountView stesso, quindi basta abbinarli 1 a 1 una volta. Fai controllare la prima importazione
AFAS Profit (XML)journaal_…_afas.xmlXML dell'UpdateConnector FiEntries (movimenti contabili), una registrazione al giorno con anno, periodo, amministrazione e registro; da importare in Profit con Importa → XML; inserisci il numero di amministrazione (predefinito 1)
Asperion (CSV), NLjournaal_…_asperion.csvformato FMUTA (Extra → Import financiële mutaties), ogni giorno una riga di intestazione e le righe di registrazione; la definizione di importazione viene impostata da Asperion tramite l'helpdesk
Riepilogo giornaliero (HTML), NL e BEjournaal_…_dagstaat.htmlriepilogo giornaliero leggibile per giorno (fatturato per aliquota IVA, metodi di pagamento, mance, differenza di cassa) e totali; da stampare come PDF o inviare per e-mail, per i software senza importazione (Accountable, Dext, Dexxter, Jortt, Kleisteen, MoneyMonk)
e-Boekhouden.nl (CSV)journaal_…_eboekhouden.csvData; N. documento; Descrizione; Conto contabile; Importo (dare positivo, avere negativo); codice IVA GEEN (l'IVA è già sui conti IVA); Importa → Movimenti, tipo prima nota
Exact Online (XML)journaal_…_exact.xmleExact-XML (argomento GLTransactions): una registrazione di prima nota al giorno (tipo 90) nel registro; Importa/esporta → Importa XML
InformerOnline (TXT), NLjournaal_…_informer.txtprima nota separata da tabulazioni (Geavanceerd → Memoriaal → uploaden); il registro deve essere un numero 1–99 (altrimenti 90)
KING ERP (XML), NLjournaal_…_king.xmlKING_JOURNAAL: un lotto di registrazioni (non definitivo) con una scrittura contabile al giorno
KOMAS (CSV), NLjournaal_…_komas.csvformato libero KOMAS (0401 Importeren journaalposten): Datum; Grootboek; Omschrijving; Bedrag
Odoo (CSV), NL e BEjournaal_…_odoo.csvContabilità → Journal Entries → Import records; registro e conto per nome o codice
Sage BOB 50 (Excel), BEjournaal_…_bob.xlsxImportation de données externes → Opérations diverses (abbinare le colonne una sola volta)
SAP Business One (ZIP), NL e BEjournaal_…_sapb1.zipData Transfer Workbench, Journal Entries: JournalEntries.csv e JournalEntries_Lines.csv
SnelStart (CSV)journaal_…_snelstart.csvData; N. documento; Descrizione; Conto contabile; Dare; Avere (gg-mm-aaaa, virgola decimale, senza BOM); importa come prima nota, il registro lo scegli durante l'importazione
Twinfield (XML)journaal_…_twinfield.xmltransazioni di registro come bozza (destiny="temporary"), il commercialista le rende definitive; inserisci il codice amministrazione (vuoto = l'amministrazione in cui importi)
Winbooks (CSV), BEjournaal_…_winbooks.csvK_DOC.CSV, ogni giorno un documento nel registro (Winbooks numera da solo)
Yuki (XML)journaal_…_yuki.xmlJournal-XML (GeneralJournal), una prima nota al giorno, stessa struttura del collegamento diretto; ID amministrazione facoltativo

Panoramica: quale software di contabilità in quale modo

Per segmento, in ordine alfabetico. NL/BE = paese in cui funziona il software: in Impostazioni → Contabilità → Software di contabilità vedi solo i software per il paese dell'attività (i software olandesi non funzionano in Belgio e viceversa). Live = la cassa registra da sola ogni giorno (si sceglie in Impostazioni → Contabilità → Software di contabilità); su richiesta = esiste un'API, ma richiede prima una registrazione come partner o un'approvazione del fornitore (faccelo sapere). File = il formato in Esportazione contabilità. Dove sono possibili entrambi, puoi usarli entrambi. L'elenco si trova in packages/shared/src/boekhoudcatalogus.ts e compare anche in Impostazioni → Contabilità.

SoftwareNLBELiveFileNota
PMI e liberi professionisti
Accountable–✓–Riepilogo giornaliero (HTML, per PDF o e-mail)
AccountView (Visma)✓–su richiestaAccountView (XML), Generale (CSV)File: movimenti XML per una definizione di importazione (Document → Importeren); anche il CSV generico funziona con una definizione di importazione. Live tramite l'API di AccountView.Net su richiesta ad AccountView.
Acumulus✓–✓–Live come fattura di vendita pagata al giorno, con una riga per aliquota IVA.
AFAS Profit✓–✓AFAS Profit (XML)
Asperion✓–su richiestaAsperion (CSV)Live dopo l'iscrizione come partner API presso Asperion.
Billit–✓su richiestaUBL 2.1 / Peppol (XML)Carica l'UBL tramite Fast input; live dopo l'approvazione di Billit.
BUNNI✓––UBL 2.1 / Peppol (XML)Ancora nessuna documentazione API pubblica.
Dexxter–✓–Riepilogo giornaliero (HTML, per PDF o e-mail)
DigiBoox (Visma DigiBTW)✓––UBL 2.1 / Peppol (XML)
e-Boekhouden.nl✓––e-Boekhouden.nl (CSV)Anche per ex clienti Ficsus.
Exact Online✓✓✓Exact Online (XML)
Exact Reeleezee✓––XML Auditfile Financieel (XAF 4.0)
Horus–✓✓–
InformerOnline✓––InformerOnline (TXT)
Jortt✓––Riepilogo giornaliero (HTML, per PDF o e-mail)Nessuna importazione: registra l'incasso giornaliero come ricavo con il riepilogo giornaliero come allegato.
KING✓–su richiestaKING ERP (XML)Live dopo la registrazione come partner presso KING Software.
Kleisteen✓––Riepilogo giornaliero (HTML, per PDF o e-mail)
KOMAS (Adfinis)✓––KOMAS (CSV)
Minox✓–su richiesta–Live dopo un collegamento partner tramite Minox.
Moneybird✓–✓UBL 2.1 / Peppol (XML)
MoneyMonk✓––Riepilogo giornaliero (HTML, per PDF o e-mail)MoneyMonk avrà nel 2026 un'API per le integrazioni.
Octopus–✓su richiesta–Live dopo la richiesta di un software house ID a Octopus.
Popsy / Allegro–✓–UBL 2.1 / Peppol (XML)
Rompslomp✓––UBL 2.1 / Peppol (XML)
Sage BOB 50–✓–Sage BOB 50 (Excel)
Silvasoft✓✓✓–Live come registrazione di vendita al giorno, con una riga per aliquota IVA; metodi di pagamento, mance e differenza di cassa non vengono inclusi.
SnelStart✓–✓SnelStart (CSV)
Twinfield✓–✓Twinfield (XML)
Visma Cash✓–su richiestaXML Auditfile Financieel (XAF 4.0)API con una chiave da CASHWeb; il formato dei record per le registrazioni è ancora da confermare.
Visma eAccounting✓–su richiesta–Live dopo l'approvazione di Visma (registrazione partner).
Winbooks–✓su richiestaWinbooks (CSV)
Wolters Kluwer Adsolut–✓su richiestaUBL 2.1 / Peppol (XML)UBL con il conto ricavi per riga; attiva in Adsolut "grootboekrekening verwerken bij verkopen".
Wolters Kluwer Expert/M–✓–UBL 2.1 / Peppol (XML)
Yuki✓✓✓Yuki (XML)
Internazionale
QuickBooks Online✓✓✓CSV genericoNessuna edizione olandese o belga: controlla le impostazioni IVA.
Xero✓✓✓CSV generico
Zoho Books✓✓✓CSV generico
Enterprise e catene
Exact Globe+✓✓–Exact Online (XML)Stesso XML di Exact Online; fai controllare la prima importazione.
Microsoft Dynamics 365 Business Central✓✓✓–
Odoo✓✓✓Odoo (CSV)
Oracle NetSuite✓✓su richiestaCSV generico
SAP Business One✓✓✓SAP Business One (ZIP)
Unit4 ERPx✓✓–CSV generico
Piattaforme e aggregatori
Apicbase✓✓su richiesta–Vendite per scontrino per magazzino e food cost: integrazione in Impostazioni → Ricette (non come software di contabilità).
Caseware✓✓–XML Auditfile Financieel (XAF 4.0)
Combidesk✓–su richiesta–Combidesk realizza e gestisce il collegamento in autonomia (tra l'altro verso Exact, Moneybird, SnelStart e Twinfield); su richiesta come partner.
Dext✓✓–Riepilogo giornaliero (HTML, per PDF o e-mail)Invia il riepilogo giornaliero (PDF) per e-mail al tuo indirizzo Dext.
Jamix✓✓su richiesta–Vendite per magazzino e food cost tramite l'interfaccia JAPI di Jamix; sviluppo su misura su richiesta a Jamix.
Omniboost✓✓su richiesta–Inoltra tramite il programma partner di Omniboost a molti sistemi contabili e alberghieri.
Storecove (Peppol)✓✓su richiestaUBL 2.1 / Peppol (XML)
TriFact365✓––UBL 2.1 / Peppol (XML), Riepilogo giornaliero (HTML, per PDF o e-mail)
Qualsiasi altro software✓✓–CSV generico, UBL o XAF (NL)

Fai controllare la prima importazione dal commercialista. Il formato si trova in packages/shared/src/journaalexport.ts (con test).

Impostazioni → Contabilità (permesso Configurare attività, pagamenti e stampanti): codice registro (default MEM) e il conto di contabilità generale per ogni voce. Vuoto = conto di esempio (NL: 8000/8010/8020 ricavi, 1500/1510 IVA, 1000 cassa, 1100 carta; BE: 7000xx ricavi, 451000 IVA, 570000 cassa). Fai inserire i conti reali dal commercialista.

Collegamento con un software di contabilità

Collegamenti live con Acumulus, AFAS Profit, Microsoft Dynamics 365 Business Central, Exact Online, Horus, Moneybird, Odoo, QuickBooks Online, SAP Business One, Silvasoft, SnelStart, Twinfield, Xero, Yuki e Zoho Books. Dopo ogni giornata la cassa registra lo stesso giornale dell'esportazione qui sopra (incassi e IVA per aliquota, metodi di pagamento, mancia, arrotondamento, cassetto e differenza di cassa) come registrazione di prima nota nel software scelto, con il registro e i conti contabili di Impostazioni → Contabilità. È sempre attivo al massimo un software.

SoftwarePaeseCollegare conCosa registra la cassa
AcumulusNLcodice contratto, utente e password di un utente APIogni giorno una fattura di vendita pagata con una riga per aliquota IVA; Acumulus invia gli errori per e-mail a ACUMULUS_FOUTMAIL
AFAS ProfitNLambiente, token, amministrazioneprima nota (FiEntries)
Business CentralNL, BEtenant, ambiente, azienda, ID client e segreto di un'app Microsoft Entra (API.ReadWrite.All)righe nel registro generale con il codice di Registro
Exact OnlineNL, BEaccesso (OAuth, app propria: vedi Exact Online qui sotto; Belgio: start.exactonline.be)registrazione di prima nota nel registro (es. 90)
HorusBEaccesso (OAuth, app qui sotto), dossier facoltativooperazione diversa
MoneybirdNLtoken API, amministrazione facoltativaprima nota (general journal document)
OdooNL, BEindirizzo, database, utente, chiave APIscrittura contabile nel registro con il codice breve (es. MISC)
QuickBooks OnlineNL, BEaccesso (OAuth, app qui sotto; QUICKBOOKS_OMGEVING)journal entry; conti per numero
SAP Business OneNL, BEindirizzo del Service Layer, database, utente, passwordscrittura contabile (JournalEntries)
SilvasoftNL, BEutente e chiave APIregistrazione di vendita sul contatto Kassaverkopen, una riga per aliquota IVA (metodi di pagamento, mance e differenza di cassa non vengono inclusi)
SnelStartNLchiave di collegamento e chiave di abbonamentoprima nota
TwinfieldNLaccesso (OAuth, app qui sotto), ufficio facoltativotransazione di registro
XeroNL, BEaccesso (OAuth, app qui sotto), organizzazione facoltativamanual journal; conti per codice
YukiNL, BEchiave API, amministrazione facoltativaprima nota (GeneralJournal)
Zoho BooksNL, BEaccesso (OAuth, app qui sotto; per impostazione predefinita il data center europeo), organizzazione facoltativascrittura contabile; conti per codice

File di audit cassa (XAA)

Per le attività olandesi, in Rapporto → Fatturato per periodo, accanto all'esportazione contabilità, c'è il pulsante File di audit cassa (XAA): l'XML Auditfile Afrekensystemen 3.2 della Belastingdienst (amministrazione fiscale olandese) e dell'XML Platform (SRA) sul periodo scelto (al massimo poco più di un anno; permesso Fatturato per periodo). È il file che la Belastingdienst raccomanda per fornire i dati di una cassa durante un controllo o al commercialista; le regole sono nella Handreiking voor een betrouwbaar afrekensysteem (Guida per un sistema di cassa affidabile) (docs/xaa).

Nel file (auditfile_kassa_<van>_tm_<tot>.xml, schema docs/xaa/XmlAuditfileAfrekensystemen3.2.xsd):

Gli importi sono positivi con C (vendita, incasso) o D (reso, pagamento); gli orari sono in ora olandese con offset. Tutte le chiavi sono gli id del database senza trattini, quindi rintracciabili nella cassa.

Firma (capitolo 6 della specifica): se Optimum POS ha configurato un certificato, il file di audit viene firmato in una busta (XML Signature) e il file si chiama …_ondertekend.xml; altrimenti è un file di audit semplice, e la cassa lo segnala al download.

Pagamento a credito

I clienti aziendali (un'azienda che ogni settimana fa ritirare il pranzo, un hotel, un'associazione) acquistano a credito e pagano più tardi, con fattura. Attivalo in Impostazioni → Fatture → Pagamento a credito (solo con Fatture attivo; disattivato per impostazione predefinita).

Banca: registrare i bonifici

In Rapporto → A credito → Banca la cassa cerca per ogni accredito la fattura a credito corrispondente:

Immagini delle telecamere nella cassa

Tutte le immagini delle telecamere del locale in un'unica pagina, senza schermo o app separati. Attivalo in Impostazioni → Attività → Schermi e utilizzo → Immagini delle telecamere nella cassa (disattivato per impostazione predefinita). Compare allora il pulsante Telecamere nella barra superiore per chi ha il permesso Vedere le immagini delle telecamere (per impostazione predefinita manager e amministratore; in Impostazioni → Permessi attivabile anche per i camerieri). Tutte le telecamere sono affiancate; tocca una telecamera per l'immagine grande. Disattivandolo, i sistemi di telecamere restano salvati.

Anche come schermo separato: Su uno schermo separato apre http://<kassaserver>:3000/camera (ad es. un monitor dietro il bancone), e Su un tablet o telefono mostra un codice QR: un dipendente lo scansiona con il proprio tablet o telefono e accede con il proprio PIN (anche lì solo con il permesso Vedere le immagini delle telecamere). Su uno schermo stretto le telecamere sono una sotto l'altra. Vedi Secondo schermo su un tablet o telefono.

L'amministratore aggiunge i sistemi di telecamere con + Sistema di telecamere, li verifica con Prova e sceglie per ogni telecamera il nome e se è nella pagina:

Senza ffmpeg: la foto.

Privacy: la cassa recupera le immagini dal sistema di telecamere e si limita a inoltrarle; non viene salvato nulla (nessuna registrazione, nessuna cache). Utenti e password restano sul server e non compaiono mai sullo schermo né nel registro. Nel registro risulta chi ha guardato le telecamere. La pagina richiede le immagini con una chiave (valida 12 ore, finché il dipendente è connesso), perché un'immagine nel browser non può inviare un token. L'esportazione della configurazione include solo attivo/disattivato.

Registro delle azioni sensibili

Rapporto → Registro (manager o amministratore) mostra chi ha fatto cosa e quando.

Cosa viene registrato: storni, sconti (e loro rimozione), resi, copie di scontrini, pro forma, pagamenti con carta manuali, apertura del cassetto, entrate/uscite di denaro dal cassetto, fondo cassa, chiusura giornaliera, spostamento di righe o tavoli, chiusura di ordini vuoti, modifica di prezzo/nome/IVA dei prodotti, prodotti nuovi o eliminati, modifiche a personale e impostazioni, modifica degli orari di lavoro, accesso e uscita, PIN errati e timbrature di entrata e uscita. Con il pagamento su conto anche: clienti, vendite e pagamenti su conto, importazione degli estratti conto, il collegamento bancario e il recupero dalla banca. Con l'avviso per tempi di preparazione troppo lunghi: ordini in ritardo e scuse inviate. Con Mailchimp o Klaviyo: connessione, scelta della lista, scollegamento e disiscrizioni da lì. Con il controllo della musica: attivo/disattivato e aggiunta, modifica e rimozione delle sorgenti musicali. Con le immagini delle telecamere: chi ha guardato le telecamere (al massimo una volta ogni mezz'ora per dipendente), attivo/disattivato e i sistemi di telecamere. Con gli avvisi: ogni avviso, la sua gestione e l'attivazione e disattivazione.

Avvisi: frodi e anomalie

Impostazioni → Avvisi. Due parti, ciascuna attivabile separatamente e disattivata di default; disattivarle conserva tutti gli avvisi e le impostazioni. Può configurarli chi ha il permesso Configura avvisi (di default il manager e l'amministratore); può vedere e gestire gli avvisi chi può vedere il registro. La cassa controlla ogni 5 minuti (e con Controlla ora); non sulla cassa ombra.

Rilevamento di frodi e furti (per dipendente, per giornata lavorativa dalle 05:00), ogni regola attivabile separatamente con una propria soglia:

Avvisi per anomalie, confrontato con lo stesso giorno della settimana e la stessa ora delle ultime settimane (di default 4; i giorni senza ricavi non contano, almeno due giorni di confronto):

Ogni avviso arriva una sola volta (per regola, dipendente e giorno; il tempo di cucina al massimo una volta all'ora) e va a:

Ogni canale ha un pulsante Messaggio di prova. Token e chiavi restano sulla cassa (gli schermi vedono solo se sono compilati). Un avviso non è una prova: controlla il conto e il registro e parlane con il dipendente.

Scontrini: copia e reso (nota di credito)

Scontrini

Pulsante Scontrini nella barra superiore:

Cassetto con sensore e cassetto per dipendente

Predefinito disattivato. Si imposta in Impostazioni → Pagamenti → Cassetto.

Parte 3 · Amministratore

Per iniziare

Installazione. HorecaPOS si installa con il programma di installazione per il tuo sistema, disponibile nella pagina di download di OptimumPOS: Android (app), Windows (programma di installazione), macOS (installer per Mac con Apple Silicon e Intel), Linux (installer grafico, oppure il pacchetto .deb o .rpm), Raspberry Pi (installer grafico o .deb per un Raspberry Pi 3, 4 o 5 con Raspberry Pi OS a 64 bit) e Chromebook (l'app Android da Google Play). Scegli per tutti gli utenti per un server di cassa a cui si collegano i tablet e lo schermo cucina, oppure solo per me per una sola cassa su quel dispositivo. L'installer installa tutto il necessario, anche il database, e fa un backup ogni notte. Per aggiornare, installa la nuova versione: i tuoi dati restano. Il programma di installazione si avvia nella lingua del tuo computer (altrimenti in inglese); su Windows e Linux puoi scegliere un'altra lingua nella prima schermata. La cassa si avvia poi subito in quella lingua. I pacchetti .deb e .rpm e l'app Android seguono la lingua del sistema, altrimenti l'olandese.

L'amministratore configura la cassa in Impostazioni. Lì ci sono schede come Attività, Personale, Permessi, Orari di lavoro, Prodotti, Happy hour, Magazzino, Piantine sala, Pagamenti, Stampanti, Contabilità, Backup, Importa/esporta e Database. Quali schede vede anche un manager dipende dai permessi.

Database. In Impostazioni → Database (solo l'amministratore) scegli tra MySQL / MariaDB, il database integrato e PostgreSQL; nel passaggio vengono trasferiti tutti i dati (vedi Database). Se Optimum POS ha già impostato un indirizzo fisso durante l'installazione, vale quell'indirizzo e non ci sono campi da compilare. Altrimenti compili tu Server, Porta, Database, Utente e Password. La cassa li salva da sola, poi li mostra già compilati e puoi sempre modificarli con Modifica dati MySQL/MariaDB o Modifica dati PostgreSQL. Lasciare vuota la password significa: mantenere la password salvata (per lo stesso utente). L'installer e un aggiornamento non modificano DATABASE_URL né il database scelto.

Impostazioni: prodotti

Contabilità

Tutto ciò che riguarda la contabilità si trova in Impostazioni → Contabilità. Compila insieme al tuo commercialista il registro e i conti contabili. Se vuoi che la cassa registri da sola ogni giorno il fatturato giornaliero, scegli il tuo software in alto in Software di contabilità, anche Exact Online: vedi solo i software che funzionano nel paese della tua attività. Subito sotto compili i dati di quel software e colleghi. Per i software in cui accedi con login (come Exact Online, Twinfield o Xero), compila prima l'app: ID client e segreto client. Se Optimum POS ha impostato in modo fisso il software o un dato durante l'installazione, non vedi quella scelta o quel campo. Lì trovi anche una panoramica di tutti i software: quali possono essere collegati live e quali ricevono un file. Un file si crea in Rapporto → Fatturato per periodo → Esportazione contabilità: scegli il formato del tuo software, oppure UBL (Peppol), XAF o un riepilogo giornaliero. Fai sempre controllare la prima registrazione o importazione dal tuo commercialista.

Per un'attività olandese lì c'è anche File di audit cassa (XAA): l'XML Auditfile Afrekensystemen della Belastingdienst con tutti gli scontrini, le righe, i pagamenti e gli eventi della cassa nel periodo scelto. Lo consegni al tuo commercialista o, in caso di controllo, alla Belastingdienst.

Paghe e pianificazione

Se il tuo personale usa la timbratura entrata/uscita, in fondo a Impostazioni → Orari di lavoro trovi Paghe e pianificazione, in due blocchi. In Elaborazione paghe scegli il tuo software paghe o (in Belgio) il tuo segretariato sociale, e inserisci per ogni dipendente la sua matricola in quel software. Poi crei per un periodo il file con le ore lavorate e i ricavi per dipendente, e lo importi nel tuo software paghe. In Pianificazione del personale scegli il tuo sistema di pianificazione: con Deputy, Dyflexis e Shiftbase i ricavi vanno ogni ora automaticamente, con gli altri crei un file dei ricavi. Così vedi nella tua pianificazione il costo del personale accanto ai ricavi. Se lavori senza timbratura entrata/uscita, puoi comunque inviare i ricavi alla tua pianificazione: si trova allora in fondo a Impostazioni → Contabilità, sotto Ricavi alla tua pianificazione. Se Optimum POS ha impostato qualcosa in modo fisso durante l'installazione, quella scelta o quel campo non li vedi.

Backup

La cassa crea un backup automatico ogni notte, e sempre prima di un aggiornamento. In Impostazioni → Backup vedi tutti i backup (quando, da chi o automatico, dimensione) e con Crea backup ne crei uno tu. Se l'ultimo backup risale a più di due giorni fa, compare un avviso rosso: in quel caso contatta Optimum POS.

Impostazioni: backup

Ripristinare si fa con il pulsante Ripristina accanto a un backup. Tutto ciò che è successo dopo quel backup va perso. Devi confermarlo con una spunta e inserire di nuovo il tuo PIN. La cassa crea prima un backup di sicurezza dello stato attuale e poi disconnette tutti. In Belgio non è possibile dalla cassa (i contatori della scatola nera proseguono); lì lo fa Optimum POS.

Database

In Impostazioni → Database (solo l'amministratore) vedi dove la cassa conserva i suoi dati. In alto c'è il database attuale con programma, versione, tabelle, righe e indirizzo o cartella. Per il personale e i tablet la cassa funziona allo stesso modo con ogni database. Su Windows, macOS, Linux e Raspberry Pi scegli tra tre database:

Quando MySQL o MariaDB? Se il tuo locale ha già un server MySQL o MariaDB, se il tuo amministratore IT lavora con questo, o se vuoi leggere i dati nella tua reportistica, in Excel o in un programma di BI. Nel dubbio scegli l'integrato: funziona subito.

Cosa serve per MySQL o MariaDB?

CREATE DATABASE horecapos CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER 'horecapos'@'localhost' IDENTIFIED BY 'wachtwoord';
GRANT ALL PRIVILEGES ON horecapos.* TO 'horecapos'@'localhost';

Se MySQL o MariaDB gira su un altro computer, nelle ultime due righe metti l'indirizzo IP del server della cassa al posto di localhost.

Migrare a MySQL / MariaDB:

  1. In Indirizzo di MySQL/MariaDB compila i campi: Server (predefinito localhost), Porta (predefinita 3306), Database (predefinito horecapos), Utente e Password; lo stesso per MariaDB. Se l'indirizzo è già impostato, i campi sono già compilati; se lasci vuota la password, resta quella salvata (per lo stesso utente). La cassa salva l'indirizzo da sola; se Optimum POS ha già impostato un indirizzo fisso, vale quell'indirizzo e non ci sono campi. Se la cassa funziona già con MySQL/MariaDB, modifichi i dati in seguito con Modifica dati MySQL/MariaDB. Una connessione cifrata la configura Optimum POS per te.
  2. Tocca Verifica connessione: vedi il programma e la versione, oppure perché non funziona.
  3. Tocca Migra a MySQL/MariaDB, conferma con la spunta e inserisci il tuo PIN.

La migrazione funziona in ogni direzione tra i tre database, e tutti i dati vengono trasferiti:

  1. La cassa per un momento non accetta richieste (di solito meno di un minuto); poi i tablet riprendono da soli.
  2. Prima la cassa fa un backup dello stato attuale (in Impostazioni → Backup).
  3. Tutto passa nel nuovo database e la cassa conta tabella per tabella se c'è tutto esattamente.
  4. Solo quando tutto torna, la cassa continua sul nuovo database. I dipendenti collegati restano collegati.

Se qualcosa non riesce, non cambia nulla e la cassa continua a lavorare sul vecchio database. Il vecchio database resta com'è, quindi puoi sempre tornare indietro. I dati di cassa già presenti nel nuovo database MySQL/MariaDB o PostgreSQL vengono sostituiti. Funziona anche in Belgio: i contatori della scatola nera vengono trasferiti esattamente.

Backup e ripristino funzionano allo stesso modo con tutti e tre i database (Impostazioni → Backup). Un backup di un database si può ripristinare in qualsiasi altro, anche un backup di PostgreSQL in MySQL o MariaDB.

Cosa c'è in MySQL o MariaDB? Ogni tabella della cassa, con lo stesso nome e le stesse colonne (orari in UTC). Ogni tabella riceve in più la colonna chiave _hp_sleutel, e nelle tabelle di supporto _horecapos_stand, _horecapos_kolom, _horecapos_reeks e _horecapos_wijziging (registro delle modifiche, conservato 14 giorni) la cassa tiene lo stato, i tipi di colonna, i contatori e le modifiche. Gli altri programmi leggono i dati; scrivono solo le casse.

Come funziona: la cassa calcola in una copia di lavoro veloce sul server della cassa e scrive ogni modifica in MySQL/MariaDB nello stesso passaggio. Se non riesce, la modifica non viene eseguita e la cassa segnala un errore; tieni quindi MySQL/MariaDB raggiungibile. All'avvio la cassa legge tutto da MySQL/MariaDB.

Più casse su un database. Come con PostgreSQL, più casse possono usare lo stesso database MySQL/MariaDB, per esempio ogni locale di una catena con il proprio server di cassa. Le modifiche avvengono una dopo l'altra e ogni cassa recepisce prima quello che hanno fatto le altre, così non si perde nulla quando si modifica nello stesso momento. Se una cassa ripristina un backup o una cassa con una versione più recente aggiorna il database, le altre casse rileggono tutto da sole; aggiorna quindi tutte le casse insieme. Una cassa rimasta spenta per più di 14 giorni rilegge tutto all'avvio.

Durante l'installazione scegli anche il database: MySQL / MariaDB, integrato (consigliato) o PostgreSQL con il suo indirizzo. Se non è raggiungibile, la cassa si installa con il database integrato; potrai migrare qui in seguito. Con un aggiornamento la scelta resta.

Collegare tablet e schermi

Schermo cliente

Uno schermo sulla cassa rivolto verso il cliente. Il cliente vede più o meno cosa è stato ordinato e, in modo molto chiaro, l'importo e come si paga. Non ha comandi: lo schermo segue solo ciò che fa la cassa. Di default disattivato; si attiva in Impostazioni → Attività → Display cliente. Su un PC cassa con due schermi la cassa lo attiva automaticamente la prima volta; se poi lo si disattiva, resta disattivato. Senza display cliente (disattivato, o non installato) tutto funziona esattamente come sempre: la cassa invia l'immagine in background e il personale non si accorge mai di un errore o di uno schermo mancante.

Cosa vede il cliente:

Collegamento, in due modi (entrambi da configurare sul dispositivo stesso):

Il display cliente non chiede un PIN (non c'è nulla da comandare) e mostra solo l'immagine della cassa a cui è abbinato. L'immagine è solo nella memoria del server di cassa; dopo un riavvio lo schermo resta vuoto fino alla modifica successiva. L'impostazione (attivo/disattivato e testo di benvenuto) è inclusa nel backup e in Importa/esporta (Altre impostazioni).

Scontrino digitale tramite QR (opzionale)

Predefinito disattivato. Si attiva da Impostazioni → Attività → Cucina e display cliente → Scontrino digitale (l'opzione compare quando il display cliente è attivo e salvato). Dopo il pagamento, insieme a Grazie compare un codice QR, che resta visibile 45 secondi invece di pochi secondi. L'ospite lo scansiona con il proprio telefono e vede lo scontrino, esattamente come quello cartaceo (stesso testo, per una cassa belga anche con il blocco FDM). Sul telefono può stamparlo, salvarlo come PDF o scaricarlo come file di testo.

Display cliente a riposo: presentazione (opzionale)

Predefinito disattivato. Si attiva da Impostazioni → Attività → Cucina e display cliente → Display cliente a riposo. Se sul display cliente non c'è un conto, le diapositive si alternano (per impostazione predefinita ogni 8 secondi, regolabile da 4 a 60):

Senza diapositive il display cliente mostra la schermata di benvenuto, come sempre.

Happy hour

Di default disattivato. Si attiva in Impostazioni → Attività → Usa happy hour; dopo compare la scheda Impostazioni → Happy hour.

Fasce orarie e stagioni

Disattivato per impostazione predefinita. Si attiva da Impostazioni → Attività → Fasce orarie e modalità d'ordine → Assortimento per fascia oraria e stagione; poi compare la scheda Impostazioni → Fasce orarie. Se lo disattivi, tutti i prodotti tornano sempre in vendita e le fasce orarie restano salvate.

Assortimento e prezzi per modalità d'ordine

Disattivato per impostazione predefinita. Si attiva da Impostazioni → Attività → Fasce orarie e modalità d'ordine → Assortimento e prezzi per modalità d'ordine. Se lo disattivi, vale di nuovo ovunque il prezzo normale e tutto è in vendita ovunque; i prezzi inseriti restano salvati.

Di default disattivato. Si attiva in Impostazioni → Attività → Usa menu.

Ricette e costo (Apicbase)

Integrazione con Apicbase (ricette, costo, magazzino e acquisti) tramite la Generic POS API di Apicbase (disattivata di default, ogni parte si attiva o disattiva separatamente). Si imposta in Impostazioni → Ricette (permesso Imposta attività, pagamenti e stampanti). La cassa comunica direttamente con Apicbase (solo traffico in uscita, nessun portale necessario).

  1. Connetti (tutto da compilare a cura dell'amministratore), in uno di tre modi:
    • Incolla token: in Apicbase Library Settings → API Settings → New token → Service Account Token (scope accounts, library, sales); incollare l'access token e il refresh token;
    • Accedi con l'API-app propria dell'attività (client-id e client secret da API Settings): Accedi ad Apicbase e incollare il codice che Apicbase mostra dopo;
    • Un token scaduto (dopo 7 giorni) viene rinnovato automaticamente dalla cassa con il refresh token.
  2. Outlet: Recupera outlet e scegliere l'outlet di questa attività. La cassa vi imposta il POS su Generic POS API con un proprio location-id (modificabile; predefinito HORECAPOS-…, unico per cassa).
  3. Attivo, con caselle di spunta:
    • Prodotti, gruppi e opzioni ad Apicbase: categorie, prodotti (PLU = il numero PLU del prodotto, altrimenti il codice, altrimenti l'id), opzioni come modifier, con prezzo e IVA. Automaticamente dopo ogni modifica (dopo un minuto) e ogni giorno. In Apicbase colleghi poi ogni prodotto della cassa a una ricetta;
    • Ogni scontrino incassato ad Apicbase: prima i più vecchi, al massimo 100 per volta, entro un quarto d'ora dall'incasso (e ogni 5 minuti). Lo sconto viene ripartito sulle righe; importi liberi, supplemento monouso e cauzione figurano come prodotto a sé in Apicbase; prodotti pesati come 1 pezzo con l'importo totale. Se non riesce, la cassa si ferma (Apicbase vuole gli scontrini in ordine) e riprova più tardi: l'incasso non ne risente. All'attivazione scegli da quale giorno (predefinito da adesso);
    • Recupera il costo per porzione (ogni 6 ore): per ogni ricetta collegata il food cost (ingredienti e scarti), con costi del personale, il prezzo di vendita e il margine secondo Apicbase. Calcolato con il fornitore più economico, l'ultimo prezzo ordinato o il valore medio di magazzino;
    • Riprendi il prezzo di vendita da Apicbase (disattivato per impostazione predefinita): impostare il prezzo di vendita dei prodotti collegati nella cassa (annotato nel registro).
  4. In fondo: Costo per prodotto con costo, costo con personale, prezzo in cassa, costo % e margine. Pulsanti Invia catalogo ora, Invia scontrini ora e Recupera costi ora.

Codice: apps/pos-server/src/lib/apicbase.ts, routes/apicbase.ts; schermata Apicbase.tsx. Registro: Apicbase. Requisito: il modulo API di Apicbase. Per l'app di Pin Voordeel per tutti i clienti: partnership e certificazione con Apicbase (vedi il backlog). Documentazione: https://developers.apicbase.com/docs/generic-pos-api-guide

Software alberghiero: addebito in camera

Per un ristorante o un bar di un hotel: addebitare il conto nella camera di un ospite. Disattivato di default: Impostazioni → Hotel (permesso Configurare attività, pagamenti e stampanti).

Sirvoy invia qualcosa solo quando una prenotazione cambia: le prenotazioni precedenti al collegamento la cassa le conosce solo dopo una modifica in Sirvoy. I messaggi possono arrivare in ordine sparso; un messaggio più vecchio (generatedAt) di ciò che la cassa ha già viene ignorato. In hotel = non annullata e senza check-out, con check-in fatto o arrivo oggi o prima, e partenza oggi o dopo. Verifica connessione indica quante prenotazioni sono arrivate.

Tutti i software alberghieri sono in vendita nei Paesi Bassi e/o in Belgio. Verifica connessione controlla i dati. Codice per collegamento: apps/pos-server/src/lib/pms/<naam>.ts.

Codice: apps/pos-server/src/lib/hotel.ts, routes/hotel.ts, i collegamenti in lib/pms/, catalogo packages/shared/src/hotelcatalogus.ts; schermata Hotel.tsx. Registro: Hotel. I segreti (token) sono solo nel database, mai sullo schermo.

Gestione vini con Vinify

Impostazioni → Gestione vini (disattivato di default; disattivandolo si conserva tutto). Vinify gestisce la cantina, la carta dei vini e il magazzino ed è la fonte principale dei vini. Secondo i requisiti POS di Vinify, la cassa offre un'API con cui Vinify può:

Autenticarsi, con tutti e tre i metodi previsti da Vinify (l'amministratore attiva quali):

  1. ID API e chiave API (X-Api-Id e X-Api-Key, oppure Authorization: Bearer <id>:<sleutel>);
  2. Chiave API e secret API con una firma: X-Api-Key, X-Timestamp e X-Signature = hex HMAC-SHA256(secret, <timestamp>\n<METHODE>\n<pad met query>\n<sha256 van de body>), vecchia al massimo 5 minuti.

La chiave e il secret li crea la cassa (mostrati una volta); le schermate mostrano solo se sono compilati. Raggiungibile tramite il portale su https://<portaal>/vinify/<kassa-id>/... (nessuna porta aperta nel locale; l'indirizzo è in Impostazioni → Gestione vini). Quali prodotti sono vino: ciò che crea Vinify, più i gruppi che spunti. Se Vinify fornisce un indirizzo a cui inviare le vendite, la cassa le invia anche da sé (push, con un token): dopo ogni scontrino incassato e ogni 5 minuti ciò che non è ancora riuscito. Vinify attiva l'integrazione con HorecaPOS (hello@vinify.no). Tutto nel registro. Da non confondere con Vinify.nl, un'enoteca online: si trova tra i fornitori (Ordinare dai fornitori).

Inserimento rapido dell'indirizzo con CAP e numero civico

Si attiva in Impostazioni → Attività → Inserimento rapido dell'indirizzo (disattivato di default; solo per un'attività nei Paesi Bassi). Inserisci CAP e numero civico (anche con lettera o aggiunta, es. 12A o 12-1) e tocca Cerca indirizzo: via, numero civico, CAP e città vengono compilati. Se a quel numero ci sono più indirizzi (12, 12A, 12B), scegli quello giusto. Dopo puoi ancora modificare tutto tu.

Avviso quando c'è una nuova versione

Si attiva in Impostazioni → Attività → Avviso aggiornamenti (disattivato di default).

Piattaforme di prenotazione

Le prenotazioni di TheFork, Formitable, Zenchef, Resengo (solo Belgio), OpenTable (solo Paesi Bassi), PlanPanther, RestoManager e Aqqo (solo Paesi Bassi) arrivano automaticamente nella cassa e sulla piantina. Si attiva in Impostazioni → Piattaforme di prenotazione (disattivato di default). Solo se le Prenotazioni sono attive.

Programmi fedeltà e recensioni

Due interruttori separati in Impostazioni → Fedeltà e recensioni (entrambi disattivati di default, e allora non se ne vede nulla da nessuna parte). Se li disattivi, le impostazioni e tutto ciò che è già avvenuto restano salvati.

Programma fedeltà di un'altra piattaforma: il cliente accumula punti con Joyn (Belgio) e/o Piggy (Leat; Paesi Bassi e Belgio). È indipendente dalla carta fedeltà della cassa, che può restare attiva insieme.

Chiedi recensioni: dopo la visita, una sola e-mail con un pulsante per Google e/o Trustpilot.

Collegamento con Mailchimp e Klaviyo

I tuoi clienti della carta fedeltà nel tuo programma di e-mail: in Impostazioni → Attività → Mailchimp e Klaviyo (sotto il marketing via SMS ed e-mail). Non c'è un interruttore: senza un collegamento con una lista scelta non succede nulla.

Codice: lib/mailinglijst.ts, routes/mailinglijst.ts e MailingKoppelingen.tsx.

BI ed esportazione dati

I dati di vendita verso Power BI, Looker Studio, Excel, Google Sheets, Tableau, Qlik Sense, Metabase, un servizio BI (ad esempio YourBI, BI4Horeca o Moore DRV) o un tuo data warehouse. Si attiva in Impostazioni → BI ed esportazione dati (disattivato di default). Sola lettura: tramite un collegamento non si può modificare nulla nella cassa. Nessun dato degli ospiti.

Paghe e pianificazione

Con la timbratura entrata/uscita attiva (Impostazioni → Attività) trovi in fondo a Impostazioni → Orari di lavoro Paghe e pianificazione (permesso Gestire le impostazioni), in due blocchi separati. Se la timbratura è disattivata, non ci sono ore: allora c'è solo il blocco Pianificazione del personale (i ricavi, live o come file dei ricavi) in fondo a Impostazioni → Contabilità, sotto l'intestazione Ricavi alla tua pianificazione:

SoftwareNLBELiveFileNota
Software paghe e centri elaborazione paghe
ADP✓✓su richiestaElenco ore per dipendente e giorno (CSV)Collegamento tramite ADP (su richiesta); fino ad allora l'elenco ore per dipendente e giorno.
AFAS Payroll✓–su richiestaElenco ore per dipendente e giorno (CSV)Paghe in AFAS Profit (stesso ambiente della contabilità in AFAS); collegamento su richiesta, fino ad allora l'elenco ore.
BCS HR✓–su richiestaElenco ore per dipendente e giorno (CSV)Collegamento tramite BCS (su richiesta); fino ad allora l'elenco ore.
Buddee✓–su richiestaElenco ore per dipendente e giorno (CSV)Software HR e paghe; collegamento su richiesta, fino ad allora l'elenco ore per dipendente e giorno.
Employes✓–su richiestaElenco ore per dipendente e giorno (CSV)Employes ha un'API per le ore lavorate (token del cliente); il collegamento seguirà dopo un accordo con Employes. Fino ad allora l'elenco ore.
Exact Online Loon✓–su richiestaElenco ore per dipendente e giorno (CSV)Paghe in Exact Online (stesso ambiente della contabilità in Exact); collegamento su richiesta, fino ad allora l'elenco ore.
Humanwave✓–su richiestaElenco ore per dipendente e giorno (CSV)Collegamento tramite Humanwave (su richiesta); fino ad allora l'elenco ore.
Loket.nl✓–su richiestaLoket.nl Variabele gegevens (CSV), Elenco ore per dipendente e giorno (CSV)File per Werkgever → Collectieve mutaties → Importeren → Variabele gegevens (ore per dipendente nel periodo). Live tramite l'API di Loket dopo la registrazione presso Loket.
Nmbrs✓–su richiestaElenco ore per dipendente e giorno (CSV)Elenco ore per dipendente e giorno, da riprendere in Nmbrs. Live tramite l'API di Nmbrs dopo la registrazione di un'app presso Nmbrs.
Salar (Van Winckel)✓––Elenco ore per dipendente e giorno (CSV)Elenco ore per dipendente e giorno per lo studio di elaborazione paghe; il formato di importazione di Salar non è pubblico.
Segretariati sociali
Acerta–✓su richiestaElenco ore per dipendente e giorno (CSV)Segretariato sociale: il tracciato del file delle prestazioni lo ricevi da Acerta; fino ad allora l'elenco ore.
Group S–✓su richiestaElenco ore per dipendente e giorno (CSV)Segretariato sociale: il tracciato del file delle prestazioni lo ricevi da Group S; fino ad allora l'elenco ore.
Liantis–✓su richiestaElenco ore per dipendente e giorno (CSV)Segretariato sociale con un'API che Liantis rilascia per ogni azienda; fino ad allora l'elenco ore.
Partena Professional–✓su richiestaElenco ore per dipendente e giorno (CSV)Segretariato sociale: il tracciato del file delle prestazioni lo ricevi da Partena; fino ad allora l'elenco ore.
SD Worx✓✓–SD Worx Tijdsregistratie (TXT), Elenco ore per dipendente e giorno (CSV)Belgio: file Tijdsregistratie (posizioni fisse, per dipendente per giorno) per "Tijdsregistratie importeren". Paesi Bassi: l'elenco ore.
Securex–✓su richiestaElenco ore per dipendente e giorno (CSV)Segretariato sociale: i collegamenti passano tramite partner; fino ad allora l'elenco ore.
Pianificazione e rilevazione ore
Book'u–✓su richiestaRicavi per giorno e ora (CSV)Book'u effettua le dichiarazioni Dimona; un collegamento con la cassa è disponibile su richiesta. Fino ad allora l'elenco ricavi.
Deputy✓✓✓Ricavi per giorno e ora (CSV)Live: i ricavi per ora vanno ogni ora a Deputy (Sales). Un token permanente lo crei in Deputy nelle integrazioni API.
Dyflexis✓–✓Ricavi per giorno e ora (CSV)Live: i ricavi per ora vanno ogni ora a Dyflexis (information streams). Il token API lo ottieni tramite Dyflexis.
Eitje✓–su richiestaRicavi per giorno e ora (CSV)Eitje si collega tramite il suo programma partner; fino ad allora l'elenco ricavi per giorno e ora.
Exact Horeko✓–su richiestaRicavi per giorno e ora (CSV)Collegamento tramite Horeko (su richiesta); fino ad allora l'elenco ricavi.
Fooks✓–su richiestaRicavi per giorno e ora (CSV)Fooks realizza da sé i collegamenti con le casse; fino ad allora l'elenco ricavi per giorno e ora.
L1NDA✓–su richiestaRicavi per giorno e ora (CSV)L1NDA realizza i collegamenti con le casse insieme a partner; fino ad allora l'elenco ricavi per giorno e ora.
Mr. Einstein✓–su richiestaRicavi per giorno e ora (CSV)HR, turni e costi del personale per la ristorazione; Mr. Einstein realizza i collegamenti con le casse insieme al fornitore della cassa (richiesta tramite mreinstein.nl/contact). Fino ad allora l'elenco ricavi per giorno e ora.
Nostradamus✓✓su richiestaRicavi per giorno e ora (CSV)Nostradamus riceve i ricavi tramite la sua interfaccia cassa (token API e dominio dell'attività, su richiesta a Nostradamus); fino ad allora l'elenco ricavi per giorno e ora.
Plan-Me–✓su richiestaRicavi per giorno e ora (CSV)Plan-Me effettua le dichiarazioni Dimona; un collegamento con la cassa è disponibile su richiesta. Fino ad allora l'elenco ricavi.
Planday✓✓su richiestaRicavi per giorno e ora (CSV)Planday ha un'API aperta per i sistemi di cassa; il collegamento seguirà dopo un accordo. Fino ad allora l'elenco ricavi.
Shiftbase✓–✓Ricavi per giorno e ora (CSV)Live: i ricavi per giorno vanno ogni ora al registro giornaliero del reparto in Shiftbase. La chiave API la crei in Shiftbase in App center.
Shyfter–✓su richiestaRicavi per giorno e ora (CSV)Shyfter effettua le dichiarazioni Dimona e accetta i ricavi per giorno tramite la sua API; il collegamento seguirà dopo un accordo con Shyfter. Fino ad allora l'elenco ricavi.
Strobbo✓✓–Importazione ricavi Strobbo (Excel), Ricavi per giorno e ora (CSV)File Excel per Planning → € → Importeer omzet (ricavi per giorno per postazione).
Tamigo✓✓su richiestaRicavi per giorno e ora (CSV)Collegamento tramite Tamigo (su richiesta); fino ad allora l'elenco ricavi.
Werktijden.nl✓––Ricavi per giorno e ora (CSV), Elenco ore per dipendente e giorno (CSV)Werktijden.nl registra da sé le ore e (ancora) non accetta ricavi tramite la sua API; gli elenchi servono per il confronto.
XPS Logic✓–su richiestaRicavi per giorno e ora (CSV)XPS Logic è orientato al personale flessibile e interinale; un collegamento è disponibile su richiesta. Fino ad allora l'elenco ricavi.

Obblighi di legge in Belgio e nei Paesi Bassi

Cosa chiede la legge e cosa fa HorecaPOS al riguardo (fai confermare dal tuo commercialista cosa vale per la tua attività):

PaeseRequisitoHorecaPOS
BelgioSistema di cassa registrato (GKS 2.0) con scatola nera per i locali della ristorazione che vi sono tenuti (tra l'altro con oltre € 25.000 di fatturato annuo da pasti, IVA esclusa)collegamento con la scatola nera (FDM), i dati obbligatori sullo scontrino e i contatori nel rapporto Z (paese Belgio in Impostazioni → Attività, FDM_API_KEY e FDM_TERMINAL_ID); in alto in Impostazioni → Attività scegli se l'attività è soggetta al GKS: Sì = incassare solo con una scatola nera funzionante, No = senza, con una dichiarazione dell'amministratore (ogni anno di nuovo); finché non si sceglie nulla, non è possibile incassare. La cassa conta il fatturato dei pasti e avvisa oltre 25.000 €
BelgioFatturazione elettronica tramite Peppol: dal 1 gennaio 2026 le fatture tra imprese belghe soggette a IVA devono obbligatoriamente essere elettroniche strutturate (UBL, Peppol BIS 3); gli scontrini ai consumatori non rientrano nell'obbligoesportazione del fatturato giornaliero in UBL secondo Peppol BIS Billing 3.0 per il software di contabilità (Esporta contabilità); e fatture da uno scontrino per clienti aziendali (Impostazioni → Fatture): UBL secondo Peppol BIS Billing 3.0 più una fattura da stampare, invio via e-mail, tramite Billit sulla rete Peppol, a un indirizzo proprio oppure download (vedi Fatture per clienti aziendali)
BelgioIVA horeca dal 1 marzo 2026: pasti da asporto e bevande analcoliche 12% (al tavolo e da asporto), alcol 21%, pasti che il cliente prepara ancora da sé (fonduta, gourmet) 6%Assistente IVA (Impostazioni → Leggi e norme): il tipo per prodotto, l'aliquota corretta subito o da una data; le descrizioni delle aliquote A/B/C sono state aggiornate
Paesi BassiLegge sull'alcol: niente alcol ai minori di 18 anni, anche nella vendita online e nella consegna (verificare l'età alla consegna)Controllo età: prodotti con alcol; nel webshop il cliente conferma da sé 18+ (casella non preselezionata) con l'avviso che l'età sarà verificata alla consegna; "18+" su comanda, documento di consegna e scontrino
Paesi BassiBicchieri e vaschette monouso (SUP): dal 2024 un prezzo separato e visibile per gli imballaggi monouso di plastica per asporto e consegnaSupplemento monouso per prodotto, come riga separata sullo scontrino (IVA del prodotto) e a parte nel fatturato
Paesi BassiDeposito cauzionale su lattine e bottiglie di plasticaDeposito cauzionale per prodotto (€ 0,15 / € 0,25), riga separata senza IVA per asporto e consegna, a parte nel fatturato
Paesi BassiPagamento in contanti: dal 1 gennaio 2026 niente € 3.000 o più in contanti per beniAvviso per asporto e consegna (anche alla cassa automatica); la conferma è possibile e viene registrata nel log
Paesi Bassi e BelgioModifica IVA: un'aliquota o un prodotto riceve una percentuale IVA diversa da una certa dataPianifica modifica IVA: la cassa la esegue il giorno stesso (in Belgio per prodotto, le lettere A/B/C/D sono fisse)
Paesi BassiAlloggio (pernottamenti) 21% dal 1 gennaio 2026aliquota IVA impostabile per prodotto
UEDirettiva Omnibus: un prezzo "prima" barrato può essere solo il prezzo più basso degli ultimi 30 giorniil webshop barra solo rispetto al prezzo più basso di 30 giorni (la cassa conserva lo storico dei prezzi; le happy hour che si ripetono ogni settimana vengono conteggiate)
UEEuropean Accessibility Act (dal 28 giugno 2025): webshop accessibili (WCAG 2.1 AA)il webshop funziona con tastiera e screen reader (link "Vai al contenuto", focus visibile, etichette) e ha una dichiarazione di accessibilità (link in fondo)
Paesi BassiXML Auditfile Financieel (XAF): lo standard dell'Amministrazione fiscale olandese (Belastingdienst) per trasferire (una parte di) una contabilità; XAF 4.0 è obbligatorio a partire dal 2027esportazione come XAF 4.0 (Esportazione contabilità)
Paesi BassiSistema di cassa affidabile: conservare i dati di cassa (tutti gli scontrini, le correzioni e gli eventi) e poterli fornire in formato digitale in caso di controllo; a tal fine la Belastingdienst raccomanda l'XML Auditfile Afrekensystemen (XAA)esportazione come XAA 3.2 (Rapporto → Fatturato per periodo → File di audit cassa), se desiderato firmata con il certificato del fornitore
BelgioRegistrazione delle presenze con un sistema di cassa registrato: registrare nel sistema di cassa l'inizio e la fine dell'orario di lavoro dei lavoratoriLa timbratura entrata/uscita (Impostazioni → Attività; Obbligatorio = prima timbrare l'entrata) viene registrata nella scatola nera
BelgioDimona: dichiarare ogni occupazione (anche flexi-job e studenti) all'RSZ prima dell'iniziolo fa il tuo segretariato sociale o strumento di pianificazione (es. Shyfter, Book'u, Plan-Me); HorecaPOS fornisce le ore lavorate e i ricavi (Impostazioni → Orari di lavoro → Paghe e pianificazione)
Paesi BassiRegistrazione dei tempi di lavoro e di riposo (Arbeidstijdenwet, legge olandese sull'orario di lavoro)Timbratura entrata/uscita con le ore lavorate per dipendente, modificabili dall'amministratore (con registro), e l'elenco ore per il software paghe
Paesi Bassi e BelgioHACCP / sicurezza alimentare: documentare temperature (refrigerazione, congelatore, mantenimento in caldo, cottura, abbattimento, ricevimento) e pulizie; NL Hygiënecode voor de Horeca (NVWA), BE autocontrollo FAVV (guida G-023)Registro HACCP in cassa (Impostazioni → Leggi e norme, pulsante HACCP in alto): punti di misura con limiti, attività di pulizia e controllo, azione correttiva obbligatoria in caso di scostamento, non modificabile, riepilogo con registrazioni mancate come CSV o stampa (vedi Registro HACCP)
Paesi Bassi e BelgioObbligo di conservazione (NL 7 anni, BE 10 anni)scontrini, rapporti Z e il registro eventi si trovano nel database e nei backup; il registro eventi non può essere modificato né cancellato dalla cassa

Leggi e norme

Impostazioni → Leggi e norme (amministratore; l'assistente IVA anche con il permesso Gestire prodotti). Tutto è disattivato di default; senza queste impostazioni la cassa funziona come sempre.

Le fatture (obbligatorie tra aziende in Belgio) sono descritte in Fatture per clienti aziendali. Ancora da fare: GKS 2.0, informarsi sullo stato della certificazione (vedi docs/backlog-concurrenten.md).

Fatture per clienti aziendali

Impostazioni → Fatture (amministratore; disattivato di default): attiva Fatture per clienti aziendali (UBL / Peppol). Quando è attivo, sotto trovi Pagamento a credito, i Dati sulla fattura, i Servizi Peppol, il Collegamento bancario (con il pagamento a credito) e l'elenco di tutte le fatture. In Belgio la fatturazione elettronica tra aziende è obbligatoria dal 1-1-2026.

Chiosco self-service

Gli ospiti ordinano da soli su una colonnina o un tablet, come in un fast food, e pagano alla cassa o con carta al chiosco. Le schermate d'ordine fanno parte della cassa stessa, quindi menu, prezzi, opzioni, menu combinati, happy hour, fasce orarie, foto, allergeni, lingue e scontrino arrivano dalla cassa e non vanno impostati altrove. Sul chiosco gira l'app PinPortal Kiosk 2 (Android, anche Sunmi, e Windows, Linux e macOS), che mostra la pagina e stampa lo scontrino. Disattivato per impostazione predefinita.

Attivare e configurare (amministratore): Impostazioni → Attività → Schermi e utilizzo → Chiosco self-service.

Lo scanner stesso si imposta sul chiosco: nell'app PinPortal Kiosk 2 in gestione → Lettore di codici a barre (come tastiera, lo scanner integrato o una porta COM), con un test scanner. Uno scanner che funziona come tastiera funziona anche senza l'app.

Aggiungere e collegare un chiosco

  1. In Chioschi inserisci un nome (ad es. Chiosco ingresso) e scegli Aggiungi chiosco. Ricevi un codice di collegamento di 6 cifre (valido 30 minuti).
  2. Scegli per il chiosco come paga l'ospite: alla cassa per impostazione predefinita. Se è un chiosco con terminale POS, scegli con carta o l'ospite sceglie, e scegli il terminale POS di questo chiosco (da Impostazioni → Pagamenti).
  3. Apri la pagina del chiosco sul chiosco:
    • nel locale: nell'app, in gestione → Vast adres, l'indirizzo indicato nell'impostazione, ad es. http://192.168.1.20:3000/kiosk;
    • oppure tramite il portale di gestione (https, anche se il chiosco non è nella stessa rete): collega l'indirizzo del chiosco indicato nell'impostazione al codice chiosco dell'app, come con il vecchio chiosco.
  4. Inserisci il codice di collegamento sul chiosco. Fatto: il chiosco ricorda la sua chiave. Ricollega dà un nuovo codice; Rimuovi lo scollega.

Per ogni chiosco si vede se è online.

Come ordina l'ospite

  1. Schermata iniziale con il testo di benvenuto; l'ospite sceglie la lingua (tutte le lingue della cassa) e tocca per ordinare.
  2. Mangio qui o da asporto.
  3. Il menu per gruppo di prodotti, con foto, prezzo (con happy hour), allergeni e cosa è esaurito. I prodotti con scelte o un menu aprono la finestra di scelta.
  4. Il carrello: cambiare le quantità ed eventualmente Qualcos'altro?.
  5. Ordina (pagamento alla cassa): l'ospite vede il suo numero di ritiro in grande sullo schermo con l'importo, riceve il foglietto e paga alla cassa. In cassa l'ordine è aperto come Chiosco Ingresso · 42 (il numero che dice l'ospite); si incassa come sempre. Poi compare come pagato sullo schermo di chiamata e va in cucina se doveva aspettare il pagamento.
  6. Paga con carta: la cassa invia l'importo al terminale POS di questo chiosco (lo stesso collegamento di pagamento della cassa). Se non riesce, l'ospite può riprovare o annullare (oppure, se può scegliere, pagare alla cassa). Solo quando il pagamento è riuscito, l'ordine va in cucina e viene incassato. L'ospite vede il suo numero di ritiro in grande sullo schermo e riceve lo scontrino.
  7. Dopo qualche secondo il chiosco torna all'inizio.

In caso di guasto: avviso e modalità di emergenza (nell'app del chiosco, gestione → Bij storing; disattivato per impostazione predefinita). Se il chiosco non raggiunge la cassa, mostra Even gesloten. Due extra:

In cassa un ordine del chiosco è un ordine normale (da asporto o al tavolo, con il nome Chiosco Ingresso) a nome del dipendente Kiosk. La cassa lo crea da sé; nessuno può accedere con esso. Non disattivarlo, altrimenti il chiosco non può ordinare. Gli ordini del chiosco compaiono nei report, in Scontrini e sullo schermo di chiamata. Un ordine non completato al chiosco (non ordinato o non pagato con carta) scade da solo dopo 30 minuti.

Pagamento con carta in modalità test (Impostazioni → Pagamenti)? Allora il chiosco non incassa davvero; utile per provare. Senza internet non si può pagare con carta; il chiosco dice allora che si può ordinare al banco.

Guasto: se la cassa non è raggiungibile, l'app del chiosco mostra "Chiuso per un momento" e riprende da sola. Se il chiosco passa dal portale di gestione e cade internet, l'app può ripiegare sulla cassa nella rete locale (nell'app: gestione → Estensioni → In caso di guasto, usa la rete locale); l'indirizzo lo passa il chiosco stesso.

Disattivare: il chiosco indica che è chiuso per un momento. I chioschi e le impostazioni restano salvati. Nel registro restano attivazione/disattivazione, le impostazioni, i chioschi aggiunti e rimossi, i collegamenti e gli ordini annullati.

Menu digitale

Il menu con i prezzi su una TV (o un altro monitor con un browser), direttamente dalla cassa. Predefinito disattivato; si attiva da Impostazioni → Attività → Schermi e utilizzo → Menu digitale. Poi apri sulla TV http://<kassaserver>:3000/menubord (oppure usa il pulsante Su uno schermo separato / Su un tablet o telefono con il codice QR). Nessun accesso e nessun abbinamento.

Personale e PIN

Impostazioni → Personale (solo amministratore): aggiungere dipendenti, modificare nome, ruolo e PIN, e disattivarli.

Accesso con badge (facoltativo)

Di default disattivato. Per attivarlo: Impostazioni → Personale, casella Accesso con badge (NFC, RFID o iButton). Serve: un lettore di badge USB che funzioni come tastiera (per badge NFC o RFID, portachiavi, braccialetti o chiavi iButton). Un lettore del genere "digita" il numero del badge e preme Invio; non servono driver né collegamenti.

Permessi per ruolo

Impostazioni → Permessi (solo amministratore): spunta per ogni ruolo cosa possono fare cameriere e manager. Di default tutto è esattamente come sopra (come la cassa ha sempre fatto); una casella diversa dallo standard è colorata.

PermessoCameriereManager
Cancellare righe dopo l'invio dell'ordine (storno)sìsì
Applicare / rimuovere scontinosì
Segnare un prodotto come "esaurito"sìsì
Stampare la copia di uno scontrinosìsì
Reso (nota di credito)nosì
Incassare a credito e ricevere pagamenti a credito (solo con il pagamento a credito attivo)nosì
Parziale (rapporto X)sìsì
Chiudi giornata (rapporto Z)nosì
Fatturato per periodonosì
Gestire il cassettonosì
Gestire buoni regalo (solo con buoni regalo con saldo)nosì
Leggere e rispondere alle recensioni (solo con la gestione recensioni attiva)nosì
Gestire carta fedeltà (solo con la carta fedeltà attiva)nosì
Consultare il registronosì
Vedere le immagini delle telecamere (solo con le immagini delle telecamere attive)nosì
Gestire magazzino (solo con magazzino attivo)nosì
Gestire i prodottinono
Gestire piantine salanono
Configurare attività, pagamenti e stampantinono
Visualizzare e modificare orari di lavoronono

Dati del locale

Impostazioni - Attività

Impostazioni → Attività (solo amministratore): nome, indirizzo, CAP, città, telefono e partita IVA della sede. Compaiono in cima a ogni scontrino e pro forma. Qui si imposta anche il testo in fondo allo scontrino (sono ammesse più righe; vuoto = nessun testo; default "Bedankt en tot ziens!"), e sotto la lingua dello scontrino (default olandese; vedi Lingue). Un'anteprima dello scontrino si aggiorna in tempo reale. Dopo il salvataggio lo scontrino successivo usa subito i nuovi dati. Il paese e i dati fiscali (GKS) volutamente non si possono modificare qui. In Belgio la partita IVA è obbligatoria. Con la casella Arrotonda i pagamenti in contanti a 5 centesimi (disattivata di default) il totale in contanti viene arrotondato (€ 6,62 → € 6,60, € 6,63 → € 6,65); la differenza compare come "Afronding" sullo scontrino. La carta resta sempre al centesimo.

Gestire i prodotti

Impostazioni - Prodotti

Accedi come amministratore e scegli Impostazioni → Prodotti.

Foto dei prodotti

Ogni prodotto può avere una foto.

Lettore di codici a barre

Con un lettore di codici a barre alla cassa scansioni prodotti, codici sconto, carte fedeltà e buoni regalo. Si attiva in Impostazioni → Scanner (scheda accanto alle stampanti e alla bilancia; di default disattivato). Spunta cosa fa una scansione nella schermata ordini:

La cassa cerca prima tra i prodotti, poi tra le carte fedeltà, i buoni regalo e i codici sconto. La scansione funziona nella schermata ordini, quando non sei in un campo di inserimento. In un campo di inserimento il codice finisce semplicemente in quel campo.

Test scanner: in Impostazioni → Scanner vedi a ogni scansione il codice e cosa ne fa la cassa, anche se lo scanner è ancora disattivato. Se non funziona:

Sul chiosco lo scanner si imposta a parte (Impostazioni → Attività → Chiosco); vedi Chiosco self-service.

Stampa etichette

Etichette articolo con nome, prezzo e codice a barre, su una stampante per etichette (Brother, Dymo, Zebra ...) installata sul computer o sul tablet. Si attiva in Impostazioni → Attività → Stampa etichette (predefinito disattivato). Lì scegli anche il formato dell'etichetta (38 × 25, 57 × 32, 62 × 29 o 100 × 50 mm) e se stampare il prezzo e il codice a barre. Stampa di prova stampa un'etichetta di prova.

Configurare la bilancia (A&D, Aclas, Adam Equipment, Avery Berkel, Avery Weigh-Tronix, Balanzas Marques, Baxtran, Bizerba, Brecknell, CAS, Datalogic, Dibal, DIGI, Dini Argeo, Excell Precision, Gram, Ishida, Kern & Sohn, Mettler Toledo, Minebea Intec, Ohaus, Precia Molen, Precisa, Rice Lake, Rongta, Sartorius, Star Micronics, T-Scale, UWE, Wedderburn, Wintec, Zebra)

Scheda dedicata Impostazioni → Bilancia (permesso Configurare attività, pagamenti e stampanti, di default solo l'amministratore; la scheda c'è sempre, anche se la bilancia è ancora disattivata). Di default disattivato: in quel caso la cassa funziona esattamente come prima. Non vedi la scheda?

Ricerca automatica. Se non è ancora configurato nulla, all'apertura di questa sezione la cassa cerca da sola (il pulsante Cerca ripete la ricerca):

Trovata = inserita nel modulo con il pulsante Attiva e usa: un tocco e funziona. (La ricerca invia una W a ogni porta COM libera; una porta occupata, ad es. dal terminale di pagamento, viene saltata.)

Tutte le bilance Aclas. Per ogni bilancia scegli il modello; la cassa sa così come può essere collegata. Ci sono due tipi:

Una lista, due caselle. Tutte le bilance sono in un'unica lista. Per ogni bilancia spunti cosa fa: Pesare alla cassa (la cassa chiede il peso durante l'ordine) e/o Scansiona etichette (la bilancia stampa un'etichetta con codice a barre che la cassa scansiona, e riceve i PLU dalla cassa). Una bilancia PC o IA come la TS6X fa entrambe le cose; un'etichettatrice LS solo etichette. Le etichette possono venire da una sola bilancia per locale.

ModelloTipoCollegamentiNella cassa
OS6XBilancia POSRS232, USB, Bluetoothcollegata, più contemporaneamente
OS2XBilancia POSRS232, USBcollegata, più contemporaneamente
CS6X, CS3XBilancia registratore di cassaRS232, USB, Ethernet, wificollegata, più contemporaneamente
TS6X, TS3X, TS5EX, TS5NX, TS5GXBilancia PC (Windows, Android, Linux)RS232, USB, Ethernet, wifisu questo dispositivo (1x), anche come bilancia etichettatrice
iS6X, iS2X, iR6X, Ti6X, iL8XBilancia IA con riconoscimento prodotti (Windows, Android, Linux)RS232, USB, Ethernet, wifisu questo dispositivo (1x), anche come bilancia etichettatrice
iS5X, OiT2XBilancia IA (solo Linux)RS232, USB, Ethernetcollegata o come etichettatrice
LS2S, LS2RX, LS2CX, LS2NX, LS5SX, LS5RX, LS5CX, LS5NX, LS6CX, LS6RX, LS6NXBilancia etichettatriceRS232, Ethernet, wifiscansione etichette e PLU
PS1CX, PS1DX, PS6CX, PS6DXBilancia calcolaprezziRS232collegata, più contemporaneamente
PS1BXBilancia calcolaprezzi senza collegamentonessunopeso a mano
LH15XBilancia a sospensione con stampante di etichetteRS232, Ethernet, wificollegata o come etichettatrice

A&D, Adam Equipment, Avery Berkel, Avery Weigh-Tronix, Balanzas Marques, Baxtran, Bizerba, Brecknell, CAS, Datalogic, Dibal, DIGI, Dini Argeo, Excell Precision, Gram, Ishida, Kern & Sohn, Mettler Toledo, Minebea Intec, Ohaus, Precia Molen, Precisa, Rice Lake, Rongta, Sartorius, Star Micronics, T-Scale, UWE, Wedderburn, Wintec e Zebra. Sono inclusi i modelli più diffusi di queste marche per cui è stabilito come la cassa comunica con loro (da testare = il protocollo non è riportato letteralmente in una fonte; la cassa sceglie l'opzione più ovvia). Tutti collegati (più di uno insieme) o come bilancia etichettatrice di cui la cassa scansiona l'etichetta:

MarcaModelloTipoCollegamentoProtocollo (di fabbrica)Nella cassa
A&DEK-i (tra cui EK-610i), HV-WPBilancia registratore di cassa (solo peso)RS232, EK-i anche USBContinuo (modalità stream), 2400 baud, 7E1collegata, più contemporaneamente
Adam EquipmentSwiftBilancia calcolaprezziRS232, USB (opzionale)Continuo (continuo verso PC), 9600 8N1 (da testare)collegata, più contemporaneamente
Avery BerkelFX110, FX120, FX131 (da incasso con scanner)Bilancia registratore di cassaRS232, FX131 anche USBMettler Toledo 82/7 = Toledo 8217 (la cassa invia W), 9600 baud, 7E1collegata, più contemporaneamente
Avery BerkelFX125Bilancia calcolaprezziRS232Checkout-Dialog 06 (9600, 7O1)collegata, più contemporaneamente
Avery BerkelXs, XTs, XTiBilancia etichettatriceEthernet, Wi-Fi, USBPLU propri sulla bilanciascansiona etichette
Avery Weigh-Tronix7820, 7829, ZP900Bilancia registratore di cassaRS232, 7820 anche USB, ZP900 anche USB ed EthernetNCI (la cassa invia W), 9600 baud, 7E1collegata, più contemporaneamente
Balanzas MarquesBM1000P TOPBilancia registratore di cassa (solo peso)RS232METTLER (la cassa invia W, Toledo), 9600 baud, 7E1collegata, più contemporaneamente
Balanzas MarquesBM5 Junior Tower Label, BM500 ETQBilancia etichettatriceEthernet, USB, RS232, BM500 ETQ anche wifiPLU propri sulla bilanciascansiona etichette
BaxtranTW, VW, XTA, XTA-PBilancia calcolaprezziRS232Toledo (la cassa invia W), 9600 baud, 7E1collegata, più contemporaneamente
BizerbaCS 300 (anche da incasso)Bilancia registratore di cassaRS232Checkout-Dialog 06 (9600, 7O1)collegata, più contemporaneamente
BizerbaK-Class Flex, KH IIBilancia etichettatriceEthernetPLU propri sulla bilanciascansiona etichette
Brecknell6702U, 6710U, 6720UBilancia registratore di cassaRS232, USB (porta COM virtuale)NCI (la cassa invia W), 9600 baud, 7E1collegata, più contemporaneamente
CASPD-II, PDN, PDI, PDS-BBilancia registratore di cassaRS232, PDN anche USB e Bluetooth, PDI anche USBECR type 2 = Toledo (la cassa invia W), 9600 baud, 7E1collegata, più contemporaneamente
CASCL3000, CL5500, CL7200Bilancia etichettatriceEthernet, USB, RS232, CL5500 e CL7200 anche wifiPLU propri sulla bilanciascansiona etichette
DatalogicMagellan 9300i, 9400i, 9800i (scanner con bilancia)Bilancia registratore di cassaRS232 (porta bilancia separata), USBMettler Toledo 8217 (la cassa invia W), 9600 baud, 7E1collegata, più contemporaneamente
DibalKS-400, D-POS 400Bilancia registratore di cassaRS232, D-POS 400 anche USBCheckout-Dialog 06 (9600, 7O1)collegata, più contemporaneamente
DibalG-325, PI-100Bilancia calcolaprezziRS232Checkout-Dialog 06 (9600, 7O1)collegata, più contemporaneamente
DibalM-500 (Mistral), D-900, CS-2200Bilancia etichettatriceEthernet, Wi-Fi, USBPLU propri sulla bilanciascansiona etichette
DIGIDS-781Bilancia calcolaprezziRS232DIGI Type B (la cassa invia ENQ), 9600 8N1collegata, più contemporaneamente
DIGISM-120, SM-6000Bilancia etichettatriceEthernet, Wi-FiPLU propri sulla bilanciascansiona etichette
Dini ArgeoDFW, DGT, 3590EBilancia registratore di cassa (solo peso)RS232, USB, Ethernet, DFW e 3590E anche wifiContinuo (ST,GS, 0.512,kg), 9600 8N1collegata, più contemporaneamente
Excell PrecisionTPE, AM4, FD4-P, FDP4-P, GE4, GEP4Bilancia calcolaprezziRS232Continuo (ST,GS,+0.876kg), 9600 8N1 (tranne TPE, da testare)collegata, più contemporaneamente
GramXFOC RS, XFOC+ RS, ZFOC RSBilancia calcolaprezziRS232, USB (cavo di Gram)Gram (la cassa invia ENQ, poi DC1), 9600 8N1 (XFOC da testare)collegata, più contemporaneamente
IshidaUni-3, Uni-5, Uni-7, Uni-9Bilancia etichettatriceEthernet, Wi-Fi, USBPLU propri sulla bilanciascansiona etichette
Kern & SohnRPB, RFCBilancia calcolaprezziRS232, USBCheckout-Dialog 06 (Prot = DLG-06, 9600, 7O1)collegata, più contemporaneamente
Kern & SohnRFE (prezzo), IFB, EOCBilancia calcolaprezzi / registratore di cassaRS232Continuo, 9600 8N1collegata, più contemporaneamente
Mettler ToledoAriva-SBilancia registratore di cassaRS232, USB (porta COM virtuale)Toledo 8217 (la cassa invia W), 9600 baud, 7E1collegata, più contemporaneamente
Mettler ToledoVivaBilancia registratore di cassaRS232Toledo 8217, 9600 baud, 7E1collegata, più contemporaneamente
Mettler ToledobPlus, UC EvoBilancia etichettatriceEthernet, Wi-FiPLU propri sulla bilanciascansiona etichette
Minebea IntecSignum, Combics, Midrics, PuroBilancia registratore di cassa (solo peso)RS232, USB, Signum e Combics anche EthernetContinuo (SBI, stampa automatica), 9600 8N1collegata, più contemporaneamente
OhausAviator 7000Bilancia calcolaprezziRS232 o USBCheckout-Dialog 06 (9600, 7O1)collegata, più contemporaneamente
OhausValor 7000, Ranger 3000, Ranger 4000, Ranger 7000, Defender 3000Bilancia registratore di cassa (solo peso)RS232, USB, EthernetContinuo (Auto Print Continuous), 9600 8N1collegata, più contemporaneamente
Precia MolenDP400Bilancia registratore di cassaRS232, USBCheckout-Dialog 06 (9600, 7O1)collegata, più contemporaneamente
Precia MolenDPOS CR, C 210 B, C 210 CBilancia calcolaprezziRS232Checkout-Dialog 06 (9600, 7O1; C 210 da testare)collegata, più contemporaneamente
Precia MolenCorail 500Bilancia etichettatriceEthernet, Wi-FiPLU propri sulla bilanciascansiona etichette
PrecisaXB, XT, LS, LX (bilance di precisione)Bilancia registratore di cassa (solo peso)RS232, LS e LX anche USBContinuo (modalità di stampa CONTINUOUS), 9600 8N1collegata, più contemporaneamente
Rice LakeBenchPro BP-S, BenchPro BP-RBilancia registratore di cassaRS232BP-S Toledo 8213, BP-R NCI (entrambe: la cassa invia W), 9600 baud, 7E1 (da testare)collegata, più contemporaneamente
RongtaRLS1000, RLS1100Bilancia etichettatriceEthernet, RS232, wifiPLU propri sulla bilanciascansiona etichette
SartoriusEntris, QuintixBilancia registratore di cassa (solo peso)RS232, USBContinuo (SBI, stampa automatica), 9600 8N1collegata, più contemporaneamente
Star MicronicsmG-T12, mG-T30, mG-T60, mG-S8200Bilancia registratore di cassa (solo peso)RS232, USB (porta COM virtuale)Continuo, 9600 8N1 (da testare)collegata, più contemporaneamente
T-ScalePA10, PA15, PEA10Bilancia etichettatriceEthernetPLU propri sulla bilanciascansiona etichette
UWEASEPBilancia calcolaprezziRS232Continuo, 9600 8N1 (da testare)collegata, più contemporaneamente
WedderburnTSDS983Bilancia registratore di cassaRS232DIGI Type B (la cassa invia ENQ), 9600 8N1 (da testare)collegata, più contemporaneamente
WedderburnTSDS781T, TSDS782TBilancia calcolaprezziRS232DIGI Type B, 9600 8N1 (da testare)collegata, più contemporaneamente
WedderburnTSSM120Bilancia etichettatriceEthernet, RS232PLU propri sulla bilanciascansiona etichette
WintecScalePOS ACS-S60E (cassa con bilancia integrata)Bilancia registratore di cassaCOM6 interna (Windows) o COM4 (Android)Continuo, 9600 8N1 (da testare)collegata
ZebraMP7000, MP72 (scanner con bilancia)Bilancia registratore di cassaRS232 (porta AUX)SASI = Toledo (la cassa invia W), 9600 baud, 7E1 (da testare)collegata, più contemporaneamente

Lo stesso elenco è nella cassa in Impostazioni → Bilancia → Tutte le bilance (ACLAS_MODELLEN in packages/shared/src/weegschaal.ts, con la marca per modello).

Compilare il meno possibile: scegliendo un modello, la cassa prepara il resto come lo imposta la marca in fabbrica: collegamento Porta COM / USB sulla prima porta libera, 9600 baud (A&D: 2400) e il protocollo della marca (Toledo: Aclas con 8N1, e con 7E1 Avery Berkel FX, Avery Weigh-Tronix, Balanzas Marques, Baxtran, Brecknell, CAS, Datalogic, Mettler Toledo, Rice Lake e Zebra; Dialog 06: Avery Berkel FX125, Bizerba, Dibal, Kern & Sohn RPB/RFC, Ohaus Aviator e Precia Molen; DIGI Type B: DIGI e Wedderburn; Gram: Gram; Continuo: A&D, Adam Equipment, Dini Argeo, Excell Precision, le altre Kern & Sohn, Minebea Intec, le altre Ohaus, Precisa, Sartorius, Star Micronics, UWE e Wintec), e un nome (ad es. OS6X, OS6X 2). Una bilancia PC o IA diventa Su questo dispositivo (ad es. TS6X (ingebouwd); su Linux sulla porta interna /dev/ttyS0). Se qualcosa non va, Cerca trova porta, velocità e protocollo giusti.

Su questo dispositivo (Aclas Scale Module): la bilancia mostra il peso omologato; la cassa invia il prezzo al chilo e la tara (come pretara) e riprende l'importo calcolato dalla bilancia, come con Dialog 06.

Il software Aclas è incluso nella cassa: lo Scale Module per Windows (aclas-module), AclasScaleDriver per Android (aclas-android) e l'Aclas Sync SDK per Windows e Linux (aclas-sdk). Aclas ci permette di fornirli. Gli installer per Windows e Linux li includono; niente da scaricare o installare a parte.

Bluetooth (p. es. la OS6X): associa prima la bilancia. Windows ne fa una porta COM (Impostazioni Bluetooth → Altre opzioni Bluetooth → Porte COM), Linux /dev/rfcomm0: inserisci quella porta. Nell'app Android inserisci l'indirizzo Bluetooth (00:11:22:AA:BB:CC); l'app chiede una volta l'autorizzazione per i Dispositivi nelle vicinanze e si collega via Bluetooth SPP.

Bilance IA (riconoscimento prodotti): la fotocamera riconosce il prodotto nel software Aclas sulla bilancia. La pesatura avviene tramite lo Scale Module (su questo dispositivo) o la porta RS232; le etichettatrici IA stampano dopo il riconoscimento un'etichetta con codice a barre che la cassa scansiona (come con la TS6X).

Aclas AI Recognition Plugin (bilancia IA con la cassa installata, ad es. la iS6X con Windows): il plugin di Aclas riconosce il prodotto e digita il suo codice a barre nella cassa, proprio come uno scanner (seguito da Enter); la schermata ordini aggiunge il prodotto con il peso all'ordine. Ecco come impostarlo:

Aclas OS6X (bilancia POS alla cassa, RS232/USB; le altre bilance collegate funzionano allo stesso modo):

Scansiona etichette (casella alla bilancia: Aclas TS6X, un'altra bilancia PC o IA, la serie LS o la LH15X; bilancia + stampante di etichette, una per locale):

Portale di gestione: il messaggio al portale ha la funzione Bilancia (A&D, Aclas, Adam Equipment, Avery Berkel, Avery Weigh-Tronix, Balanzas Marques, Baxtran, Bizerba, Brecknell, CAS, Datalogic, Dibal, DIGI, Dini Argeo, Excell Precision, Gram, Ishida, Kern & Sohn, Mettler Toledo, Minebea Intec, Ohaus, Precia Molen, Precisa, Rice Lake, Rongta, Sartorius, Star Micronics, T-Scale, UWE, Wedderburn, Wintec, Zebra) con acceso/spento e le bilance per modello (ad es. TS6X (op dit apparaat), 2x OS6X, PS1CX, Ariva-S, DS-781, LS6RX, 5 producten per kilo); nessun indirizzo IP, porta COM o indirizzo Bluetooth.

Metrologia legale: una bilancia usata per la vendita deve essere omologata (classe III, come la OS6X). Con Toledo/continuo la cassa calcola con il peso fornito dalla bilancia; con Dialog 06 è la bilancia omologata stessa a calcolare il prezzo.

Codice: packages/shared/src/weegschaal.ts (protocolli, etichette, file PLU), apps/pos-server/src/lib/weegschaal.ts e routes/weegschaal.ts; schermate WeegschaalInstellingen.tsx e WeegDialoog.tsx.

Thuisbezorgd.nl / Takeaway.com

Gli ordini di Thuisbezorgd.nl arrivano direttamente in cassa, senza intermediari (niente Deliverect, HubRise o simili): Just Eat Takeaway JET Connect comunica con il portale di gestione di Pin Voordeel, e la cassa recupera lì i suoi messaggi.

In Belgio la piattaforma si chiama Takeaway.com: stessa azienda (Just Eat Takeaway) e stessa integrazione. Per un locale belga, schermate, notifiche, comanda e portale di gestione mostrano ovunque Takeaway.com al posto di Thuisbezorgd.nl. Qui sotto Thuisbezorgd indica entrambi.

Perché tramite il portale? Alla cassa servono solo PORTAAL_URL e PORTAAL_SLEUTEL (vedi Portale di gestione) ed effettua solo richieste in uscita.

Configurazione (Impostazioni → Piattaforme di consegna → Thuisbezorgd.nl / Takeaway.com, permesso Imposta attività, pagamenti e stampanti; in precedenza si trovava in Impostazioni → Attività):

  1. Attiva Usa Thuisbezorgd (ha effetto subito, indipendentemente da Salva).
  2. Registrati su Thuisbezorgd. Poi il locale sceglie presso Thuisbezorgd (Partner Hub o account manager) OptimumPOS / Pin Voordeel come cassa. JET avvia quindi una sessione di onboarding; il portale individua la cassa registrata (per CAP e nome, altrimenti Pin Voordeel collega la sessione a mano nel portale), invia la configurazione e chiede il menu alla cassa. Dopo di che il collegamento è attivo.
  3. Spunta i prodotti ordinabili tramite Thuisbezorgd (per categoria o singolarmente), con un'eventuale descrizione per Thuisbezorgd. Il menu (prezzo, opzioni come modifier, allergeni, IVA) viene inviato automaticamente; PLU = id del prodotto/dell'opzione. Dopo una modifica al catalogo la cassa aggiorna il menu entro 30 secondi; solo "esaurito"/"di nuovo disponibile" passa tramite l'API di disponibilità.
  4. Orari di apertura Thuisbezorgd: separati per consegna e asporto (ad es. 16:00-22:00, più fasce separate da una virgola). Si salvano con il pulsante Salva orari di apertura qui sotto e vengono inviati a Thuisbezorgd come service times non appena l'integrazione è pronta.
  5. Chiuso temporaneamente / Di nuovo aperto (in NL/BE riapre al più tardi la mattina successiva alle 07:00).

Ordini. Un ordine diventa un normale ordine senza tavolo (bezorgen o afhalen, nome gruppo TB <ordernummer>) con i prezzi pagati dal cliente, più costi di consegna/servizio come riga a sé e lo sconto di Thuisbezorgd come riga di sconto; se il totale comunque non torna, si aggiunge una riga "Verschil Thuisbezorgd". La comanda va subito a cucina/bar (disattivabile). La cassa conferma entro pochi secondi al portale, che lo comunica a JET; se non riesce entro 3 minuti o la cassa è offline, JET riceve "fallito" e il locale ripiega sull'Orderpad.

Pulsante Thuisbezorgd nella barra superiore (con il numero di ordini in corso): elenco, cliente e indirizzo, orario di pronto/consegna e la cronologia (track & trace): ricevuto, rider in arrivo al locale, rider al locale, in viaggio verso il cliente, consegnato (da JET), più passaggi propri (in preparazione, pronto, in viaggio/consegnato con consegna propria, ritirato). Una mappa live con il rider JET Connect non la offre alla cassa; il cliente la vede nell'app di Thuisbezorgd. Nuovo ordine, annullamento e "rider al locale" generano una barra arancione e un suono. Completa (pagato online) incassa con il metodo di pagamento online; se il cliente paga alla porta, incassa normalmente. Un annullamento da Thuisbezorgd fa decadere l'ordine e stampa una comanda "GEANNULEERD".

Codice: apps/pos-server/src/lib/thuisbezorgd.ts, routes/thuisbezorgd.ts; schermate ThuisbezorgdInstellingen.tsx e Thuisbezorgd.tsx. Lato portale: horecapos-portaal/src/thuisbezorgd.mjs (vedi README del portale).

Conteggio nel portale di gestione. Il numero di ordini Thuisbezorgd al giorno è incluso nella segnalazione al portale di gestione (verkoopTelling in lib/portaal.ts): ricevuti e non annullati, nel giorno di arrivo. Un ordine Thuisbezorgd incassato in cassa (anche con Completa (pagato online)) non viene contato una seconda volta tra asporto/consegna. I dati Thuisbezorgd si trovano nel database della cassa e quindi sono inclusi normalmente nei backup della cassa.

Webshop e ordini online

Ogni attività può avere un webshop proprio: un sito di ordinazione (e app) con la propria immagine per asporto, consegna, ordini al tavolo con un codice QR e prenotazioni, con pagamento online (MultiSafepay o Buckaroo) o pagamento al ritiro/alla consegna. Il webshop è un progetto separato, horecapos-webshop (Node.js, vedi il README lì), e gira sullo stesso server del portale di gestione.

Attivazione e configurazione avvengono nella gestione del webshop: pulsante Gestisci webshop nel portale clienti (titolare) o nell'installazione nel portale di gestione (Pin Voordeel). Lì trovi attivo/disattivato, l'indirizzo web (<zaak>.<webshopdomein> o un dominio proprio), l'immagine (colori, logo, foto di testata, carattere), orari di apertura e fasce orarie per asporto e consegna, zona di consegna (CAP, raggio o un'area sulla mappa, con costi e minimo), pagamenti, codici sconto, testi, lingue, codici QR per i tavoli, prenotazioni e l'app (installabile come PWA; un'app Android tramite una Trusted Web Activity), e le notifiche push (opzionali, disattivate per impostazione predefinita): il cliente attiva una notifica nella pagina del suo ordine e riceve una notifica push quando l'ordine è pronto o in arrivo; chi lo desidera riceve anche ogni tanto un'offerta, che il locale invia dalla gestione del webshop (scheda Notifiche push). Funziona su Android e computer (Chrome, Edge, Firefox, Samsung Internet), nell'app Android e su iPhone e iPad (iOS 16.4 o successivo) se il cliente aggiunge il webshop alla schermata Home. Non vengono inviati SMS né e-mail e non viene salvato alcun nome o numero. Dettagli nel README del webshop.

Menu. La cassa invia il menu automaticamente: tutti i prodotti attivi (non a peso), per gruppo di prodotti, con prezzo, opzioni di scelta, allergeni, esaurito e la foto del prodotto, oltre ai tavoli, ai dati dell'attività e ai canali di marketing attivi (per la casella "ricevere offerte" al pagamento, vedi Marketing via SMS ed e-mail). Ciò avviene all'avvio, appena il webshop viene attivato, entro 30 secondi da una modifica al catalogo ed entro pochi secondi da una modifica in Impostazioni → Attività, come il marketing o la carta fedeltà (oppure con Invia menu ora). Puoi escludere un prodotto dal webshop nella gestione del webshop (nascondi) o nel database con artikel.webshop = false.

Ordini. Asporto e consegna diventano un normale ordine senza tavolo (nome gruppo WEB <bestelnummer>) con i prezzi visti dal cliente, più costi di consegna e costi di transazione come righe a sé e un codice sconto come riga di sconto; se il totale non corrisponde comunque, viene aggiunta una riga "Differenza webshop". La mancia del cliente non conta come fatturato: viene aggiunta al pagamento come mancia con Completa (pagato online). Gli ordini al tavolo (codice QR) vanno sul conto aperto di quel tavolo (pagato online: come gruppo a sé a quel tavolo). La comanda va subito a cucina/bar (disattivabile nella finestra Webshop). La cassa conferma entro pochi secondi con il numero di scontrino; il cliente riceve quindi "ricevuto" e un'e-mail. Se la cassa è offline, il webshop non accetta ordini (il cliente lo vede subito) e invia un'e-mail all'attività se un ordine resta in attesa troppo a lungo. Le prenotazioni dal webshop arrivano in Prenotazioni (solo se le prenotazioni sono attive in cassa). Se è impostato un massimo per fascia oraria (Consegna e fasce orarie), contano anche gli ordini del webshop con un orario in quella fascia.

Belgio (scatola nera). Un ordine dal webshop va subito come ordine (signOrder) alla scatola nera, prima della comanda, come Invia ordine alla cassa. Se non riesce, non entra in cassa e il webshop lo rinvia più tardi. Ciò che non è ancora stato testato con la scatola nera è disattivato nel menu del webshop (buoni regalo, codici sconto, su conto, in camera, menu, opzioni con sovrapprezzo, happy hour e mancia) e viene rifiutato se un vecchio webshop lo invia comunque. Concludi controlla mancia, su conto e in camera come la cassa.

Addebito in camera (collegamento hotel, Impostazioni → Hotel → Self-service → Nel webshop): il menu riceve kamer: { maxBedrag }; il webshop invia betaling.wijze = "kamer" con kamer e achternaam. La cassa verifica l'ospite con il software alberghiero (non al tavolo, non con un buono regalo) e lo salva con l'ordine; Concludi (addebita in camera) chiude il conto sulla camera e registra lo scontrino sul conto dell'hotel. Fattura cumulativa con pagamento su conto: lo scontrino resta allora come partita aperta.

Pulsante Webshop nella barra superiore (con il numero di ordini in corso): elenco, cliente e indirizzo, orario desiderato o "il prima possibile", metodo di pagamento e la cronologia. Il cliente vede i passaggi In preparazione, Pronto e In consegna in tempo reale nel webshop (e via e-mail, se l'attività lo desidera). Incassato in cassa = Completato; Annulla storna solo le righe di quell'ordine del webshop, stampa una comanda "ANNULLATO", e il webshop rimborsa un ordine pagato online. Arrivato, no-show o annullato per una prenotazione viene anche rimandato al webshop. Un nuovo ordine o prenotazione mostra una barra arancione ed emette un suono.

Codice: apps/pos-server/src/lib/webshop.ts, routes/webshop.ts; schermata Webshop.tsx. Lato portale: horecapos-portaal/src/webshop.mjs.

Cassa e webshop allineati (ogni parte si attiva separatamente, disattivato di default; un webshop più vecchio ignora i nuovi campi). Ciò che è attivo nella cassa funziona anche nel webshop:

Per questo il menu per il webshop ha versie: 2 con i campi menuArtikelen, allergenenAan, happyhours, menus, klantenkaart, cadeaubon, kortingscodes, pauze, drukteMin, volgt, bezetting, reserveren.online, ayce, opRekening, wachtlijst e upsell. La conferma al portale contiene inoltre cadeaubonnen (codici), klant (punti) e plek (lista d'attesa).

Conteggio nel portale di gestione. Asporto e consegna tramite il webshop vengono contati a parte (webshop, webshopGeannuleerd in verkoopTelling), nel giorno di arrivo, e non una seconda volta tra asporto/consegna. Gli ordini al tavolo vengono contati normalmente come tavolo.

Pagamenti con carta e terminali

Impostazioni → Pagamenti (solo amministratore):

Se c'è almeno un terminale con chiave API (o la modalità test è attiva), Incassa → Carta / Bancontact avvia automaticamente il pagamento sul terminale, per l'importo calcolato dal server.

Finché il collegamento è attivo, il server accetta "carta" solo con un pagamento riuscito sul terminale per esattamente quell'ordine e quell'importo. Le richieste vengono inviate, come nell'SDK PHP ufficiale, come normale modulo, con l'API di riserva (api-backup.pinvandaag.com) se l'API principale non risponde. Ogni risposta dell'API compare con [pin] nella finestra del server, utile in caso di guasti. Un pagamento riuscito non ancora elaborato (ad es. tablet spento) viene ritrovato al successivo incasso di quell'ordine.

Mancia (carta, contanti e buono regalo)

Nella schermata di incasso, per ogni metodo di pagamento, c'è una fila di pulsanti mancia: Nessuno, 5%, 10%, 15% (arrotondato per eccesso a 10 centesimi), Arrotondamento (all'euro intero successivo) e Altro importo. Con la carta il cliente paga importo + mancia in un'unica volta sul terminale; in contanti la mancia rientra nel resto e nel cassetto. Sullo scontrino compare l'importo pagato con carta con sotto "di cui mancia"; il TOTALE e l'IVA restano invariati, perché la mancia non è un ricavo. Nel rapporto X/Z la mancia compare per metodo di pagamento e come "Totale mance".

L'amministratore configura i pulsanti mancia in Impostazioni → Attività → Mancia: attivo/disattivato, quali percentuali (al massimo 4, ad es. "5, 10, 15"), se c'è il pulsante "Arrotondamento" e con quali metodi di pagamento (carta, contanti, buono regalo) è possibile la mancia. "Nessuno" e "Altro importo" ci sono sempre.

"Arrotonda a …" c'è sempre, con ogni metodo di pagamento, anche se i pulsanti mancia sono disattivati (nessuna impostazione): il cliente arrotonda da sé il conto per eccesso e la differenza è mancia. Ci sono pulsanti con l'euro intero successivo e i successivi importi tondi (ad es. € 28,00 → 29, 30, 40; € 44,00 → 45, 50, 60) e Altro totale per digitare tu il totale. Toccare di nuovo il pulsante scelto = non arrotondare. Massimo € 500 di mancia (stesso limite del server di cassa).

Nessuna connessione internet

La cassa funziona nella rete locale e non ha bisogno di internet; solo i pagamenti con carta tramite il collegamento sì. Se il locale non ha internet, nella barra superiore compare Nessuna connessione internet · carta manuale (controllato ogni minuto). Nella schermata di incasso compare allora, e anche dopo un avvio non riuscito sul terminale, il pulsante Già pagato sul terminale: fai pagare l'importo sul terminale stesso e registralo così.

Piantine e tavoli

Editor piantina sala

Impostazioni → Piantine sala (solo amministratore):

Trasferire la configurazione a un secondo locale

Impostazioni - Importa/esporta

Impostazioni → Importa/esporta (solo l'amministratore). Se hai configurato completamente un locale, esporta la configurazione in un file .json e importalo nella cassa del secondo locale. Selezionabile per sezione:

Non vengono mai trasferiti: nome, indirizzo, CAP, città, telefono, e-mail, partita IVA e riga di chiusura dello scontrino del locale, l'indirizzo e-mail per il rapporto Z, i terminali di pagamento e le loro chiavi, personale e PIN, e tutti i ricavi, scontrini, clienti e giacenze di magazzino.

L'importazione è fortemente protetta: un grande avviso rosso, una casella "Ho capito...", di nuovo il PIN personale dell'amministratore, nessun ordine aperto, lo stesso paese (aliquote IVA) e prima un backup automatico. L'importazione avviene in un'unica transazione: se qualcosa va storto, non cambia nulla. Prodotti, categorie, ingredienti e tavoli esistenti non vengono cancellati ma tolti dalla cassa (come con Elimina), così vecchi scontrini e rapporti restano corretti.

Importa da un'altra cassa

Cambiare cassa senza ridigitare tutto. Sempre disponibile (senza interruttore): in Impostazioni → Importa/esporta (solo l'amministratore) c'è la sezione Importa da un'altra cassa.

Lingue (42, tra cui turco, arabo, darija, berbero, polacco, bulgaro, ungherese, russo, serbo, albanese, persiano, tigrino, amarico, somalo, papiamento, sranan tongo, hindi, urdu, indonesiano, vietnamita, siriaco-aramaico, cinese e ucraino)

Accanto al pulsante © in basso a destra, su ogni schermata c'è un pulsante con la lingua (ad es. NL e la bandierina). Toccalo per il menu di scelta: le lingue sono in ordine alfabetico, con il nome nella lingua stessa prima della bandiera: Bahasa Indonesia (indonesiano), Čeština (ceco), Darija (arabo marocchino in alfabeto latino), Deutsch, English, Español, Français, Hrvatski (croato), Italiano, Kurdî (Kurmancî), Latviešu (lettone), Lietuvių (lituano), Magyar (ungherese), Nederlands, Papiamentu (papiamento), Polski, Português, Română, Shqip (albanese), Slovenčina (slovacco), Soomaali (somalo), Sranantongo, Srpski (serbo, in alfabeto latino), Tarifit (berbero rifano), Tiếng Việt (vietnamita), Türkçe, poi in alfabeto cirillico Български (bulgaro), Русский (russo) e Українська (ucraino), poi le lingue in alfabeto arabo: اردو (urdu), الدارجة (darija), العربية (arabo), دری (dari), فارسی (persiano, farsi), پښتو (pashto) e کوردی (سۆرانی) (curdo sorani), poi in alfabeto siriaco ܣܘܪܝܝܐ (siriaco-aramaico, Suryoyo), in devanagari हिन्दी (hindi), in alfabeto ge'ez ትግርኛ (tigrino) e አማርኛ (amarico), in tifinagh ⵜⴰⵎⴰⵣⵉⵖⵜ (tamazight, berbero), e per ultimo 中文(简体)(cinese, scrittura semplificata). Tutte le schermate, i pulsanti, i messaggi e i messaggi di errore del server di cassa vengono tradotti.

Per gli sviluppatori: ogni testo visibile è nel codice come vt('Nederlandse tekst') (apps/pos-web/lib/i18n.ts); il testo olandese è la chiave. Le traduzioni si trovano in apps/pos-web/lib/vertalingen/<taal>.ts. Se manca una traduzione, la cassa mostra l'olandese; il test i18n (pos-web) verifica che ogni testo sia tradotto in ogni lingua e che i segnaposto {0} corrispondano. I messaggi del server di cassa restano in olandese e vengono tradotti nel browser (anche con {0}, ad es. un nome di prodotto nel messaggio).

Configurare le stampanti

Una cassa nuova non ha stampanti. Accedi come amministratore (demo: 1111) e scegli Impostazioni nella barra superiore.

In stampa i prodotti uguali vengono raggruppati: due volte 1x Cola diventa 2x Cola, sulla comanda e sullo scontrino. Si raggruppano solo prodotti con le stesse opzioni e la stessa nota.

L'installer Linux aggiunge l'utente della cassa ai gruppi lp e dialout, così la cassa può usare le stampanti USB e seriali.

Serve aiuto?

Optimum POS · 085 560 00 60 · support@optimumpos.nl · lun–ven 9:00–20:00, sab–dom 14:00–20:00