Lightning Network enabled Vending Machine
We are inspired by the power of bitcoin to increase economic freedom in the world. To achieve it's full potential, bitcoin needs to be accessible and easy to use. Millions of vending machines are used on a daily basis. Enabling vending machines across the world with an approachable way to accept bitcoin payments is our vision of an effective way to help achieve worldwide adoption.
Our project is a vue.js application that connects an iozeta CryptoVend enabled vending machine to the Bitcoin Lightning Network for receiving payments via the opennode API.
- This app is a payment UI running on a secure tablet connected to an iozeta CryptoVend enabled vending machine.
- The app's simple to use and intuitive interface makes the Bitcoin Lightning Network more user friendly and approachable.
- The app connects to the OpenNode Lightning API to create a payment invoice.
- When the invoice is paid, it notifies the CryptoVend of the payment.
- The vending machine receives the credit notification and then will dispense product once the user makes their desired selection.
Running and Installation
The following are the steps to run your own Lightning Network enabled vending machine:
- Install the iozeta CryptoVend device into an MDB capable vending machine.
- Follow instructions at https://github.com/iozeta/cryptovend-tablet-ui
- Connect a tablet to the same WiFi internet network as the vending machine.
- Start the app on your tablet.
- Tap the "Tap to Start" button.
- Scan the QR code to send a Bitcoin Lightning Network payment.
- Make item selection to dispense the desired product from the vending machine.
Determining how to connect to the Lightning Network on an Android tablet in a robust and reliable way was the most significant challenge we faced. We found that the opennode API was both robust and reliable -- opennode was also very intuitive, making it relatively easy to implement. Thank you opennode.
The media and description of this project is made available to the public under the Creative Commons Attribution 4.0 International (CC BY 4.0) license.