Font Size:

Cardano Mint Token Tool

Introduction

The Cardano Mint Token Tool is a process plugin that allows you to mint native tokens and NFTs on the Cardano blockchain. It also provides the option to embed additional form data into the transaction metadata according to the CIP-20 standard and NFT metadata according to the CIP-25 standard.

Note:
Ensure that the minter account has enough balance to cover the transaction fees for minting assets.

Get Started

Prerequisites

  • You need a Blockfrost Project Key to interact with the Cardano blockchain.
  • The minter’s account should have a sufficient ADA balance to cover minting fees.

Where to get the plugin

You can download the Cardano Mint Token Tool from the JogetOSS GitHub repository.

How to install

  1. Click Download on this plugin screen (It will be a .jar file).
  2. Go to your Joget localhost or server. In the Joget Console, go to Admin Bar > Systems Settings > Manage Plugins and click the Upload Plugins button.
  3. Under Upload Plugin, select the plugin .jar file you downloaded and click Upload.
  4. Depending on the plugin type, you can now view your new plugin in your form, List, or UI Builder.
  5. Remember to uninstall the old plugin before uploading a new version.
  6. The Joget Knowledge Base has more information on managing and developing plugins.

Configure the cardano mint token tool

To configure Cardano Mint Token Tool properties, go to Settings > Advanced into the Form Builderand in the field post processing tool, select the Cardano Mint Token Tool.

Fields to configure:

  • Network Type: Select the type of Cardano network:
  • Backend Service: Configure the backend service. 
    Type
    • Blockfrost
    • Koios
  • Blockfrost Project Key: Use the Blockfrost Project Key to connect your app with the Cardano blockchain.

Token Properties

  • Form: Select a form from which the minting data will be retrieved. This will make all form fields available for field mapping.

Minting account

  • Account Address: The account's address to mint and possess the freshly minted asset.
  • Account Mnemonic Phrase: This is the minter's account secret key, which is required to perform actions with the minter's account. Only accepts a Hash Variable that points to the minter's encrypted stored mnemonic phrase.
    Caution: Ensure that the Account Mnemonic Phrase is always kept secure. Anyone with access to this phrase has complete control over the account and can cause irreparable damage.

Minting configuration

  • Minting Policy Handling: Select the method for the minting policy upon minting assets:
    • Generate New
    • Reuse
      Note that at the time of writing, the Generate New method only creates a non-locking single issuer minting policy.
  • Enable Custom Policy Script: This option will only appear when Minting Policy Handling is Generate New.
    Check the option to enable a custom policy script.
  • Policy Script (Manual): This property will only appear when Enable Custom Policy Script is Checked.
    Enter your custom policy in JSON format. The use of the Hash Variable is also accepted. If left empty, the default policy will be used.
  • Policy Secret Keys (Manual): This property will only appear when Enable Custom Policy Script is Checked.
    Paste in your custom policy secret key. The use of the Hash Variable is also accepted.
  • Policy ID: This property will only appear when Minting Policy Handling is Reuse. The policy ID is to be reused for minting. Typically, a Hash Variable is used here.
    Note that only non-locked policies can be freely reused. To learn more about minting policy, see Minting policy.
  • Policy Script: This property will only appear when Minting Policy Handling is Reuse.
    It is the policy script associated with the policy ID. Typically, a Hash Variable is used here.
  • Policy Secret Key: This property will only appear when Minting Policy Handling is Reuse. It is the policy secret key associated with the policy ID. It only accepts a Hash Variable that points to the encrypted, stored policy secret key.
  • Fee Limit (ADA): The maximum limit for transaction fees in units of ADA. 
    Note
    Value can only contain a maximum of 6 decimal places.
    If this is empty, no limit is applied.
  • Mint Type: Select the type of asset to mint:
    • Native Token
    • NFT
  • Token Name: This property will only appear when Mint Type is Native Token.
    The token name (e.g.: MyFirstToken)
  • Token Symbol: This property will only appear when Mint Type is Native Token.
    It is typically 3 to 5 characters long, and all letters are in UPPERCASE.
  • Amount To Mint: This property will only appear when Mint Type is Native Token.
    Amount of native tokens to mint.
  • NFT Name: This property will only appear when Mint Type is NFT.
    The NFT name (e.g.: My-NFT-Test).
  • NFT Description: This property will only appear when Mint Type is NFT.
    To describe what this NFT is about.
  • NFT File Name: This property will only appear when Mint Type is NFT.
    This NFT represents the actual file name.
  • NFT File Type: This property will only appear when Mint Type is NFT.
    Select the file type that this NFT represents:
    • PNG
    • JPEG
    • SVG
  • IPFS Content ID: This property will only appear when Mint Type is NFT.

    The IPFS content ID of the file that you have obtained after uploading your file to an IPFS gateway.
    Example: QmeRdF1aybs9VKMYKM8E5tFPW96ngJ8i76Lia763wVtNX6

