# How it Works

Crypto Factor’s service employs a sophisticated system of contracts to facilitate the minting (DFI -> cDFI) and redemption (cDFI -> DFI) of its receipt token, cDFI. This process utilises automated routines for token handling between DVM and EVM environments and maintains Native Masternodes within the secure Crypto Factory, which is Crypto Factor’s proprietary Masternode management environment.&#x20;

The primary objective of this service is to provide a DefiMetaChain access point for Native staking. This solution is entirely developed by Crypto Factor, making it a DMC-first system that does not rely on third-party providers.

Although the solution operates as a decentralised hybrid, some autonomous routines are managed by Crypto Factor’s infrastructure, while still being trust-minimised. Importantly, this is not a custody service; DFI is swapped to cDFI, and the staked token is cDFI, which maintains a 1:1 lock with rewards paid in DFI.

**Processes include:**

<mark style="color:blue;">**Deposit**</mark>

• Minting cDFI: The service facilitates the swap from DFI to cDFI, necessary for obtaining Masternode Rewards from the Native DeFiChain layer. Minting ensures the continuous availability of cDFI for swaps without constraints.

• User Process: Users deposit DFI and receive cDFI (1:1) minus a mint fee. If there are cDFI in the redemptions queue, requests are first fulfilled from this pool, optimising the mint process and reducing redemption waiting times. This reciprocal service benefits both those minting cDFI and those redeeming DFI.

• cDFI Use Cases: Primarily, cDFI is used for staking to earn a share of Masternode rewards. The Staking contract operates under standard non-multiplier staking, with rewards directly from the Crypto Factory.

<mark style="color:blue;">**Factory Automation Routines**</mark>

• Create: When the mint queue accumulates batches of DFI exceeding 20,000, they are sent to an EVM address and transferred to the Crypto Factor’s Masternode Factory. Here, new Masternodes are created on-demand, enabled, and rewards are generated. These rewards are then distributed to the staking contract, where they are shared among cDFI stakers. All DFI within this service (minus fees) are allocated to the staking pool for community stakers.

• Resign: If cDFI in the withdrawal contract reaches a 20,000 threshold, an automated routine triggers the resignation of a Masternode. After the wind-down, the DFI is returned to the withdrawal contract for redemption claims by cDFI holders who triggered the threshold requests. The resignation process adheres to standard DeFiChain procedures.<br>

<mark style="color:blue;">**Redemption**</mark>

• First Tier: DFI is immediately available from the Mint queue (fluid float).

• Second Tier: If needed, DFI is retrieved from the Crypto Factory upon meeting the Masternode resignation threshold. Once the threshold is met, the resignation routine is triggered, making DFI available for claim through a Proportional Redemption Model (PRM).

<mark style="color:blue;">**Rewards**</mark>

• Distribution: Rewards stem from the output of the Crypto Factor Masternode Factory, equivalent to the sum of the Masternodes in operation minus the Node Operators fee. Rewards are directly sent to the Staking Service for cDFI stakers to claim.

• APR Benefits: If not all cDFI is staked (higher DFI collateral vs. cDFI in staking), the APR for this service may exceed the standard Masternode rewards rate. This feature becomes beneficial when cDFI is used for purposes beyond staking.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.crypto-factor.io/crypto-factor/cdfi-ecosystem/cdfi-community-staking/how-it-works.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
