not approved
Pay with Credit Card on Cardano
Current Project Status
Unfunded
Amount
Received
₳0
Amount
Requested
₳93,330
Percentage
Received
0.00%
Solution

Open source a NextJs repo with a payment processor and smart contracts to accept credit card payments for NFTs & other digital payments. Sell products to non-crypto users. A working demo is available

Image file

Problem

Cardano needs an open-source repo to accept Credit Card payments for digital products. Very few projects have this on Cardano and, as a result, are missing out on a large market of non-crypto users.

Feasibility
Value for money
Impact / Alignment

Dynamic Strategies

1 member

Pay with Credit Card on Cardano

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)

What is your capability to deliver your project with high levels of trust and accountability?

This solution is already working in production on the Events page of the Cardano Beam app where users can buy NFT tickets to events, pay for them with their credit card and have the ticket delivered to their Cardano wallet: <https://cardanobeam.app/events>

The team has already delivered 2 out of their 3 previously funded catalyst projects, with the third one progressing at pace. The same team will be delivering this proposal. And the team has already open-sourced a number of github repos for Cardano:

  • <https://github.com/dynamicstrategies/cardano-wallet-connector>
  • <https://github.com/dynamicstrategies/cardano-wallet-functions>
  • <https://github.com/dynamicstrategies/cardano-public-graphql>
  • <https://github.com/dynamicstrategies/cardano-nft-minter>

What are the main goals for the project and how will you validate if your approach is feasible?

The project's main goal is to provide developers in Cardano a template of how to integrate Credit Card payments into their projects in under a week.

This project will package the working product into a separate GitHub repo for the developer community to use in their projects. The solution works in production in the Cardano Beam app and sells NFT tickets to events. Users use it to buy tickets to events with their Credit Cards.

Please provide a detailed breakdown of your project’s milestones and each of the main tasks or activities to reach the milestone plus the expected timeline for the delivery.

The project has three milestones over five months.

Milestone 1: Front-end NextJs and Backe-end services

<u>Activities:</u>

Set up the NextJS skeleton

  • Create a front-end with a sample product page for users to purchase goods;
  • Create a back-end that will receive and process payment confirmation from the payment processor;
  • Docker-compose yaml files to run cardan-node, cardano-db-sync, cardano-graphql and cardano-wallet on the server.

Create back-end services:

  • A MongoDB database that keeps the status of a product throughout its life. Starting with payment initiated, to payment received, to token sent and finally, token received in the user's wallet;
  • A back-end service that monitors the EVM chain index for transactions and confirms that payment has been received. This is in addition to the back-end service in NextJs to double-check payment confirmations and reduce the risk of fraud;
  • A back-end service that sends tokens and NFTs from the central wallet to the client.

<u>Expected time to completion:</u> 2 months

<u>Resources: </u>

  • One Senior developer 80h per week for 8 weeks
  • One Junior developer 80h per week for 8 weeks

Milestone 2: Smart Contracts

<u>Activities:</u>

  • Create a smart contract template that links to the policy id of assets on Cardano and into where the payment processor will transfer the payments;
  • Guide how to launch the smart contract on an EVM chain using Remix, monitor its balance and withdraw from the smart contract into the developer’s wallet.

<u>Expected time to completion:</u> 1 month

<u>Resources: </u>

  • One Senior developer 80h per week for 4 weeks
  • One Junior developer 80h per week for 4 weeks

Milestone 3: Payment Processor Connector

<u>Activities:</u>

Set up the payment processor

  • User guide on how to set-up crypto keys;
  • Configure the keys in the front end and back end;
  • Register the EVM smart contract OBI with the payment processor;
  • FAQ on the commercial arrangement.

Refine and Fix bugs

  • Test the repo with a Cardano developer and record feedback and bugs;
  • Address bugs and improve UX/UI where needed;
  • Recommendations for alternative set-ups with blockfrost and Koios instead of running own cardano node and wallet services;
  • Release the repo to the community.

<u>Expected time to completion:</u> 2 months

<u>Resources:</u>

  • One Senior developer 80h per week for 8 weeks
  • One Junior developer 80h per week for 8 weeks

Please describe the deliverables, outputs and intended outcomes of each milestone.

Milestone 1: Front-end NextJs and Backe-end services

Deliverables:

  • A working front-end in NextJs framework with a sample product and a button to purchase and pay with a Credit Card. When a user clicks that button, a new window should appear from the payment processor where the user needs to complete KYC. At the first milestone, only the window needs to pop up; the connection to the payment processor and KYC will be done in milestone 3;
  • A backend service as a NodeJS daemon running in a separate docker container that monitors the status of payments and updates the MongoDB database when payment has been sent to the EVM smart contract;
  • A docker-compose set-up file that the user can use to launch the cardan-node, cardano-db-sync, cardano-graphql and cardano-wallet and MongoDB
  • A backend service as a NodeJS daemon that creates transactions and sends tokens and NFTs from the central wallet to the clients. It will use the cardano-wallet service to send these.

Outputs: Code in a dedicated and open-source GitHub repo

Intended Outcomes: Developers should be able to clone the repo and launch the front-end and back-end service

Milestone 2: Smart Contracts

Deliverables:

  • A template smart contract that references the asset on the Cardano blockchain. When the payment processor sends the payment to this smart contract on an EVM chain, the smart contract mints a temporary token on the EVM chain, giving a queue to send the user the token on the Cardano chain.