Additional metadata

  • Metadata: This property will only appear when Mint Type is a Native Token. Fields available here depend on the Form selected. Select the field(s) you wish to embed into the transaction metadata.

    Written transaction metadata follows the CIP-20 standard. To learn more about transaction metadata, see Build with transaction metadata.

    Transactions performed on the blockchain are publicly viewable, including its metadata, as it is intended primarily as an always-accessible proof of existence.

    Do NOT directly embed sensitive information in the transaction metadata.

  • NFT Properties: This property will only appear when the Mint Type is NFT.

    Fields available here depend on the Form selected. Select the field(s) you wish to embed into the NFT metadata. 

    Written NFT metadata follows to the CIP-25 standard.

    Transactions performed on the blockchain are publicly viewable, including its metadata, as it is intended primarily as an always-accessible proof of existence.

    Do NOT directly embed sensitive information in the NFT metadata.

Store minting policy to form

  • Form: Select a form to store information about the newly generated minting policy.

    All fields from the selected form will be available for field mapping in the section below.

Field mapping
  • Minting Policy ID: The policy ID.
    This value will be stored as the record ID of the chosen form.
  • Minting Policy Script: The policy script associated with the policy ID.
  • Minting Policy Secret Key (encrypted): The secret key that signed the minting policy.
    This value is stored as an encrypted value in the database.
  • Minting Account: The account address that is associated with the policy ID.
  • Is Testnet Flag: To indicate if this policy belongs to the mainnet or testnet.

Store asset data to form

  • Form: Select a form to store information about the newly minted asset.

    All fields from the selected form will be available for field mapping in the section below.

Field mapping
  • Asset ID: The asset ID.
    This value combines the policy ID and hex-encoded token/NFT name. This value will be stored as the record ID of the chosen form.
  • Token Name: The native token/NFT asset name.
  • Associated Policy ID: The policy ID that minted this asset.
  • Asset Account Owner: The account address that minted and is first to possess the minted asset.
  • Is Testnet Flag: To indicate if this minted asset belongs to the mainnet or testnet.

Store response to workflow variable

  • Is Transaction Successful: To indicate if this transaction has been executed successfully. Returns true if successful; otherwise, it returns false. You can use this value in your process to route your business logic and fully customize the user experience flow. 
  • Is Transaction Validated: To indicate if this transaction has been successfully validated. 
    This value will typically start with a false value. Only after the transaction has been confirmed/validated on the blockchain will this value automatically be changed to true.
  • Transaction ID: To store the transaction ID of the transaction performed.
  • Transaction Explorer URL: To store an auto-generated URL to see transaction details on the official Cardano blockchain explorer.
    Note that explorers typically have a short delay in syncing to the latest blockchain state to reflect your transactions.

Download plugin

Created by Julieth Last modified by Aadrian on Nov 19, 2024