Bitcoin Forum
April 23, 2024, 11:19:57 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: [POS] Easy POS implementation of bitcoin  (Read 1987 times)
mav (OP)
Full Member
***
Offline Offline

Activity: 169
Merit: 107


View Profile
June 28, 2012, 10:22:52 AM
Last edit: June 29, 2012, 12:44:24 AM by mav
 #1

This project is an easy way for POS operators to have a useful interface to bitcoin other than fiddling around with the official client. Just press F2 and a qr code is displayed for your customer. It automatically detects payment and minimizes. No fiddling around, just a nicely integrated additional pos feature.

Bitcoin QR Popup

https://github.com/thedawnrider/bitcoin-qr-popup

Press F2 and see this:


Usage

Press F2
- a QR window appears
- the pos operator enters the amount of the sale in their local currency. This is automatically converted to BTC and the qr updates with this value.
- the customer scans the qr code and pays for their items.
- the application automatically detects payment and prompts the operator when the payment arrives.
- when the operator acknowledges the prompt saying payment has been received, the window disappears to resume regular pos operation.

Press F3
- a short history of transactions displays, making it easy to verify if the most recent payments were actually received. Probably not that useful, but if a customer 'claims' to have paid but hasn't, it's nice to be able to easily check.

Details
- Must have a local copy of bitcoin - remote support will take extra time to integrate.
- Must have internet access on the pos machine.
- Must be a windows machine. From my observations, most pos systems are windows-based.
- Bitcoin must be running in daemon mode (bitcoind.exe)
- This app won't run unless using an encrypted wallet. Forcing responsible practices on users? Better than the alternatives.
- Uses openexchangerates.org for hourly updated currency exchange rates. (164 different currencies available)
- Uses 24h weighted USD price from bitcoincharts.com for bitcoin exchange rate.
- Uses zero confirmations. There is no check for 6 confirmation, but adding this one hour after the transaction shouldn't be too hard to add.
- Only in English at this stage, I would love to translate this app to many languages. Google translate supports... something like 50 languages.
- Requires the .NET framework.

Roadmap
- Unit tests
- Better error handling, especially if bitcoin stops unexpectedly and the app is still running
- Translations to other languages.
- Remote bitcoin client access.
- Support mac and linux.

I imagine this will be mostly of use to small businesses who have a 'one computer fits all' type situation, such as my mechanic. It wouldn't take too much to extend it to remote access which makes it more attractive to stores with multiple pos terminals.

For the technically inclined who wish to review the code, please not that C# is not my native language, I'm a python web developer. Thus, I'd appreciate your input. If you would like to submit changes please send me a pm. Note that I had to modify bitnet to include a call for walletpassphrase as a way to check for an encrypted wallet, so the source code included in the bitcoin-qr-popup repository is slightly different to the official release for bitnet. This app has had a minimal manual test on Windows7 and XP.

If you use this app or want to see more like it, donations to 1FiVXpdBdcnv6GAVZDKRxeSJqZQrSx2s2Q are always welcome. I live in Melbourne so if you want some help getting it set up and you're in Melbourne I would be happy to help out.

As a final note, this is really just a new take on the official bitcoin client. I have a keen interest in UI and UX and this project is simply a different way to visualise and interact with the official bitcoin client. I hope it is of use to some people out there. Hopefully this project can inspire similar ideas and we can see some more pos acceptance of this fine currency.
1713914397
Hero Member
*
Offline Offline

Posts: 1713914397

View Profile Personal Message (Offline)

Ignore
1713914397
Reply with quote  #2

1713914397
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713914397
Hero Member
*
Offline Offline

Posts: 1713914397

View Profile Personal Message (Offline)

Ignore
1713914397
Reply with quote  #2

1713914397
Report to moderator
1713914397
Hero Member
*
Offline Offline

Posts: 1713914397

View Profile Personal Message (Offline)

Ignore
1713914397
Reply with quote  #2

1713914397
Report to moderator
Xenland
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
July 01, 2012, 02:47:43 AM
 #2

Excellent!
mav (OP)
Full Member
***
Offline Offline

Activity: 169
Merit: 107


View Profile
July 01, 2012, 04:00:50 AM
 #3

I was all into this, then I saw it was written in C# and I was like NOOOOOOOOOOOOOOOO at least write it in java same thing but better!

Good start just needs to be converted to a better language.

Yes, agreed, java would be nicer than C#. But I have used C# a little in the past (never used java) and I know that I can get Visual Studio for free and how to use it, so I just went with it for the quick hack. If it's a useful enough app it will soon enough be ported to java to satisfy those who want that. To learn java would have defeated the purpose of this project. C# is good enough, heck, it's a native Windows app, if C# isn't good enough I'd be worried.

I encourage you to write a compelling reason for prospective users to use a java version over this C# version and I'm sure someone will take it up and port the code over. This is a very simple app and potentially very useful.
MelMan2002
Sr. Member
****
Offline Offline

Activity: 461
Merit: 251



View Profile
August 07, 2012, 01:21:01 AM
 #4

At my POS currently the screen is facing the employee.  If I were to do this I would want to get a second monitor that faces the customer.  But when I press F2 will the program always come up on my primary monitor or will it come up where it was last placed?  It would be very troublesome to have to drag it back to the primary monitor to input the total.

I guess ideally I would want it to pop up on both screens at the same time - the one facing the customer could just be a mirror image of the one that I can manipulate on my primary monitor.


In any case, any workarounds to getting this to work in my situation?  I guess I could just mirror the desktop all the time and just turn the second monitor on and off but that seems like a clunky solution.  I know there is an app (not free Sad ) called "Actual Multiple Monitors" that will put a button in the title bar that will let you mirror a window into the second monitor but from looking at their website it doesn't look like you can automagically have that window always mirrored which can be confusing for minimum wage employees...but maybe not.  I'm probably over-thinking it...

19F6veduCZcudwXuWoVosjmzziQz4EhBPS
mav (OP)
Full Member
***
Offline Offline

Activity: 169
Merit: 107


View Profile
August 08, 2012, 03:48:21 AM
 #5

At my POS currently the screen is facing the employee.  If I were to do this I would want to get a second monitor that faces the customer.  But when I press F2 will the program always come up on my primary monitor or will it come up where it was last placed?  It would be very troublesome to have to drag it back to the primary monitor to input the total.

I guess ideally I would want it to pop up on both screens at the same time - the one facing the customer could just be a mirror image of the one that I can manipulate on my primary monitor.


In any case, any workarounds to getting this to work in my situation?  I guess I could just mirror the desktop all the time and just turn the second monitor on and off but that seems like a clunky solution.  I know there is an app (not free Sad ) called "Actual Multiple Monitors" that will put a button in the title bar that will let you mirror a window into the second monitor but from looking at their website it doesn't look like you can automagically have that window always mirrored which can be confusing for minimum wage employees...but maybe not.  I'm probably over-thinking it...

Good point, I will have a look at this when I get a chance. Might be some time away to get this functionality but this is a great point. Having a separate client-facing and employee-facing window is important, especially so the 'paid' notification pops up in the right place, and the windows return to the same position each time without having to reposition them. Thanks for the suggestion.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!