Token-Based NFT Minting System with $KNDX

$KNDX to kNFT Minting System

Our development team put this together for the community to better understand the this token based system works. This smart contract provides a token-based NFT minting system for the Kondux platform. Users can mint a “bundle” of Disclosure Collection kNFTs by paying with a specific ERC20 token (currently $KNDX) rather than paying in ETH directly. The contract references a Uniswap V2 pair to dynamically determine the equivalent token amount needed, ensuring that pricing remains stable in terms of ETH value but flexible in token quantity. Key features include adjustable mint prices, support for special discounts (particularly for holders of a designated “Founder’s Pass” NFT), and the ability to quickly update core configurations.

The contract uses role-based access control (via OpenZeppelin’s AccessControl) to manage administrative privileges. Admins can pause/unpause minting, update pricing structures, manage the NFT minting parameters (such as how many NFTs come in a single “bundle”), switch between standard, discounted, and founder-discount pricing tiers, and adjust references to external contracts (like the NFT contract, treasury, and payment token). The treasury contract receives the payment tokens collected from minters. Additionally, the contract includes emergency withdrawal functions to safeguard against unexpected scenarios.

How the kNFT Mint Process Works:

  1. Price and Discount Calculation:
    When a user attempts to mint, the contract checks whether they hold a Founder’s Pass NFT. If so and if the Founder’s Pass discount feature is active, the user pays the reduced founder price. Otherwise, a regular or discounted price applies.
  2. Token Payment Calculation:
    Instead of paying in ETH directly, the user pays in $KNDX tokens. The contract uses a Uniswap V2 Pair to determine how many $KNDX tokens equate to the set ETH-based price. This ensures fair and dynamically adjusted token pricing.
  3. Treasury and NFT Minting:
    The required $KNDX amount is transferred from the user to the treasury contract. Once completed, the contract mints a predetermined bundle size of NFTs to the user’s address.

Current Token Limitation and Future Plans: As of now, this feature is exclusively limited to the $KNDX token. However, our technology is designed for flexibility. We plan to integrate additional tokens and support multiple minting currencies through our kNFT technology. This will allow for expanded payment options beyond $KNDX and further enhance the versatility of the minting process in future updates.

Admin & Configuration Management:

  • Pausing: Administrators can pause all minting operations at any time for maintenance or emergency handling.
  • Pricing Control: Separate full, discounted, and founder-discounted prices can be updated by admins as market conditions change.
  • Bundle Size: The number of NFTs minted per transaction (bundle size) can be adjusted.
  • External References: NFT contracts, the Founder’s Pass contract, and the treasury contract can be swapped out and reconfigured.
  • Emergency Safeguards: Tokens and ETH stuck in the contract can be withdrawn by admins to maintain operational integrity.


    Deployment Address: 0x1fd8691cc401f9231f6737a51a7d4742f4995e35

Table of Contents