Inspiration
The inspiration and idea behind this came while eating some Marco's pizza after I reiceved a coupon in the mail. It was delicious and I wondered how great it would be if instead of the physical gifts, how awesome it would be if they sent you some coins you can use to buy food from them.
What it does
Just like the inspiration from restaurant loyalty programs, the customer pays using Cash App Pay and gets rewarded a percentage in coins, that can be used on their next order.
This platform uses Cash App Pay to collect payments, and in return, you receive a blockchain account topped up with 30% of your Cash App Pay payment. You can also use it to top up your current account with the blockchain asset.
How we built it
The platform is built with 2 major technologies:
- Client: An adapted version of the Cash App web SDK available at Square Developer platform
- Server: A blockchain powered server that manages blockchain transactions and does account management
System's Architecture
Web Application :
Render Square: Sandbox/Production SDK and create the Cash App Pay button and a payment token Process Cash App SDK integration: We send the payment token and amount through the SDK to complete the transaction
Blockchain service powered by Stellar Network:
Scenario 1: No established trustline Create a stellar account: We create a Stellar account with a minimum of 1.5 XLM. Add ERKC trustline: We add ERKC trustline to your account in order to credit your account with ERKC coins. Issue ERKC to new account: We send some coins to your newly created account.
Scenario 2: Account with established trustline We issue ERKC directly to the account with an existing trustline
Challenges we ran into
Since the Cash App Pay integration was pretty new, for example I could not get my merchant account to accept Cash App Pay. When I reached out to Square support, they did something that took my account offline for a day. When it got restored, now Cash App Pay was enabled. Also sometimes, the transaction request fails with a generic error message and when retried, it works smoothly. So that can be challenging since there are some internal things that need to be ironed out with the new SDK that causes a developer to try to find a problem that is not there.
Also the documentation was still pretty new and not as robust so I ended up checking out how things were done with the other more mature documentation to piece together how Cash App Pay works.
On the blockchain side, there is certainly more documentation and especially on the Stellar network so it was more straightforward.
Getting enough community involvement was a little challenging since this is for a temporary product.
Accomplishments that we're proud of
The biggest accomplishment was involving the community and getting them to learn about what goes on behind the scenes with Cash App Pay and Blockchain since both are relatively new and most people do not understand the technologies involved in payments and especially with blockchain.
What we learned
With Cash App Pay, especially around June, there was a learning curve since the documentation wasn't as polished and there were still some things to iron out since for example our account was unable to enable Cash App until I requested support to enable it in the system internally.
On the blockchain side, there was a lot to learn about cryptocurrencies and making a new coin but there is certainly more documentation and especially on the Stellar network.
What's next for Cash App to Blockchain Exchange
The next part of this project would be to turn it into a full platform that helps merchants create loyalty programs for their customers. This would in turn create more repeatable revenue for the merchants.
Built With
- api
- blockchain
- bootstrap
- cash-app-pay
- css
- express.js
- heroku
- html
- javascript
- node.js
- php
- square
- stellar
Log in or sign up for Devpost to join the conversation.