Outputs: A manual with code example showing how to launch the smart contract on an EVM chain using Remixn and perform operations to retrieve funds from the smart contract

Intended Outcomes: Developers can set up smart contracts on an EVM chain that reference Cardano assets

Milestone 3: Payment Processor Connector

Deliverables:

  • A guide on how to onboard onto a payment processor. In the guide, we will mention a payment processor with which the team at Dynamic Strategies has had success and the contacts to reach them;
  • The guide will include how to set up the crypto keys and update the front and back end, ensuring that only a particular backend can initiate payments. Then, the EVM smart contract must be registered with the payment processor to ensure that payments are only sent to the authorized smart contract.

Outputs: Documentation in the GitHub repo on how to onboard onto a payment processor and connect it to the front-end, back-end and smart contracts.

Intended Outcomes: Developers understand how to connect the payment processor to the infrastructure built in this proposal.

Please provide a detailed budget breakdown of the proposed work and resources.

Milestone 1: Front-end NextJs and Backe-end services

  • One Senior Developer 20h per week for 8 weeks @ $50/h
  • One Junior Developer 20h per week for 8 weeks @ $20h

Total $11,200

Milestone 2: Smart Contracts

  • One Senior Developer 20h per week for 8 weeks @ $50/h
  • One Junior Developer 20h per week for 8 weeks @ $20h

Total $11,200

Milestone 2: Smart Contracts

  • One Senior Developer 20h per week for 4 weeks @ $50/h
  • One Junior Developer 20h per week for 4 weeks @ $20h

Total $5,600

Milestone 3: Payment Processor Connector

  • One Senior Developer 20h per week for 8 weeks @ $50/h
  • One Junior Developer 20h per week for 8 weeks @ $20h

Total $11,200

The total budget is 28,000 USD

At a price of 0.3 ADA per USD

Total in ADA: 93,330

Who is in the project team and what are their roles?

<u>Project Lead & Senior Developer</u>

Dmitry Shibaev is leading the project. Linked in profile: <https://www.linkedin.com/in/shibaev/>

5 years of experience in big tech delivering large-scale projects on the SAP system at energy companies in the south of Europe

15 years of experience in financial markets at an investment bank in London, Singapore, and Amsterdam. Built and delivered tools to manage the bank’s capital, balance sheet, and trading positions and led large investment projects.

Dmitry has a track record of building open-source community tools:

A wallet connector between DApps and Wallets gives the boilerplate code for new app developers. This is how the Cardano Beam Web App interacts with Cardano web-wallets, and has been open-sourced. The github repo has 100+ stars. The repo has been forked by IOHK

Github: <https://github.com/dynamicstrategies/cardano-wallet-connector>

App demo1: <https://cardanobeam.app/web>

App demo2: <https://dynamicstrategies.io/wconnector>

Dmitry is a Contributor to the Cardano Developer Portal with a quick start guide on how to connect the Web Apps to different Cardano web-wallets

A Public GraphQL endpoint with a web client letting anyone query the Cardano blockchain from their browser or API.

Github: <https://github.com/dynamicstrategies/cardano-public-graphql>

App: <https://dynamicstrategies.io/gqlclient>

Staking Reward Calculator synced to the blockchain that shows how much payout can be expected from different pools and analytics around it

App: <https://dynamicstrategies.io/crewardcalculator>

Cardano Wallet Functions that can be used in React Native apps to communicate with the cardano-wallet backend service

https://github.com/dynamicstrategies/cardano-wallet-functions

Dmitry is proficient in Web2 and Web3. He built the full stack behind Dynamic Strategies https://dynamicstrategies.io and Cardano Beam https://cardanobeam.app

Dmitry was part of the first cohort of Plutus Pioneers. NFT celebrating course completion: <https://pool.pm/asset1357ggsrjp232jwn5g7qqc9zetpsphzdawalgez>

Received recognition for building community tools at Adafolio:

<https://adafolio.com/portfolio/8f7da192-0257-11eb-9684-a45e60be653b>

He is part of a team that operates a Stake Pool on Cardano: Ticker DSIO registered in 2020 and previously received a delegation from Cardano Foundation on three occasions which are usually given for outstanding contributions to the community. Link with pool details: <https://adapools.org/pool/6ae0fb9fc19ad1b82521d6e4b9f6e9bad4d150529673c95c5b5cf4e4>

Active on Cardano forum and Cardano Stack Exchange:

<https://forum.cardano.org/u/dstratio/summary>

<https://cardano.stackexchange.com/users/6196/d-s>

The team has already delivered 2 out of their 3 previously funded catalyst projects, with the third one progressing at pace.

<u>Junior Developer</u>

Vlad Mikirtumov

Aerospace Engineer by education. Experience project manager and test engineer at ASML microchips and HODL funds

Linkedin: <https://www.linkedin.com/in/vmikirtumov/>

How does the cost of the project represent value for money for the Cardano ecosystem?

The project will onboard new businesses and users into Cardano. It will give developers, artists business owners who choose Cardano as their platform an option to charge their clients with a Credit Card, something that few services currently offer on Cardano.

This will make onboarding non-crypto and non-Cardano users onto Cardano much easier and open up a large market of customers.

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00