I kept the static method I’d written for having a single, unique lock and changed it to create a single, unique dispatch queue. The static method, however, introduced a new issue I’d overlooked: upon logging out of the app, the queue would persist while the code blocks it ran tried to access deallocated data. This new issue finally pushed me to use an even higher level concurrency abstraction, NSOperationQueue (see Apple’s documenation for more details). NSOperationQueues are built on top of GCD but provide several extra features, including the ability to cancel operations. Moving printer communication code to an NSOperation subclass was a small amount of extra work that paid big dividends. By storing the operation queue as an instance variable on the print controller, I was able to cancel all waiting printing and printer discovery operations and deallocate the queue itself in just a few lines of code.
Most receipt printers I have seen use a wired ethernet connection, so you could add a slick Lantronix xPrintServer which uses AirPrint to avoid needing a computer running for your iOS devices to print to these specialized printers.
EOM-POS Thermal Receipt Printer- USB, Ethernet, Serial Ports- Auto Cut – Cash Drawer Port (RJ11/RJ12)- Paper Width 3 1/8″ (80mm) – NOT COMPATIBLE with Mac, Square, Shopkeep, Clover, Shopify, or Paypal
Native Technology, Inc. is a third-party hardware reseller and is in no way affiliated with Square, Inc. Native Technology offers POS hardware that is compatible with the Apple iPad and Square, Inc. products. Square, the Square logo, Square Register, and Square Reader, are registered trademarks or trademarks of Square, Inc. iPad™ is a trademark of Apple Inc. iPod touch®, and iPhone® are registered trademarks of Apple Inc.
I started off the implementation of Bluetooth printer support by using the same concurrency model used by our WiFi printer code and running Bluetooth printing and printer discovery blocks on a global concurrent queue. I quickly found what appeared to be a non-deterministic bug — sometimes I could print a receipt with no problem, and other times it would fail part way through. What I was in fact encountering was a timer firing and searching for connected printers while the app was in the middle of sending data to a printer. While this behavior was perfectly acceptable in communication for WiFi printers (TCP supports multiple simultaneous connections), it totally broke down in the new communication channel. It became clear that some kind of mutual exclusion was necessary to prevent this kind of collision.
Last but not least, though I’m enough of a geek that the code itself would have been interesting and fun for me, it was really special getting to see first-hand how the product truly helped people. Meeting a merchant who had previously only been able to give out handwritten receipts, handing her a Bluetooth printer, and seeing how our new feature would make her job easier was the highlight of my summer.
Everything you need to get started taking in orders and money (except the iPad and the cash for the till!). Includes, Square credit card reader,  receipt printer with Ethernet interface, 2 rolls of receipt paper, 13″ wide cash drawer with till, and all cables for connecting the printer and cash drawer.
You may plug a receipt printer into one of the three USB ports found on the Square Stand accessories hub, but kitchen printers are typically located some distance away from your checkout register – farther away than a USB cable will reach.
Square introduces more ways to engage with customers. Square now integrates with cash drawers and receipt printers. With a single tap on an iPad, you can open your register’s drawer to complete a cash sale or make change. Please read the options below carefully before purchasing a cash drawer.

