After looking at several POS systems and not finding anything that met our needs, I hired a local dev company to build a POS system using Ember-electron front-end and a Solidus/Rails API on the backend. We extended Solidus to support a buying process and customer credit. That project was then handed to me to finish and bring in to production. I failed dearly. I was in way over my head trying to get this all working. I can maintain code, but I can't craft a thing like that. By sheer luck and connections I found a fantastic developer who we hired to finish and continue developing the system. She continues to develop and extend the system and It's been working really well.
The physical terminals are NUCs with Elo Touch screens and Cherry industrial keyboards. NUCs run Elementary OS, and we have our custom Ember-electron POS app running on there that talks to the API running on AWS. The terminals have 2D barcode scanners, and print to various networked printers for receipts, trade slips, hangtags, and price stickers. They're also semi-integrated with our keypad terminal for card transactions. The backend is a JSON API built on Solidus core.
If you have any questions, let me know.