Skip to content

ConfidentialMPTMergeInbox

[Source]

Merge your confidential inbox balance into your spending balance. This moves all funds from the inbox balance into the spending balance and resets the inbox to encrypted zero, ensuring that proofs reference only stable spending balances.

Note

Even if the inbox is already empty (contains encrypted zero), this transaction is valid and succeeds.

(Requires the ConfidentialTransfers amendment )

Example ConfidentialMPTMergeInbox JSON

{
  "TransactionType": "ConfidentialMPTMergeInbox",
  "Account": "rUserAccount...",
  "MPTokenIssuanceID": "610F33B8EBF7EC795F822A454FB852156AEFE50BE0CB8326338A81CD74801864",
  "Fee": "12",
  "Sequence": 2470665,
  "Flags": 2147483648
}

ConfidentialMPTMergeInbox Fields

In addition to the common fields, ConfidentialMPTMergeInbox transactions use the following fields:

FieldJSON TypeInternal TypeRequired?Description
MPTokenIssuanceIDStringUInt192YesThe unique identifier for the MPT issuance.

Error Cases

Besides errors that can occur for all transactions, ConfidentialMPTMergeInbox transactions can result in the following transaction result codes:

Error CodeDescription
temDISABLEDThe ConfidentialTransfer amendment is not enabled.
temMALFORMEDThe account submitting the transaction is the Issuer.
tecOBJECT_NOT_FOUNDThe MPTokenIssuance or the user's MPToken object does not exist.
tecNO_PERMISSIONThe issuance does not have the Can Confidential Amount flag enabled, or the user's MPToken object has not been initialized (missing sfConfidentialBalanceInbox or sfConfidentialBalanceSpending).
tefINTERNALA system invariant failure where the issuer attempts to merge.