Green Leaf supports thermal printer with ESC/POS protocol support for receipt printing. See the list below for a list of printers where it has been tested.
Setting a thermal printer involves 3 steps:
- Adding a Printer
- Configuring business locations to use the added printer.
- Installation Pos Print server.
Step1: Adding a Printer
- Add a new printer from Settings -> Receipt Printer
- Select the appropriate Connection Type:
- For “Network” provide the IP Address of the printer.
- For “Windows” map the printer to a file and provide the path of the file. You can do this by sharing the printer to your localhost.
The path will be in this format:
smb://localhost/my_printer_name OR smb://computer_name/my_printer_name (where my_printer_name is name of the printer)
3. For “Linux” your printer device file will be somewhere like
4. Select the capability profile and add character per line supported in the printer.
5. Save the Printer configuration.
6. Check the video below for more details on setting it.
Step2: Configuring Business Location to use printer:
- Go to Settings -> Business Settings.
- For a particular business location, go to “Settings” in actions column.
- Change “Receipt Printer Type” to “Use Configured Receipt Printer“
- Select the “Receipt Printers” from the list of Receipt Printers
- Click on Update.
Step3: Installing POS Print Server
For printing via receipt printer, you will need to install a “pos print server” on your local computer from which GreenleafPOS is used.
- Download the server from this link. by clicking on “Download Repository”
- Unzip the zip file.
- Rename the unzipped folder to “pos_print_server”.
- Move the pos_print_server to document root (which is htdocs in XAMPP).
- Open Command Prompt or also called terminal. And go to the “pos_print_server” directory. You can go to this directory using “CD” command in the command prompt.
- From the Command Prompt which is now inside pos_print_server directory run the below command:
After running the command it will start the print server and show a message similar to below:
- You may receive “Unrecognized command PHP”, in that case, add PHP command to your environment variable. (Google search result)
- Now we are ready to go. Try creating a test sell from the pos screen and it should print in your thermal printer. If you haven’t added a printer then follow the steps mentioned in “Step1: Adding a Printer” and it should work.
Great, now we’re ready to print on a thermal printer.
Give it a test drive.
Follow the steps as mentioned in this video up to 2.0 minutes.https://www.youtube.com/watch?v=9GRVEdWuxmAUse pos_print_server instead of the Github repo mentioned here.
Go to POS screen, add a test invoice and check if it prints. If not please check if the pos receipt server is running or not.
Many thermal receipt printers support ESC/POS to some degree. This driver has been known to work with:
EPOS TEP 220M
Epson TM-U295 (requires release() to release slip).
Epson TM-U590 and TM-U590P
Epson FX-890 (requires feedForm() to release paper).
Equal (EQ-IT-001) POS-58
Gainscha GP-5890x (Also marketed as EC Line 5890x)
Gainscha GP-U80300I (Also marketed as gprinter GP-U80300I)
Hasar HTP 250
Okipos 80 Plus III
P85A-401 (make unknown)
SEYPOS PRP-300 (Also marketed as TYSSO PRP-300)
Silicon SP-201 / RP80USE
Star TSP100 ECO
Star TSP100III FuturePRNT
Zjiang ZJ-5890T (Marketed as POS 5890T)
Disabling Printing of Receipts in POS screen
To disable printing of receipts, go to Settings -> Business Locations -> Click on Setting for the business location where you have to disable printing, make “Auto print invoice after finalizing:” as No.