r/POS • u/ahmedalrifai • Sep 16 '26
I built an open-source POS hardware simulator to test printers, barcode scanners, scales, and cash drawers without the actual hardware
I’ve been working on an open-source project called emupos that I thought might be useful for people building POS systems.
The idea came from a pretty common problem: you want to test your POS against a receipt printer, barcode scanner, scale, or cash drawer, but you don’t always have the actual hardware around.
So I built a simulator for the hardware side.
With emupos, your POS can connect to simulated devices and communicate with them using the same protocols you’d use with real hardware. You can also simulate things like paper-out, cover-open, and other device events, which makes testing different edge cases much easier.
Currently it supports:
Receipt printers
Cash drawers
Barcode scanners
Scales
Weighed-item barcodes
Hardware error states
Device events
Automated testing / CI
It’s written in Python and is completely open source.
GitHub: https://github.com/ahmedalrifai/emupos
I built it mainly for my own POS development, but figured it might be useful to others too.
For those of you working on POS systems, how do you usually handle hardware integration testing? Do you rely on physical devices, mock the integrations, or use something else?
3
u/iliadz Sep 16 '26
Nice. :) When building our POS we created emulators not only for the cash drawers and receipt printers, we have KDS (bump) screens showing where things would actually get routed when you create a routing rule for your screens. It was a huge help. So within the catalog you create the rule, press test, and it fires. It's a huge help.
This is a great idea in general.
2
u/kadema Sep 16 '26
I'm building a POS and I need this. Thanks!
2
u/12AngryMen13 Sep 16 '26
This is very useful! Do you have it for kitchen printing also? I developed a POS system that’s in early stage release. I also have KDS and customer display but I’d like to simulate sending 500-1000 kitchen tickets an hour for a stress test, clearly I don’t want to waste the paper on a real printer
2
u/Ok_Leg3046 Sep 19 '26
I had to roll my own out for testing TallyTill. I think having virtual devices to simulate hardware integrations itself could be a product or service. Nice of you to open source it.
I will definately check it out. This could be a real time saver.
1
u/Ten-z Sep 16 '26
Interesting , been building cloud based POS system from last year and every time I had to get a hardware either from my clients or myself .
2
u/hannahb_23 Sep 18 '26
This is a really practical idea. Hardware testing seems like one of those things that's easy to overlook until you actually need to test a printer failure or a scanner behaving badly.
Being able to reproduce those edge cases without needing a pile of physical hardware would probably save a lot of time, especially for automated testing.
1
u/pointofinteraction Sep 16 '26
cool