Skip to content

Issue new tokens to a specific holder address.

How minting works

Minting uses the standard Payment transaction with the issuer as the source. When an issuer sends MPT tokens to a holder, new tokens are created (minted).

Unlike traditional minting operations, MPT minting uses the Payment transaction type. When the issuer sends tokens, the supply increases automatically.

Prerequisites

  • You are the issuer of the MPT
  • The destination holder has authorized the MPT (or lsfMPTRequireAuth is not set)
  • You have sufficient XRP for transaction fees

Mint tokens

To mint tokens to a holder, submit a payment from the issuer account:

{
  "payload": {
    "id": "{{intent_id}}",
    "accountId": "{{issuer_account_id}}",
    "parameters": {
      "type": "XRPL",
      "feeStrategy": {
        "priority": "Medium",
        "type": "Priority"
      },
      "operation": {
        "type": "Payment",
        "destination": {
          "address": "rHolderAddress...",
          "type": "Address"
        },
        "amount": "1000000",
        "currency": {
          "issuanceId": "000004C463C52827307480341125DA0577AFFC21D4B2D0831E",
          "type": "MultiPurposeToken"
        }
      }
    },
    "customProperties": {},
    "type": "v0_CreateTransactionOrder"
  }
}

Parameters

FieldTypeRequiredDescription
destinationobjectYesThe holder to receive minted tokens.
destination.typestringYesOne of: Account (internal account UUID), Address (XRPL address), or Endpoint (endpoint UUID).
destination.addressstringConditionalThe holder's XRPL address. Required when destination.type is Address.
destination.accountIdstringConditionalInternal account UUID. Required when destination.type is Account.
destination.endpointIdstringConditionalEndpoint UUID. Required when destination.type is Endpoint.
amountstringYesThe amount to mint (raw integer value).
currency.issuanceIdstringYesThe 192-bit MPT issuance ID.
currency.typestringYesMust be MultiPurposeToken.

Verify authorization before minting

If your MPT has lsfMPTRequireAuth set, verify the holder has authorized the MPT before minting. Minting to an unauthorized holder will fail on-chain.

You can check authorization status by querying the holder's MPT entries.

Response

A successful request returns the transaction order with status Pending. After confirmation, the holder's balance increases by the minted amount, and the total supply increases accordingly.