Back

Fireblocks Integration Case Study - Minto.finance

Minto Finance Fireblocks integration case study banner
Minto Finance logo

Minto Finance

CloudMining

Wallet

Gasless transactions, Web2 user onboarding, and in-app purchases were brought to Minto through Firebase integration, significantly optimizing the user experience. These features simplify access to cloud mining for users unfamiliar with blockchain technology, making participation straightforward and engaging. Read more in this case study.
Total tokens staked - $2 823 448
Total profit of token owners - 58.22BTC
Total mining power - 144 000TH/s
Technology Stack:

Python

Fireblocks SDK

React

Django

Celery

Docker

PostgreSQL

Table of contents

Client Overview

Minto is a decentralised platform that tokenizes mining power through its hashrate token, BTCMT. Each BTCMT token corresponds to a unit of operational mining power, enabling users to participate in Bitcoin mining without the complexities of managing physical hardware. The platform offers access to mining power within a transparent framework, where the token's value is directly tied to the revenue generated from mining activities. This model not only simplifies entry into the mining sector but also aligns investor interests with the performance of the mining operations.

Business Objectives

The primary objective of Minto was to lower the entry barriers for users unfamiliar with web3 technologies and blockchain mechanics. The aim was to simplify the overall user experience and foster broader adoption of the platform. To achieve this, the project focused on:

  1. User-Friendly Onboarding: Streamlining the registration process to make it accessible for users without technical backgrounds, ensuring they could easily navigate the platform.
  2. Enhanced Transaction Processes: Integrating solutions that simplify transactions, enabling users to engage in operations such as buying and exchanging tokens without requiring extensive knowledge of wallets or blockchain mechanics.
  3. Feature Expansion: Implementing new functionalities, including staking and in-app governance through DAO voting, to provide users with a comprehensive and engaging platform experience.
  4. Operational Accessibility: Ensuring that all transactions, while requiring necessary confirmations, were facilitated in a way that minimizes complexity for users, allowing them to focus on their activities within the platform.

Rock’n’Block was tasked with delivering these enhancements to support Minto's goal of making BTC mining more accessible to a broader audience.

Functional requirements:

In close cooperation with the Minto team, we defined the following functional requirements to enhance the platform's user experience and operational efficiency:

User Account Management

The platform shall support user account management with multiple registration options. Users should be able to create accounts using email, social media accounts, or crypto wallets. To ensure security, two-factor authentication (2FA) shall be implemented to protect user accounts.

Token Purchase Options

To facilitate user engagement, various methods for purchasing BTCMT tokens shall be available. Users should be able to buy tokens with credit cards or through cryptocurrency invoices. Additionally, the platform shall allow token swapping via decentralized exchanges (DEX) to enhance liquidity.

Gasless Transactions

A significant feature of the Minto platform shall be the implementation of gasless transactions for users with generated wallets. This functionality shall enable users to conduct transactions without needing a balance of native tokens for gas fees, simplifying the overall user experience.

Asset Operations

Users shall have the capability to perform essential asset operations, including sending and receiving tokens, staking assets, claiming rewards, and unstaking tokens. These functionalities are critical for fostering user engagement with the platform.

Transaction History

To promote transparency and build user trust, the platform shall provide access to transaction history, allowing users to track their activities and manage their assets effectively.

DAO Voting Participation

The platform shall empower users to participate in governance by voting on decentralized autonomous organization (DAO) proposals. An intuitive voting interface shall facilitate user engagement in governance processes, ensuring their voices are heard in the Minto ecosystem.

Solution overview

Here’s the refined overview focusing solely on the purchase process for BTCMT tokens, emphasizing the integration with Fireblocks and the overall system functionality:

1. Authentication and Account Management Overview

Account Creation

Registration Process: Users register by providing their email, password, and confirmation. The registration process is supported by Firebase for secure user management. If a user attempts to register with an email that already has a profile, an error message is displayed, and registration fails. If the user tries to register with an existing social account, they will be redirected to log in instead.

Upon successful registration, the system communicates with Firebase to create the user account. The user then sees an "Account Created" screen before being redirected to the main page. Following this, the backend calls the Fireblocks API to create a new Vault account for the user, specifying optional parameters such as account name, visibility, customer reference ID, and auto-fuel settings.

