Payment Links on Neo. Create a full payment page in just a few clicks and share the link with your customers—no code required.
DEMO: Neocash.io
Hello, my name is Aymeric and for this hackathon, I decided to create a truly great donation app on Neo in the likes of Stripe Payment Links. Indeed, a lot of people want to quickly sell products or services online without having to set up a website. Neocash allows you to create full payment page in just a few clicks and share the link with your customers—no code required.
The app is running live on neocash.io. Right away you can see the care that has been given to the design of the app. Inspired from Stripe, I wanted to make Neocash look really clean and professional. Click "Create New Payment Link" and you will see a beautiful form to fill all the data of your product or service. First, let's upload an image. Note that I'm using IPFS to upload and store images so that the app is fully decentralised. Once the image is uploaded, it is immediately displayed on the form, so you can see what your payment page will look like. Enter a title and description for your product, then set up the price. You can currently only choose between NEO or GAS but I will later implement some NEP-17 tokens. Finally, enter your recipient NEO N3 address. That's all! Your link is now ready to use. How easy is that? Note that the link is automatically generated as you fill the form. For instance, if I change my address, you can see that the link changes too. Everything is encoded into the url, even the image, so you can actually change data directly in the url if you want to. You can now give this url to anyone to get paid, let's open it.
Once again, note the pixel-perfect design of the page. Your client can see the image, title, description and price of your product or service. I also added a dollar equivalent using the CoinMarketCap API so your clients know exactly how much they are paying. Note that I have integrated the app with the Neoline wallet for in-browser payments so you'll need to install it first. Click Pay. The Neoline wallet opens. Confirm the payment, and if everything goes well, the page shows that the payment is successful. You can check the transaction on Neoline to confirm it.
Now, why not go a little further with a new inovative feature. Wouldn't it be great to easily pay or tip anyone on twitter, facebook or youtube? Well, here it is, the Neocash chrome extension. Add it to your Chrome by clicking 'Load unpacked extension' and selecting the folder src/chrome-extension/build. The Neocash extension appears in your Chrome. Now let's go on Twitter.
Next to every tweet, you can now see a new icon showing a hand offering money to illustrate tipping. This icon is injected into twitter by the chrome extension. Now let's say I really like this tweet and want to tip its author, I can click this tip icon and it will open a preconfigured Neocash payment link. There I can send 1 GAS to this person. But wait, we don't know the NEO N3 address of that user. The Neocash page indeed shows that it has no N3 address for that user. Something was needed for authors to link their wallet address so I've develop a revolutionary way of doing so! Click here and the linking page open. To link an N3 address to your twitter username, create a new tweet that displays your N3 address. Then copy the tweet url and enter it in Neocash. The app will send your tweet url to the smart contract which uses a NEO oracle to request the twitter API and fetch the content of the tweet. The smart contract will then save both your twitter username and your NEO N3 address inside the smart contract. It's easy and tamper-proof, nobody can link an address except the owner of the twitter account. For info I've had some issues with the NEO oracles there because I could not find a way to include a get header into the oracle request. The twitter API indeed needs to input a bearer token into the header of the request. So I've coded a pass-by server that gets the request URL from the oracle and injects a header in it before redirecting to the twitter API.
Now if I refresh the payment page from before, Neocash will automatically fetch the data from the smart contract and fill in the saved N3 address for that author. Anyone can now tip or pay that twitter user. I'm currently implementing the same system for facebook and youtube so it will be super easy to tip you favorite creators. Even youtubers that get their videos demonetised by youtube can now get paid for those. There are no limit, we could implement it for all social platforms like reddit, 9gag, instagram and so on... making it the ultimate tipping and payment platform!
Log in or sign up for Devpost to join the conversation.