The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

POS printer?


Is POS printer really a better option for point of sales? Does is print faster? I mean is it spooled on the windows print manager or directly to the printer?
Anyway this is only a small store. I'm planning to use the Epson LX300 as of the moment but, is the transition from this ordinary printer to the pos printer is painless? I mean in the part of the software. Is there a special API for pos printing? Please give me some info/advice regarding pos printing. Thanks.
Wednesday, March 28, 2007
Thermal POS printers work really well. They're super fast (think feet per second), very reliable, and generally cope pretty well with the POS environment. Most use an Epson or Star derived API.

The only downside with thermal printers is that the receipts fade pretty easily. Any requirement to keep receipts for a long period of time (taxation records, etc) simple can't be met by thermal receipts.

Wednesday, March 28, 2007
"The only downside with thermal printers is that the receipts fade pretty easily. Any requirement to keep receipts for a long period of time (taxation records, etc) simple can't be met by thermal receipts."

I add:

There is also that the paper is yucky.  (If you ever lick your fingers to get traction, you will find out.)

The paper curls badly, so it is awkward getting it lined up to photocopy.


Gene Wirchenko
Gene Wirchenko Send private email
Wednesday, March 28, 2007
If you need a POS printer, you can have the one in my basement.  It's a Lexmark, and let me tell you, it's a major POS.
Kyralessa Send private email
Wednesday, March 28, 2007
It's faster if you use the built in printer fonts...
Thursday, March 29, 2007
The big difference between POS printers and regular paper printers is the interfacing/API. You do NOT want to use the regular Windows printer drivers with a POS printer. They are just way too slow. Epson printers will actually print using graphics mode instead of text mode if you call them through a Windows printer driver. And many POS printer vendors don't even bother providing standard printer drivers.

Instead, you should use UnifiedPOS which is OPOS, JavaPOS, or POS for .NET depending on what language you are using. Here is a link to the a page with the most recent specification from the ARTS group.

The way UnifiedPOS works is that you have a common API for calling printer functions and vendors provide you with a UnifiedPOS driver that you must install. Using a POS printer in this manner is pretty easy from a programming perspective (you call functions like cutPaper, printNormal, and beginDocumentInsertion). But it can be challenging to get the drivers installed correctly. Luckily, Epson does a really good job with their drivers.

Here are some pros and cons to using UnifiedPOS instead of Windows printing.


1) It supports more than just printing. UnifiedPOS defines API's for PIN Pads, MSR's, Customer Displays, Scales, Cash Drawers, Scanners, Change Machines, and many other devices. Windows printing obviously does not.

2) It is much faster. UnifiedPOS talks to the printer in its native language. POS printers are text-line based and although they can print graphics, this isn't their standard mode of operation. An Example is printing to an Epson printer through the Windows printer driver. It is VERY slow.

3) In theory you can switch printers and even vendors without changing code. That's the whole point of UnifiedPOS. You just install the right driver and configure it and away you go. In reality it is more difficult than this if you are using document insertion (franking) capability because not all vendors suppport the same functionality in the same way. But for standard receipt printing it is easy to just swap vendors or printers.

4) Windows printer drivers can't handle document insertion handling or popping a cash drawer without setting up special custom escape codes. For example, you will probably have to go into the Windows printer settings and add a special escape code to the end of the document in order to get the drawer to pop after the receipt prints. But if you don't want the drawer to pop for a specific transaction then you are out of luck.

5) Marketable POS systems use UnifiedPOS. If you have a desire to get into this business you will find that the crappy systems use Windows drivers or program directly to Epson escape sequences. Bigger retailers won't touch a product that uses Windows printer drivers.


1) Getting the drivers setup correctly can be painful. Each vendor has a separate install and they aren't consistent. If you are using Java then you can expect even more pain with JavaPOS. OPOS and POS for .NET are compatible and vendors do a decent job of supporting it. As I've said before, Epson does a really good job with their driver installation and configuration programs.

2) There is a steeper learning curve with UnifiedPOS. It's not that difficult but you will need to learn the new programming model and API. There are new concepts that may seem strange at first. The good news is that once you understand the printer API, all the other device API's will naturally fall into place.

One more note, if you intend to try UnifiedPOS, make sure that someone hasn't installed a Windows printer driver for the device. They will confict and UnifiedPOS won't work. If you aren't going to use them, uninstall the Windows printer drivers that you've installed.

Good luck. Feel free to post any additional questions here. I've been in the retail business for 10 years and I've interfaced to countless devices using many different methods (Raw escape commands, JavaPOS, OPOS, POS for .NET, Windows printer drivers, and vendor API's). Next to credit card authorization and settlement, device interfacing is one of the most painful aspects of POS programming.
dood mcdoogle
Thursday, March 29, 2007
I forgot to mention that the Epson LX300 will not allow you to drive a cash drawer. Do they want this functionality?

The LX300 will also be very slow, noisy, and costly in terms of paper and time required to reload the paper when it runs out. The benefit of the LX300 is that it is fairly easy to program to and can support two-part forms if you need it.
dood mcdoogle
Thursday, March 29, 2007
My printer is a POS, but that's because it rarely works.
Thursday, March 29, 2007
*sigh* I have to say that the "POS = Piece of Sh*t" jokes were not even funny the first time. Maybe it's just me but after listening to that kind of crap for ten years you really start to get tired of it.

We get very few Point of Sale related topics out here so I'm always excited to see them when they appear. I would love to be able to exchange ideas with other people in the industry. But in every single one you end up with several needless comments about hardware or software that is a piece of sh*t. It makes me wonder why I even waste my time replying to such topics.

As a side note, if anyone else knows of a forum where Point of Sale developers are more likely to hang out please let me know. I haven't found one yet personally but would certainly enjoy chatting with other like minded people.

Thanks for letting me rant.
dood mcdoogle
Thursday, March 29, 2007
I agree that these "jokes" are not funny.  This is one reason why I am trying to get myself to stop visiting this place so much.  People need to realize that this hooha pushes away a lot of people who have a lot to contribute here.
Thursday, March 29, 2007

(Cranky people.)
Kyralessa Send private email
Thursday, March 29, 2007
Dood, I'd like to see the same thing.  As pervasive as point-of-sale systems are, there doesn't seem to be too many development forums on the net about them, and the ones that do exist, to be honest, seem somewhat lame to me (look at the Microsoft RMS/POS newsgroup as a good example).

Speaking of RMS, I've really started to notice a lot of brother-in-law type setups; people seem to think it's just like setting up Office, when there's a lot more to it (I used to think the same, was I ever wrong).
Lurker Indeed
Thursday, March 29, 2007
Everything that has been said about the UnifiedPOS is spot on.  It is definately the way to go for reliable and quick printing.

The installation and configuration of different manufacturer's drivers can seem a bit like a "magic art".

With 20 yrs development of POS solutions in the UK it is good to see any POS related topics getting an airing.
JonD Send private email
Wednesday, April 11, 2007

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz