We were inspired by a local pool bar in our hometown of Hamilton, Ontario. The pool bar charges per hour, but it's difficult to enforce and harder to verify. We saw the Ripple pitch about microtransactions, and were inspired to find a way to utilize micro-transactions in cryptocurrency so that institutions can charge their customers based on their usage of a specific resource! This way, companies wouldn't have to worry about logging times, or enforcing payment, or policing exit status. All that you would need to do is to enter the venue or event, and exit at the appropriate time. You would then be charged based on your usage (i.e, how long you spent at the event).
A use-case for this would be time spent at an arcade or at a pool bar. Instead of "paying by the hour", or paying up front to rent a table for x amount of hours, you would just scan a QR code, start playing, and then scan another code when you were done playing. The interledger protocol would stream XRP or any other cryptocurrency in microamounts, charging them for exactly the time they spent there, down to the second.
What it does
It's a react-native mobile application for iOS and Android that you can use to initiate payments over a secure, inter-ledger server. There are innumerable use-cases for this, including:
- Paying for time spent at an arcade
- Paying based on time spent at an Amusement Park
- Paying for how long you spend on a public bike
- Paying for any other time-based subscription fee
How we built it
We created an instance of a MoneyD server, and set that up as a the payment recipient. Then we ran another server in conjunction with that on a Node server hosted on our react-native app, that communicated and could send payments upon a triggering event (i.e, scanning a QR code or entering a specific location). That way, we had a channel to send payments from a customer to a recipient.
Challenges we ran into
Hosting a server on our react-native app was something that we had never done before, and proved to be very challenging. We tried a number of different technologies, including electron and a few others before deciding on Node.js
Accomplishments that we're proud of
We're very proud of our frontend, and how we created a seamless experience on both Android and iOS. We're also proud because this is all of our first time's using cryptocurrency
What we learned
We learned a lot about crypto, as well as how servers communicate with each other! It was one of our member's first hackathon experiences, and he also learned a lot about mobile development.
What's next for TouchPass
TouchPass hopes to be fully native to both iOS and Android soon! Doing away with react-native means we can exploit more of the potential of native apps and the features unique to both platforms. We also hope to make a site so we can host payment recipient servers for companies.