Two-Factor Authentication (2FA): Users who opt for 2FA receive instructions to set it up using an authenticator app. After entering the verification code, 2FA is enabled for their profile and required for future logins.

Wallet Creation

After registration, the backend automatically creates an asset wallet for the user using the Fireblocks API, initially supporting currencies like BNB, BTC, and USDT. Users see their wallet address and a QR code upon creation.

Account LoginOptions

Users can log in via email and password, social accounts, or by connecting their wallets. Email login includes a maximum of three password attempts, after which the account is temporarily locked for five minutes.

Password Recovery

Users can recover forgotten passwords through Firebase. After entering and confirming a new password, they must log in manually, as automatic authentication is not permitted.

2. Purchase Module Overview

Purchasing BTCMT Tokens

Users can purchase BTCMT tokens through three methods: by card, with crypto via invoice, or from an exchange.

Purchase by Card

When users select the card payment option, the system redirects them to the Fiat Gateway payment page. Users specify the currency and amount for their purchase, and the payment gateway receives the recipient's address corresponding to the BTCMT token purchase contract. Upon confirmation of the payment, the system waits for a response from the gateway regarding payment execution. If successful, the funds transfer from the gateway to the BTCMT purchase contract on Minto, executing the purchase and sending the BTCMT tokens to the user’s specified address. The Fireblocks API facilitates the transaction details, ensuring accurate processing.

If the payment fails, the system displays an error message prompting the user to try again.

Purchase for Crypto via Invoice

For crypto payments, users are directed to the dedicated Buy BTCMT Crypto page, where they select the currency options, such as BTC, ETH, BNB, USDT, and USDC, along with the payment amount. The system presents details like the purchase amount, gas fees, and referral bonuses, if applicable.

After confirming the purchase, the system sends a request to the invoice module, which generates a payment address valid for a set duration (TTL). Users complete the transaction by sending the specified amount to the generated address.

The invoice module monitors payment progress, validating whether the full amount is received. The Fireblocks API plays a critical role by relaying information regarding transaction status and account balance replenishment to the backend. The invoice’s status reflects whether it is pending, completed, or canceled based on payment conditions.

If users encounter any issues during the transaction, the system prompts them with an error message.

Purchase via DEX  

When users opt to buy BTCMT tokens from an exchange, they are redirected to the Buy BTCMT Exchange page. Here, they specify the currency and payment amount. The system compiles transaction parameters and communicates with the Fireblocks API to sign and publish the transaction on the blockchain. After a successful execution, BTCMT tokens are sent to the user’s address, and the system updates the user with purchase completion details.

If the DEX transaction fails, the system displays an error message encouraging the user to try again.

Post-Purchase Actions  

Upon a successful purchase, the system updates the user’s balance via the Fireblocks API and notifies the user of their newly acquired tokens. Users receive options to stake their tokens or defer their decision.

If users choose to stake, the system prepares the transaction parameters for the Fireblocks API, which handles the signing and execution of the staking transaction. The system processes the details and confirms the staked status to the user.

If any transaction fails during this stage, the system displays an error message prompting the user to attempt the process again.

3. Gas Station Module Overview

The Gas Station module is a critical component designed to simplify gas fee payments during user transactions, such as buying, sending, withdrawing, staking, and unstaking tokens. Its primary function is to automatically manage gas payments, allowing users to focus on their transactions without worrying about the underlying costs associated with network fees.

When a user initiates a transaction, the system automatically calculates the total transaction amount, dividing it into two parts: the amount intended for the transaction and a small portion that serves as a commission for the administrator. This commission is crucial for maintaining the Gas Station's functionality and is sent to a special funding address created specifically for this purpose.

One of the key features of the Gas Station module is the auto-fuel parameter. When activated, this feature ensures that gas fees are automatically covered from the user's account, making the transaction process seamless. Users don’t need to take any extra steps to manage these fees; the system takes care of everything behind the scenes.

By automating gas fee management and simplifying the payment process, the Gas Station module enhances the user experience, making it easier for individuals to engage in various transactions without the stress of managing gas costs manually.

4. User Transactions Module Overview

Send Transaction

Users initiate a send transaction by selecting a currency from their balance. The system verifies that the user has a balance greater than zero for the selected currency. The transaction parameters, including recipient address and amount, are submitted to the Fireblocks API for processing. The system calculates the estimated gas fee using the Fireblocks API and handles the transaction signing via the Vault. Once the transaction is executed, the system requests confirmation of the transaction status from Fireblocks.

