Skip to content

Conversation

oeggert
Copy link
Collaborator

@oeggert oeggert commented Aug 20, 2025

Updated MPTTokenIssuanceCreate and MPTokenIssuanceSet transaction docs to include DomainID field. Also added additional error codes.

Copy link
Collaborator

@mDuo13 mDuo13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To be clear, this is set to go into rippled version 3.0.0, not version 2.6.0 which is the next planned release?

Comment on lines 64 to 65
| `temDISABLED` | Either the `PermissionedDomains` or `SingleAssetVault` amendment is disabled. |
| `temMALFORMED` | The `DomainID` is `0` or empty; you can also receive this error if you include a `DomainID` without setting the `tfMPTRequireAuth` flag. |
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see some other error codes that can occur in the source, such as tecINSUFFICIENT_RESERVE and temBAD_TRANSFER_FEE.

Copy link

@Bronek Bronek Aug 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure how the reader will interpret ... or empty. The DomainID is an optional field, many users might not even want to use it. IF they do use it, it must point to a valid permissioned domain.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, there are other possible reasons to get temMALFORMED error

Comment on lines +49 to +51
| `tecNO_PERMISSION` | You are trying to lock or unlock an MPT, but the `tfMPTCanLock` flag wasn't set in the `MPTokenIssuanceCreate` transaction. |
| `temDISABLED` | Either the `PermissionedDomains` or `SingleAssetVault` amendment is disabled. |
| `temMALFORMED` | You specified a `DomainID` and `Holder` value. You can only set one or the other in a single transaction. You can also receive this error if the transaction isn't changing anything; the transaction must either update a flag or modify the `DomainID`. |
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tecOBJECT_NOT_FOUND and tecNO_DST are examples of a couple other type-specific errors that can occur with this transaction, based on a quick skim of the source.

@Bronek
Copy link

Bronek commented Aug 21, 2025

To be clear, this is set to go into rippled version 3.0.0, not version 2.6.0 which is the next planned release?

Yes. Although the changes are in release 2.6.0, they are amendment gated by SingleAssetVault which, in release 2.6.0 is not supported hence cannot be voted (and enabled). This means the changes will not be enabled until after 3.0.0 release (which will flip the Supported flag) and obviously, after the amendment has been voted.


| Error Code | Description |
|:--------------------------|:------------|
| `temDISABLED` | Either the `PermissionedDomains` or `SingleAssetVault` amendment is disabled. |
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PermissionedDomain does not have to be enabled for MPTokenIssuanceCreate to succeed. It only needs to be enabled if the user tried to use DomainID field.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated to differentiate the amendments required when including the DomainID field.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants