How to create a cryptocurrency payment system in Node.js
- Cryptocurrency Basics
- Project length: 3h 40m
In this project, we will be looking at creating adding in a cryptocurrency payment system in order to accept payment in bitcoin for an ecommerce type site. This project will be a great example on how to roll your own payments system and what to expect and consider when dealing with Cryptocurrencies. We will be adding to a premade basic ecommerce site all within nodejs and vuejs.
This tutorial will cover all the details (resources, tools, languages etc) that are necessary to build a complete and operational Cryptocurrency payment system You will be guided through all the steps and concepts, starting from the basic ones like setting up the right tools and frameworks to the more advanced topics related to the development. And ultimately you will be able to create your own Cryptocurrency payment system on your own sites with little difficulty.
What are the requirements?
- And the most important is: desire to learn
What is the target audience?
- You want to learn how to accept cryptocurrency payments
- You want to understand how to build on top of cryptocurrencies
Session 1: Setting-up the Environment
- Setting up the programming environment for linux
- Choosing our version of node
- Bitbooks - Our ebook ecommerce site
- Adding Crypto currencies to our payment selection form
Session 2: Creating an orders endpoint
- Adding a POST route to get an order
- Tying it to our frontend
Session 3: The Order model schema
- Creating the order schema for the database
- Adding the routes for our API to interact
Session 4: Querying Bitcoin Price data
- Getting price data from coindesk
- Returning and applying it to our orders
Session 5: Bip39 & HD Wallets
- Looking at Bip39
- Creating a Mnemonic Phrase
- Adding the XPub so we can generate addresses
Session 6: QR Codes and Bip21
- Looking at Bip21
- Creating a QR Code for use with mobile apps
Session 7: Socket.io
- Adding websocket support to our frontend
Session 8: Coin Daemon
- Setting up bitcoind and adding our addresses to watch for
Session 9: Wallet and Block Notifications
- Notifying our api when we recieve a payment
- Updating the frontend via socket.io
Session 10: Wrapping Up.
- Updating our database once we've received enough confirmations
- "Sending the ebook to our customers!"