Inspiration

In prior hackathons we've developed products that seem like they could be commercializable, sold in a Software as a Service subscription model with multiple tiers of features/allowed usage. Using traditional web2 payments didn't seem appropriate for web3 projects and would have required a lot of legal overhead to make sure that incorporation documents were all properly in place before being able to present those to a traditional payment processor. This is not in the spirit of rapid prototyping that seeds entrepreneurship. It would be much better if we could set up to accept cryptocurrency for payment in the planned business model and at least test out the market. If it's a strong response that could even bootstrap the company to the point where it's much more attractive to outside investors (if the founders wish to take on such investment). Now, that's more possible and easy to achieve than it was.

What it does

Now, that's possible. Within less than a few minutes, a rapid prototyper/entrepreneur can get set up to receive payment and can have multiple subscription tiers for different feature sets or levels of use (and different prices). They can set up their own web page with advertising and prompt users to initiate the transaction without needing to visit any of our infrastructure, though ours is also available as a backup. Even faster than that, a user can pick which tier they want to subscribe to and prepay for as much time as they want on that subscription. They can add to their balance and easily switch tiers up or down (or cancel out) at any time, and pay only for the time period they were subscribed. The contract is live on the ETC Mordor testnet, the XRP EVM Compatible Sidechain, Scroll's testnet, and possibly others by the time you read this. It contains a lot more powerful functionality than just the highlights covered in our interface.

How we built it

We built it using the Scaffold-ETH starter repository, which is a Next.JS project set up for blockchain Dapp development. This gave us working code to start with, and allowed small changes to each be made and tested to verify that things were still working as expected, producing rapid build-test-learn iterations that really make a difference in a hackathon. We also designed a mobile interface using Figma with the idea that this could also be used for IRL services especially in developing areas that are relying more on cryptocurrencies for regular transactions.

Challenges we ran into

We ran into a few challenges along the way. One was that the Scaffold-ETH dependencies included an older version of the OpenZeppelin dependencies not compatible with the instructions in all the documentation we were looking at; upgrading that fixed the issue. Scaffold-ETH's automatic lint-checking that blocks commits got in the way a few times, as did Microsoft's default policies preventing script execution in the VSCode terminal. We also got held up for a while with challenges getting AWS Lambda functions to work correctly, with the intention of tracking API usage off-chain, and comparing that to the allotments purchased on-chain. We also ran into a problem with a Next.JS dynamic route not properly passing a URL parameter through.

Accomplishments that we're proud of

Having a functional, working project after a short period of time with a team that didn't have a strong background on these specific topics. We're also proud of some clever solutions in the smart contract that help maximize functionality without some of the thorny obstacles associated with paying for gas.

What we learned

Technical skills, new or refreshed with the latest updates, and better use of tools.

What's next for SubsCrypto

There's more work before we'd start advertising it, but the basic functionality for a commercializable product is now running live on at least one network. In terms of revenue model, we have multiple options including a small percentage fee, liquidity staking, other value-added services, etc.

Built With

Share this project:

Updates