Learn more.
If your customer entered an email address to receive a receipt from a Square merchant in the past, they may already be opted in to automatic receipts. These customers won’t be asked to enter their contact information after a sale, and a receipt will automatically be sent to their preferred email address. 
First and foremost, a little background info: I own my own business and have been using the Square Register POS system for over four years. I have a different kit, but they’re all similar products. When my friends decided to open their restaurant, they went with an old school cash register and struggled at the end of the night with keeping track of taxes because it was not as intuitive to use. I convinced them to order this kit from Amazon and the other necessary items elsewhere and helped them set everything up in less than 30 minutes. This kit provided an excellent, trusted printer and an easy to connect cash drawer. Upon arrival, I had an issue with the cash drawer – it would not open. A quick email (on a Sunday) to the seller, and he gave me advice and a link to an explanation as to how to fix the stuck drawer. Using his explanation took me a couple of minutes to fix it. I am a realistic person, and I understand that things don’t always go as planned, so I was happy the seller worked with me fast to come to a solution. I gave this five stars because of the customer service – you can find similar products elsewhere and they all work the same way… but the customer service provided made this an excellent purchase! Thanks EOM-POS!
To create your own bar codes and labels, you’ll need to use a third-party application. At the moment, we don’t support bar code and label printers and can’t guarantee compatibility, but many customers have success using the DYMO Label Writer 450 and labels with Square.
It supports 58mm width thermal paper printing, with high printing speed, clear printing & low noise. You can connect your devices with the printer via BT 4.0 & 3.0, USB cable or serial port line. Prin…
Square Point of Sale on an iPad is compatible with a wide variety of third-party hardware accessories. Below, you’ll find a list of supported accessories, where to purchase them, and information on getting set up.
Barcode PrinteriPad Point of SaleBarcode ScanneriPad Barcode ScannersCash DraweriPad Cash DrawersCredit Card ReaderiPad Receipt PrintersGift Card PrintingiPad POS StandsMobile ComputeriPad POS KitsPOS SoftwareiPad POS Apps
Star TSP650II TSP654IIBTI Printer (Bluetooth Interface / Auto Cutter / Dark Gray). Sorry No Drivers cd included. drivers can be downloaded from Star Micronics website. Setup is pretty simple. Press an…
Receipt Printer Compatible With Square, A cash drawer needs to be linked to an invoice printer to open immediately. Otherwise, you’ll have to buy hand open the drawer utilizing the money drawer secret. * This standard money drawer is not able to link to an invoice printer.
The Star Micronics TSP143IIILAN works with Square Payments. Star Micronics is a well known manufacturer of receipt printers. They make many different models. You connect to a Square iPad stand with a USB cable. This receipt printer uses 80 mm width or 3 1/8 inch width thermal paper for the receipts. There is a roll of paper that ships with the receipt printer. An auto cutter mechanism cuts the receipt paper for you when you make a sale.
There are several reviews of this product, and the unit is physically about the size of three iPhone 4 stacked in a neat pile. It is intended to support between 7 and 10 printers before you need to buy a second device. I am not clear whether you can set this up from iOS, but it works well once you have it set up.
As a bluetooth only device, it is a bit glitchy. If you are wanting to use it with a phone/tablet only as a standalone device, look elsewhere. The miura m010 reader works great for this, though is unfortunately not available on amazon.
The Ethernet printers compatible with Square Point of Sale are thermal printers. They require heat-sensitive paper and won’t work with non-thermal receipt paper. These types of printers aren’t ideal for kitchens or high-temperature working areas. 
Square Point of Sale (formerly Register) is the free point-of-sale app that gives you everything you need to run and grow your business. Accept debit and credit cards with a Square Reader for magstripe, and accept EMV chip cards and Apple Pay with the Square Reader for contactless and chip. Funds are deposited fast—see money in your bank account in one to two business days. Use your point of sale system to keep track of sales and inventory in real time, manage items and employees, and view analytics about your business. All this with no long-term contracts or surprise fees.
Bluetooth printing was a great project — it brought many unique engineering challenges and taught me a lot about how Square’s code base works. I’ve always been taught to use inheritance when possible to organize and share code, but working with the peripheral class hierarchy was a strong reminder of just how valuable a good, well-organized, object-oriented architecture can be. There was a lot of shared code between WiFi and Bluetooth printers that I could have copied and pasted, but I’m glad that I took the time to not just make it work, but to do it right. I’m thankful that my co-workers pushed me to take the time to experiment with different abstractions of concurrency. Not only is my code better, but I now know many ways to approach the problem. In software, there’s rarely just one solution, and this is a good reminder to explore every possibility before choosing one — because it was the first idea that seemed to work.
If you’re not satisfied, neither are we. Bottom line, we want you happy! We will make every attempt possible to resolve the issue if we made a mistake. (It happens). Let us know if our service could b…
A simple print button on the tablet application would allow us to connect to a local or network printer and print the same form data. Why is this still impossible? Why can we still not utilize our desktop or local printers to print receipt data from the app? 
With the Square Stand system, you can use either a cash drawer that plugs into the receipt printer, or one that plugs into the USB block of the Square Stand. Choose the method that suits your business best – but we typically recommend using the receipt printer connection, since this is simpler and far less expensive than the USB version. Note that all cash drawers listed below have special money trays configured for Canadian currency.