Modulo PrestaShop: Stampa automatica degli ordini (Cloud Print)
Stampa automaticamente i nuovi ordini non appena vengono effettuati (o una volta accettato il pagamento). Senza computer, tablet, smartphone, server di stampa locale o driver da installare. La tua stampante si collega direttamente al tuo negozio PrestaShop tramite il Server Cloud Print di Expedy, via Wi-Fi, Ethernet o scheda SIM 3G/4G.
Questa documentazione riguarda ExpedyPRINT v2, il nostro modulo attuale ricostruito sull'API ExpedyPRINT v2. Non forniamo supporto per le versioni precedenti alla v2.
⚠️ Il tuo negozio PrestaShop deve avere l'SSL attivato e non deve essere in modalità dev o debug. Queste modalità possono bloccare le richieste API e impedire l'invio delle stampe.
Stampanti compatibili:
- Qualsiasi stampante ESC/POS o ESC/P abbinata a un adattatore Cloud Print Box
- Stampanti Expedy Cloud Print
Hai bisogno di verificare la compatibilità con un'altra stampante? Crea un ticket di supporto.
Requisiti
| Minimo | |
|---|---|
| PrestaShop | 1.6 (testato fino a 8.x) |
| PHP | 7.2 |
Hai inoltre bisogno di un account Expedy gratuito con un SID API, un token API e almeno una stampante cloud registrata sull'account.
Download
Scarica l'ultima versione di expedyprint.zip dalla pagina delle release di GitHub:
👉 github.com/ExpedyDev/expedyprint-prestashop-addon/releases
Ogni release include lo zip pronto per l'installazione e il suo changelog. Quel singolo file è tutto ciò di cui hai bisogno.
Il codice sorgente completo è aperto e disponibile qui:
👉 github.com/ExpedyDev/expedyprint-prestashop-addon
Installazione
- Scarica
expedyprint.zipdall'ultima release. - Nel back office di PrestaShop, apri Moduli → Gestione moduli.
- Fai clic su Carica un modulo e seleziona il
expedyprint.zipscaricato. Il modulo si installa automaticamente. - Una volta installato, fai clic su Configura.
Nessun driver, nessuna riga di comando, nessun software aggiuntivo.
Configurazione
Apri Moduli → Gestione moduli → ExpedyPRINT → Configura. Il pannello delle impostazioni è organizzato in sezioni chiaramente etichettate e gli strumenti di connessione, stampante e anteprima funzionano tutti senza dover prima salvare il modulo.
1. Connessione API
Incolla il tuo SID API e il tuo token API, poi fai clic su Prova connessione.
| Impostazione | Descrizione |
|---|---|
| SID API | Il tuo identificativo di account, disponibile nella console Expedy sotto API. |
| Token API | La tua chiave segreta, disponibile nella stessa sezione API. Trattala come una password. Viene memorizzata in modo sicuro e in sola scrittura, quindi non viene mai più visualizzata. Lascia il campo vuoto al salvataggio per mantenere il token già memorizzato. |
Se il test ha successo, l'elenco delle stampanti viene recuperato dal tuo account e il menu a discesa delle stampanti viene popolato automaticamente.
2. Stampante
| Impostazione | Descrizione |
|---|---|
| Stampante | Scegli la tua stampante dal menu a discesa caricato dal tuo account (mostra nome, larghezza carta e UID). |
| UID della stampante di backup | Facoltativo. Una seconda stampante che riceve lo stesso ticket, utile per la ridondanza. |
| Larghezza carta | 58 mm o 80 mm, in base al rotolo della tua stampante. |
Usa Invia stampa di prova per stampare un ticket di esempio sulla stampante selezionata e confermare che tutto sia configurato correttamente.
3. Attivazione della stampa
| Impostazione | Descrizione |
|---|---|
| Stampa il ticket | Scegli quando avviene la stampa: non appena viene effettuato un ordine, oppure quando lo stato dell'ordine diventa "Pagamento accettato". |
| Numero di copie | Da 1 a 5 copie per ordine. |
| Taglia la carta dopo ogni ticket | Taglia automaticamente la carta al termine di ogni stampa, sulle stampanti che lo supportano. |
4. Contenuto del ticket
Scegli come vengono mostrati i prodotti e gli importi e quali blocchi vengono stampati:
- Visualizzazione prodotto: nome prodotto e attributi, riferimento prodotto e attributi, solo nome o solo riferimento.
- Importi: importi di riga IVA inclusa, IVA esclusa o nessun importo di riga. Gli importi vengono stampati senza simbolo di valuta per la massima compatibilità con le stampanti termiche.
- Totali: stampa il totale IVA inclusa, il totale IVA esclusa e/o il dettaglio delle imposte.
- Codici a barre EAN-13: stampa il codice a barre del prodotto su ogni riga.
- Numero di articoli, metodo di pagamento, metodo di consegna/corriere, nota del cliente: attiva o disattiva ciascun blocco.
5. Intestazione e piè di pagina del negozio
URL del logo facoltativo (HTTPS, GIF/JPG/PNG, larghezza max 570px), titolo del negozio, nome dell'azienda, indirizzo, CAP, città, telefono e ID azienda, tutti stampati sul ticket.
6. Diciture del ticket
Ogni dicitura stampata sul ticket (Ordine, Prodotto, Prezzo, ecc.) è completamente modificabile, nella lingua che preferisci.
7. Avanzate: mappatura multi-negozio
Instrada i ritiri in negozio verso una stampante specifica con il formato store_id:printer_uid||store_id:printer_uid. Ad esempio, gli ordini del tuo negozio di Londra possono stamparsi automaticamente su una stampante mentre quelli di Edimburgo vanno su un'altra, completamente automatizzato, senza smistamento manuale.
Anteprima di un ticket d'ordine
In fondo alla pagina delle impostazioni, lo strumento Anteprima di un ticket d'ordine genera il ticket esatto di qualsiasi ordine esistente. Basta inserire l'ID dell'ordine e fare clic su Anteprima. Nessuna stampante richiesta.
Come funziona
Il modulo monitora gli eventi dei tuoi ordini e, quando viene raggiunto il trigger configurato, costruisce il ticket e lo invia alla tua stampante tramite l'API cloud ExpedyPRINT.
Un ordine viene stampato una sola volta: un flag di idempotenza impedisce che lo stesso ordine venga stampato due volte. Se un tentativo di stampa fallisce, l'ordine non viene contrassegnato, quindi può riprovare al successivo cambio di stato. Ogni tentativo, riuscito o meno, viene registrato in Parametri avanzati → Log (origine expedyprint).
Moduli compatibili
ExpedyPRINT può leggere dati da altri moduli PrestaShop per stampare informazioni aggiuntive come il tipo di ritiro o consegna, la data e la fascia oraria, oltre alle opzioni di prodotto. Le integrazioni supportate includono:
- Fasce di consegna e ritiro:
prestatilldrive,prestadrive,prestatillhomedelivery,fspickupatstorecarrier,preferreddeliverytime - Opzioni di prodotto e campi personalizzati:
configurator,an_productfields,idxrcustomproduct
Questo elenco non è esaustivo. Non possiamo garantire una stampa corretta se la tua installazione PrestaShop è fortemente personalizzata o usa moduli che alterano le funzioni native degli ordini.
Crea la tua integrazione
Per stampare dalla tua applicazione o da un'altra piattaforma, usa l'SDK Node.js ufficiale e gli esempi di API:
👉 github.com/ExpedyDev/expedy-sdk-node
Mostra come autenticarti, elencare le tue stampanti e inviare lavori di stampa tramite l'API ExpedyPRINT v2.
Personalizzazione e supporto
Il modulo è open source con licenza Open Software License (OSL 3.0), quindi puoi modificare liberamente il codice per adattarlo alle tue esigenze. Expedy non offre più sviluppo su misura né servizi di personalizzazione.
- Servizio ExpedyPRINT, account e API: www.expedy.io
- Domande o aiuto: crea un ticket di supporto
- Bug e richieste di funzionalità per questo modulo: apri una issue sul repository
Il supporto è fornito solo per ExpedyPRINT v2. Le versioni precedenti alla v2 non sono più supportate.