Automatically print your PrestaShop orders on Expedy cloud thermal printers. When an order is placed (or reaches the status you choose), the module builds a receipt and sends it to your printer through the ExpedyPRINT API v2 — no tablet, no local print server, no driver to install.
Version 2.0.0 rebuilds the module on the new v2 API, adds a dedicated settings dashboard with a live printer picker, test connection / send test print / order ticket preview tools, and fully editable receipt wording.
- 🖨️ Automatic order printing when an order is placed or when it becomes Payment accepted (your choice).
- 🧭 Modern settings dashboard with a printer picker loaded from your account, a Test connection button, a Send test print button and an order ticket preview tool — all usable without saving the form first.
- 🧾 Rich receipts: logo, store header, order reference & date, payment method, delivery/pickup date & time, itemised products with attributes & options, EAN-13 barcodes, totals (incl./excl. tax, tax detail) and customer note — with fully editable wording (type your own in any language). Amounts print without a currency symbol for maximum thermal-printer compatibility.
- 🧩 Integrations preserved: pickup/delivery slots (
prestatilldrive,prestadrive,prestatillhomedelivery,fspickupatstorecarrier,preferreddeliverytime) and product options (configurator,an_productfields,idxrcustomproduct). - 👥 Multistore: route store pickups to a specific printer.
- 🔁 Primary + backup printer and 1–5 copies per order.
- 🛡️ Secure by design: TLS-verified HTTPS, admin security tokens on every action, and your API token is write-only — never displayed back.
- ♻️ Reliable: an order prints once (idempotent), and a failed attempt can be retried on the next
status change. Every attempt is recorded in Advanced Parameters → Logs (source
expedyprint).
| Minimum | |
|---|---|
| PrestaShop | 1.6 (tested up to 8.x) |
| PHP | 7.2 |
You also need a free Expedy account with an API SID, an API token and at least one cloud printer.
Download the latest expedyprint.zip from the Releases page.
Each release ships the ready-to-install zip and its changelog — that single file is all you need.
- Download
expedyprint.zipfrom the latest release. - In your PrestaShop back office, open Modules → Module Manager.
- Click Upload a module, select the
expedyprint.zipyou downloaded. - Once installed, click Configure.
That's it: no drivers, no command line, no extra software.
The module connects to your Expedy account using two credentials: an API SID (your account identifier) and an API token (your secret key).
- Create your free account at expedy.io.
- Log in and open the API (or Credentials) section.
- Copy your API SID and API token.
- Make sure you have at least one cloud printer registered on your account.
Keep your API token private — treat it like a password.
Open Modules → Module Manager → Expedy → Configure:
- API connection — paste your API SID and API token, then click Test connection. On success, the printer list is fetched from your account.
- Printer — pick your printer from the dropdown (it shows the name, paper width and UID). Optionally set a backup printer and the paper width (58 / 80 mm). Use Send test print to print a sample ticket.
- Printing trigger — choose when to print (order placed / payment accepted), the number of copies, and whether the paper is cut after each ticket.
- Receipt content — choose how products and amounts are shown, and which blocks to print.
- Store header & footer — optional logo URL, title, company and address shown on the ticket.
- Receipt wording — customise every label printed on the ticket (Commande, Produit, Prix…), in any language you like.
- Advanced — optional multistore mapping (
store_id:printer_uid||store_id:printer_uid).
You can preview the exact ticket for any existing order with the Preview an order ticket tool at the bottom of the page — no printer required.
The module watches your order events and, when the trigger you configured is reached, builds the
receipt and sends it to your printer through the ExpedyPRINT cloud API. An idempotency flag prevents
the same order from printing twice; if a print fails, the order is not flagged, so it can retry on
the next status change. Every attempt — success or failure — is recorded in
Advanced Parameters → Logs (source expedyprint).
Want to print from your own application or another platform? Use the official Node.js SDK and API examples:
👉 github.com/ExpedyDev/expedy-sdk-node
It shows how to authenticate, list your printers and send print jobs through the ExpedyPRINT API v2.
- ExpedyPRINT service, account and API: www.expedy.io
- Bugs and feature requests for this module: open an issue on this repository.
Open Software License (OSL 3.0). See LICENSE.