Stake Transaction

Users select a staking type and specify the deposit amount. The system retrieves the user's BTCMT token balance from the Fireblocks API. Transaction parameters are sent to Fireblocks for processing after confirmation, and the tokens are transferred to the staking contract. The system follows up with a request to Fireblocks for execution confirmation.

Claim Rewards

To withdraw accumulated staking rewards, users input the desired claim amount. The system collects the necessary transaction parameters and sends them to Fireblocks. After processing, the system requests confirmation of the transaction execution from Fireblocks.

Unstake Transaction

Users can withdraw tokens from staking by entering the amount within the allowable limits. The system collects the unstake transaction parameters and submits them to Fireblocks for processing. The system then retrieves the transaction execution information from Fireblocks.

Receive Transaction

The system facilitates the receiving of tokens by generating a wallet address and QR code for the user. Upon receipt of tokens, Fireblocks sends execution information to the system, which updates the user's balance accordingly.

View Transactions

The Token page displays the transaction history by querying the Fireblocks API for transaction data. This includes all transaction types, such as sends, receives, stakes, and withdrawals, sorted by date. Users can request detailed transaction information through the Fireblocks API for each transaction.

Results and Outcomes

The integration of Fireblocks into Minto's platform resulted in several significant outcomes that reflect the project's innovative approach:

  1. Enhanced User Experience: The onboarding process was streamlined, making it more intuitive for users new to blockchain technology. This transformation contributed to a notable decrease in registration drop-off rates.
  2. Increased User Engagement: By implementing gasless transactions and offering various purchasing options—such as credit cards, crypto invoices, and decentralized exchanges—Minto was able to foster greater participation among users, driving up both token acquisition and governance involvement.
  3. Seamless Transaction Processes: The secure and efficient integration of Fireblocks ensured that token purchases and asset operations were executed smoothly, allowing users to navigate the platform with ease.
  4. Innovative Solutions for Gas Fees: The introduction of the Gas Station module simplified the management of gas fees, allowing users to focus on their transactions without the burden of associated costs.

“At Rock'n'Block, we take your blockchain ideas
and turn them into tangible, innovative solutions."
“At Rock'n'Block, we take your blockchain ideas and turn them into tangible, innovative solutions."
Get a Free consultation
Product manager | Rock’n’Block
To:
Rock'n'Block logo
Rock n Block
This site is protected by reCAPTCHA and the Privacy Policyand Terms of Service apply.
done
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Next case

Concentrated Liquidity DEX Development

BeamSwap

CLAMM, multiple fee tiers, non fungible liquidity, and range orders – read our case study about Concentrated Liquidity DEX Development - BeamSwap v3

Technology Stack:

DPoS blockchain and Infra

CratD2C

We partnered with CratD2C to develop a comprehensive blockchain ecosystem aimed at transforming industries like e-commerce, real estate, and luxury services. Our team helped launch essential features, from token creation and ICO sales contracts to developing a DPoS blockchain, staking mechanisms, and a DEX. The project raised $1.5M and passed critical security audits, setting the stage for a scalable and efficient platform.

Technology Stack:

CLAMM

Bot

Marketplace

Collection

Explorer

NodeService

Launchpad

Social

P2E

CloudMining

Wallet

RealEstate

Commodities

Farming

LSD

DPoS

DEX

Golang

Wagmi

Next.js

Hardhat

Truffle

IPFS

Ethers.js

Mercurio

Firebase sdk

Nginx

Docker

Redis

Celery

Material UI

Redux

PostgreSQL

Django

Fireblocks SDK

TypeScript

Python

React

GraphQL

Solidity

closeChat with us

Let's Connect and Innovate Together!

Reach out to our team

WhatsUp
Contact in Telegram
Book a call
Office image
TEC Business Center FZE Level 3, The Offices 3, One Central, World Trade Center Dubai - UAE
Seoul - South Korea: 5th floor, 40, Godeok-ro, Gangdong-gu
twitterTelegramFacebookLinkedin
To:
Rock'n'Block logo
Rock n Block
This site is protected by reCAPTCHA and the Privacy Policyand Terms of Service apply.
done
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Rock'n'Block logo
© Copyright Rock’n’Block 2024
Privacy Policy