Zcash Point-Of-Sale

My imaginary use case was a market stall selling vegetables, the owner wants his customers to pay with crypto but doesn't trust his sales people with access to his wallet. It would also work well for a bar, a shop, girl-scouts selling cookies, anywhere that sales are made face to face.

The salesperson uses it on their phone, which connects to a server (ie: a laptop) that the owner leaves running at home. It does simple order processing, checks for payments received & a few other things, but as it can ONLY receive funds the shop owner doesn't have to trust anyone.

Here's a summary of what it does :-

  • No hosting required, works with dynamic dns.
  • Salespeople use their phone, tablet, or a browser.
  • No intermediaries, funds go directly to the owners node wallet.
  • Orders are created in fiat amounts. almost all fiat flavours are supported (updated from Coinlib)
  • A QR code is generated for each sale, the customer scans it with ZECwallet (or any other mobile wallet)
  • Simple messaging between shop users, it can also receive zcash memo's (customer feedback, tips, visitor book, etc)
  • Supports both transparent and shielded (Sapling) payments, also BTC & Lightning

The front-end is Javascript, the server is Perl (yes, I really am that old!) - my intention is for this to be a prototype folks can experiment with, adapt to their own needs and hopefully help it evolve.

Here's a link to the prototype/development site which is running on mainnet :- (https://chilebob.duckdns.org)

The project has been running for a while, here's a link to screenshots, more information & discussion on the forum :- https://forum.zcashcommunity.com/t/zcash-point-of-sale-prototype/33019

I estimate it will take 30 days to finish, mainly because this is a hobby :-)


4 years ago
15 / 15 ZEC
Awarded with 13.35 ZEC bounty
Proposal has been funded
First version (0.1.0) released on GitHub
Maintenance update

Maintenance update

Estimate: July 2019
Reward: 3.75 ZEC
The team was awarded 3.75 ZEC on Aug 24th, 2019, 1:46 am.
Update to address bugs/issues in version 0.1.0