Pseudo-Transactions
Pseudo-transactions are never submitted by users, nor propagated through the network. Instead, a server may choose to inject pseudo-transactions in a proposed ledger directly according to specific protocol rules. If enough servers propose the exact same pseudo-transaction, the consensus process approves it, and the pseudo-transaction is included in that ledger's transaction data.
Special Values for Common Fields
Some of the required common fields for normal transactions do not make sense for pseudo-transactions. Pseudo-transactions use following special values for these common fields:
Field | JSON Type | Internal Type | Value |
---|---|---|---|
Account | String | AccountID | ACCOUNT_ZERO |
Fee | String | Amount | 0 |
Sequence | Number | UInt32 | 0 |
SigningPubKey | String | Blob | "" (Empty string) |
TxnSignature | String | Blob | "" (Empty string) |
Pseudo-transactions use the following common fields as normal:
TransactionType
Flags
Field | JSON Type | Internal Type | Description |
---|---|---|---|
TransactionType | String | UInt16 | (Required) The type of transaction. |
Flags | Number | UInt32 | (Optional) A set of bit-flags for this transaction. The meaning of specific flags varies based on the transaction type. |