I am currently building a POS solution for my company. The hardest part is shopping for the cash drawer as I do not have much experience with them and would prefer a USB cash drawer. I have found a model I am interested in
CR-4005
http://www.thebarcodewarehouse.co.uk/epos-systems/cash-drawers/cr-4005-b/
The supplier includes a driver which can be found here
http://www.posiflexusa.com/driver.php
This allows you to open the drawer etc using a dll file. An example of the codes given are like so:
Public Declare Function OpenUSB Lib "usbcr.dll" () As Long
I have minor experience with C but with google I am sure I could figure this part out.
The issue I am having is that the solution is just effectively a website hosted offsite, what I need to be able to do is from the site issue commands to the client machine using it. So that when they complete a sale I can open the drawer for that particular machine.
What I need to clarify is how I go about doing this. For example, I would assume I install the driver on the client machine and plug the cash drawer in. Then when they access the site I need to execute the C command shown above to open the drawer. The problem i am having is wrapping my head around how this would work. Surely if I execute the command on the server it will effectively be looking at the servers usb ports and trying to open the drawer. Rather than issuing the command to the client machine. Therefore in order to work around this would it be possible to maybe have the c file on the clients machine and then I simply call a file on the site using something like
C:\Windows\execute.bat
Which in turn calls the c file on the client machine.
I understand I don't have a lot of information to provide as I am trying to figure this out before going ahead with the purchase and I am probably over complicating this but any pointers or info would be most appreciated. Also I am not completely set on this model, so if you know an alternative with some good documentation or an existing solution, I am open to this also.
Notes
I understand there could be a possible solution with chrome api calls
I could potentially install xampp and create a simple php files that calls an exe which does the necessary work. Therefore maybe accessing a local address on the client machine could be another potential idea (ie 127.0.0.1/open.php).
Update
My Website including the POS side of things is built and ready to go. This is built using PHP and is hosted on an external server. We access the site via a domain.
When the user performs a specific action on the external site, it needs to open the staff members local till drawer either by opening a local file (ie an exe that can open the drawer) or by accessing say a local webserver on the machine ie localhost/open.
The till drawer is the one listed above and it is connected via USB to the clients machine. No receipt printer is used.