Please describe your proposed solution.
The ability for users to pay with a credit card is crucial for the large-scale adoption of apps in the Cardano ecosystem. Very few apps in Cardano accept payments with a Credit Card, thereby excluding many users.
Dynamic Strategies is a niche player in the crypto space that develops innovative applications to solve real-world projects. Cardano Beam is a prime example, an app that adds GPS coordinates to NFTs and other assets on Cardano.
When we first started building our app, we realised there was no open-source code to connect web wallets to apps, so we developed one and released it as an open-source repository on Git Hub. Since its release, the repo was forked over a hundred times and received hundreds of starts. Developers turned to it as a go-to repo to start their app journey. This was our first large open-source on Cardano, and it was very well received.
We propose doing the same with the Fiat on-ramp we developed for our Cardano Beam app. We want to open-source it for the wider community to use on their projects.
A project is required to dedicate time to isolate the necessary code from our working product and create a repo that developers can get started with quickly. For this, we will use the most popular full-stack framework, “NextJs” which is a combination of a “React” front end (a leading front-end framework) and a backend similar to the “Express” server (a leading backend)
Focusing on a framework familiar to most developers in Web2 ensures that the largest cohort of developers stands to benefit from this repo and creates a convenient road into Cardano for new developers.
The fiat on-ramp uses a cross-chain bridge which will also be released in this repo. A cross-chain bridge is needed because most payment processors prefer to operate on an EVM blockchain. Therefore when the user makes a payment with their Credit Card, the payment processor will convert that payment into a transaction on an EVM blockchain, and the developer will transfer the asset on the Cardano blockchain using a custom daemon which will be released with the repo.
Target Functionality:
-
Tokens or NFTs are minted on Cardano and placed into a central wallet. They will be distributed from this wallet once the Credit Card payment has been received;
-
A smart contract is created on an EVM network (e.g. Polygon) that references the policy id of the asset on Cardano. This established a link between a smart contract on an EVM chain and an asset on Cardano;
-
The asset is placed for sale on the website with the option for the buyer to pay with a Credit Card, amongst other methods;
-
The buyer chooses to pay with a Credit Card. This opens up a window from the payment processor where the user is asked to go through KYC to validate that they are the Credit Card’s owner;
-
Payment is taken in USD, EUR or other currency of the Credit Card;
-
This payment is converted into the currency of the EVM chain (e.g. Matic in the case if Polygon chain is used) and is sent to the smart contract on the EVM chain;
-
A custom daemon is running in the background and monitoring for payments. Once the payment has been received by the payment processor and sent o the EVM smart contract, it sends the token (or NFT) to the buyer on the Cardano network from the central wallet.
The processing time takes between 1 and 2 minutes, and the transaction is seamless for the client. The client does not notice the difference that this is a Web3 transaction rather than a Web2 transaction.
The developer will have enough flexibility to show as little, or as much of the Cardano blockchain as they wish - to the point that the term blockchain might not be mentioned at all to avoid confusing the less tech-savvy users.
How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?
An open-source fiat on-ramp gives the developer community a starting point of how to charge their customers with a Credit Card. They will have a template in NextJs that they can add to their existing projects, or develop a new one from the repo.
This will increase the adoption of Cardano and bring non-crypto users into the ecosystem.
It will increase the knowledge in the developer community by providing an easy-to-get-started example of a Fiat on-ramp for their business or DAO
The proposal directly addresses the challenge’s success metric:
-
More open-source project - this is an open-source project;
-
Improved visibility and quality of open-sourced projects - the code is being used in production on a live product and has been tested with customer credit card payments.
It also addresses the following Challenge Key metrics:
- Increase the number and quality of open-source projects;
- increase the number of open-source tools and frameworks;
- Increase the visibility of open-source projects;
- Improve adoption of Cardano technology;
- Improve integrations and interoperability between projects;
- Improve the documentation of open-source projects.
How do you intend to measure the success of your project?
The benefits of open-sourcing this for the Cardano app developers are that they get an example code to get started immediately, a tested process that works and a payment processor that pays. The time between deciding to use and being able to accept fiat payments is less than a week.
The project will succeed if we get interest from developers in the ecosystem. Judging from our previous large open-source release, the first wallet connector for web wallets on Cardano, the popularity grew very quickly and we received great feedback from users.
We expect to receive 50+ forks and the same amount of stars on our GitHub repo within 6 months of releasing the open-source repo on Git Hub.
Please describe your plans to share the outputs and results of your project?
The code will be open-sourced on GitHub in the Dynamic Strategies account: <https://github.com/dynamicstrategies> where the community can monitor progress in real-time.
A report on the progress will be written monthly and available to the community.
We will monitor and report on the following KPIs:
- Number of weekly commits
- Total lines of code
- Number of github repo stars (proxy for number of developers monitoring development)
- Number of github repo forks (proxy for number of developers using the code)