Last updated
Edit

MPToken

An MPToken entry tracks MPTs held by an account that is not the token issuer. You can create or delete an empty MPToken entry by sending an MPTokenAuthorize transaction. You can send and receive MPTs using several other transaction types including Payment and OfferCreate transactions.

(Requires the MPTokensV1 amendment .)

Example MPToken JSON

{
    "LedgerEntryType": "MPToken",
    "Account": "rajgkBmMxmz161r8bWYH7CQAFZP5bA9oSG",
    "MPTokenIssuanceID": "000004C463C52827307480341125DA0577DEFC38405B0E3E",
    "Flags": 0,
    "MPTAmount": "100000000",
    "OwnerNode": "1"
}

MPToken Fields

In addition to the common fields, MPToken entries have the following fields:

Field NameJSON TypeInternal TypeRequired?Description
AccountString - AddressAccountIDYesThe owner (holder) of these MPTs.
MPTokenIssuanceIDString - HexadecimalUInt192YesThe MPTokenIssuance identifier.
MPTAmountString - NumberUInt64YesThe amount of tokens currently held by the owner. The minimum is 0 and the maximum is 263-1.
LockedAmountString - NumberUInt64NoThe amount of tokens currently locked up (for example, in escrow or payment channels). (Requires the TokenEscrow amendment .)
PreviousTxnIDString - HashUInt256YesThe identifying hash of the transaction that most recently modified this entry.
PreviousTxnLgrSeqNumberUInt32YesThe sequence of the ledger that contains the transaction that most recently modified this object.
OwnerNodeStringUInt64YesA hint indicating which page of the owner directory links to this entry, in case the directory consists of multiple pages.

MPToken Flags

MPToken entries can have the following flags combined in the Flags field:

Flag NameFlag ValueDescription
lsfMPTLocked0x00000001If enabled, indicates that the MPT owned by this account is currently locked and cannot be used in any XRP transactions other than sending value back to the issuer.
lsfMPTAuthorized0x00000002(Only applicable for allow-listing) If set, indicates that the issuer has authorized the holder for the MPT. This flag can be set using a MPTokenAuthorize transaction; it can also be "un-set" using a MPTokenAuthorize transaction specifying the tfMPTUnauthorize flag.

MPToken ID Format

The ID of an MPToken entry is the SHA-512Half of the following values, concatenated in order:

  • The MPToken space key (0x0074).
  • The MPTokenIssuanceID for the issuance being held.
  • The AccountID of the token holder.