Inspiration
Web3 infrastructure providers face the critical problem of slow and expensive cross-chain transactions, hindering the adoption of cross-chain recurring payments and limiting user experience, making cross-chain recurring payments impractical.
What it does
MAJI enables real-time cross-chain subscription payments. It is a protocol that is a factory for any app to create on-chain payment streaming and subscriptions in a cross-chain environment. The creators can take funds from any chain - the subscribers can pay from any chain per second/minute/hour/day/month/etc... We abstract all the complexities.
In particular, we focus on a very specific customer base. Cross-chain money streaming is an excellent use case for Web3 cloud infrastructure payments. Our team combines cross-chain usage-based pricing & real-time streaming to allow infrastructure providers to charge by the second.
Real-time cross-chain subscription payments solve the unique problem of enabling recurring payments for Web3 services, leading to improved user experience, enhanced cash flow, expanded market reach, and fostered innovation, ensuring security, transparency, scalability, and efficiency.
How we built it
The key components of the POC (Proof-Of-Concept) we are building:
-AQUADUC - Cross-chain streaming protocol: A collection of persistent, non-upgradeable smart contracts that together create a protocol that facilitates the streaming of assets that enable to make and collect payments in streams from one chain to another chain per second/minute/hour/day/month/etc...
-Cross-chain checkout builder Web interface built that enables the Web3 business to create and personalize its cross-chain checkout in minutes and export it as JSON file.
-Web interface and dashboard for the Web3 company to check all the checkout created, with the amount collected and being collected, and details from their customers.
-Web interface and dashboard for the customers to check the payments sent and being sent to several Web3 infrastructure providers
For the back-end stack, we used Solidity, we built and deployed on testnet on EVM-compatible chains such as : -Ethereum -Polygon (Matic) -Polygon zkEVM -Avalanche
Our tech stack comprised the following: -Chainlink CCIP: used to enable cross-chain asset transfer -Chainlink Automation: used to programmatically facilitate the streaming of assets that enable making and collecting payments in streams from one chain to another chain per second/minute/hour/day/month/etc...
Challenges we ran into
1. Technical complexity: -Cross-chain real-time interoperability: Ensuring seamless communication and data transfer in real-time between different blockchains with varying protocols and consensus mechanisms requires sophisticated technical solutions. -Scalability and performance: Real-time payments demand high transaction throughput and low latency, which can be difficult to achieve across multiple blockchains with limited scalability. -Security and privacy: Protecting user funds and sensitive data across multiple chains with varying security models adds another layer of complexity.
2. User experience: -Complexity of wallets and interfaces: Interacting with multiple blockchains and managing different wallets can be cumbersome and confusing for users. -Limited compatibility: Not all wallets and dApps currently support cross-chain functionalities.
3. Integrating Polygon ID: We faced issues with integrating Polygon ID. We wanted to integrate Polygon ID once the user is on Polygon POS testnet or Polygon zkEVM testnet, we can do ID/Credential verification before giving access to the Widget Builder or to the demo dapp. Once the user has gone through the verification via Polygon ID he can then access the widget builder to design and parameter his checkout or to the demo dapp to proceed to payments.
Accomplishments that we're proud of
We are proud of the accomplishments: -Build successfully our Cross-chain streaming protocol leveraging Chainlink CCIP and Chainlink Automation powering Real-time cross-chain subscription payments solving the unique problem of enabling recurring payments for Web3 services. When we started we thought it was impractical to make it. -Build the front-end with a simple UI/UX for cross-chain recurring payments that abstracts complexities to interact with multiple blockchains and manage different wallets if necessary
What we learned
-We have learned how to use Chainlink CCIP to build cross-chain Web3 dapps/products -We have learned how to use Chainlink Automation to automate smart contracts -We have learned how to build on Polygon zkEVM -We have learned how to build and use Polygon ID to do ID/Credential verification in our Dapp
What's next for MAJI
First of all, we have to complete the POC we have built and release it officially on testnet with all the features determined by our team for the Beta version, and invite users to use it and share feedback to improve it before releasing the mainnet in Quarter 1 2024 after conducting smart contract audits.
Moreover, we will also solve the business model challenges before releasing on mainnet: -Transaction fees: High gas fees on some blockchains can make real-time payments expensive, especially for microtransactions. -Revenue models: Identifying sustainable business models for cross-chain subscription payments requires careful consideration of fees and revenue sharing.
Built With
- chainlink
- forge
- javascript
- react
- solidity
- typescript
- wagmi
Log in or sign up for Devpost to join the conversation.