You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/concepts/tokens/fungible-tokens/multi-purpose-tokens.md
+88Lines changed: 88 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,6 +45,94 @@ Every MPT issuance has a set of key properties defined in the ledger as an [MPTo
45
45
46
46
After the MPT is issued, the on-chain data cannot be changed. However, the proposed [XLS-94: Dynamic MPT standard](https://github.com/XRPLF/XRPL-Standards/tree/master/XLS-0094-dynamic-MPT) {% not-enabled /%} would allow fields to be marked as mutable during creation, so that those fields can be changed later.
47
47
48
+
#### Metadata Schema
49
+
50
+
To fit within the 1024-byte limit, MPT metadata must use compressed JSON keys. The following table describes these keys and their corresponding fields:
51
+
52
+
| Field Name | Key | Type | Required? | Description |
| ticker |`t`| String | Yes | The ticker symbol used to represent the token. Must be uppercase letters (A-Z) and digits (0-9) only. A maximum of 6 characters is recommended. |
55
+
| name |`n`| String | Yes | The display name of the token. Any UTF-8 string is permitted. |
56
+
| desc |`d`| String | No | A short description of the token. Any UTF-8 string is permitted. |
57
+
| icon |`i`| String | Yes | The URI to the token icon. Can be `hostname/path` (HTTPS is assumed), or full URI for other protocols. |
58
+
| asset_class |`ac`| String | Yes️ | Categorizes tokens by their primary purpose and backing. See [Asset Class](#asset-class) for more details. |
59
+
| asset_subclass |`as`| String | No | An optional subcategory that is only required if the `asset_class` is `rwa`. See [Asset Subclass](#asset-subclass) for more details. |
60
+
| issuer_name |`in`| String | Yes | Name of the entity issuing the token. Any UTF-8 string is permitted. |
61
+
| uris |`us`| Array | No | The list of related URIs such as website, documentation, and social media. See [URIs](#uris) for more details.|
62
+
| additional_info |`ai`| Object or String | No | Freeform field for key token details like interest rate, maturity date, term, or other relevant info. Any valid JSON object or UTF-8 string is permitted. |
63
+
64
+
##### Asset Class
65
+
66
+
The `asset_class` field categorizes tokens by their primary purpose and backing. These categories help applications understand the nature of the token and its intended use case.
67
+
68
+
| Category | Definition |
69
+
|----------|------------|
70
+
|`rwa`| Tokens representing real-world assets (RWAs), which derive value from legally enforceable claims on physical or off-chain financial assets. |
71
+
|`memes`| Community-driven tokens without intrinsic backing or utility claims, primarily driven by internet culture or speculation. |
72
+
|`wrapped`| Tokens representing assets from other blockchains, typically backed 1:1 by bridges or custodians. |
73
+
|`gaming`| Tokens used in games or virtual worlds, often representing in-game currency, assets, or rewards. |
74
+
|`defi`| Tokens native to or used within DeFi protocols, including governance tokens, DEX tokens, and lending assets. |
75
+
|`other`| Tokens that do not clearly fit into the defined categories. This may include experimental, test, or tokens with unique use cases not covered elsewhere. |
76
+
77
+
##### Asset Subclass
78
+
79
+
When `asset_class` is set to `rwa`, an `asset_subclass` can be specified to provide more granular categorization. This describes what type of real-world asset backs the token and what legal or regulatory framework might apply.
80
+
81
+
| Subclass | Definition |
82
+
|----------|------------|
83
+
|`stablecoin`| Tokens pegged to a stable value, typically fiat currencies like USD, which are backed by reserves like cash, treasuries, or crypto collateral. |
84
+
|`commodity`| Tokens that represent physical commodities like gold, silver, or oil, often redeemable or legally linked to off-chain reserves. |
85
+
|`real_estate`| Tokens representing ownership or claims on real estate, including fractionalized property shares or REIT-like instruments. |
86
+
|`private_credit`| Tokens representing debt obligations from private entities, such as loans, invoices, or receivables. |
87
+
|`equity`| Tokens representing ownership shares in companies, similar to traditional stock or equity instruments. |
88
+
|`treasury`| Tokens backed by government debt instruments, such as U.S. Treasury bills or bonds. |
89
+
|`other`| Tokens that do not fit into the predefined categories, including experimental, hybrid, or emerging real-world asset types. |
90
+
91
+
##### URIs
92
+
93
+
The `us` array contains a list of URI objects, each with a URI link, category, and human-readable title.
94
+
95
+
| Field Name | Key | Type | Required? | Description |
0 commit comments