rejected (3)

Planned Upgrade

The rejected message serves as a specific negative-acknowledgement (NACK) for a piece of data previously sent by a peer. Unlike the bye message, receiving a rejected message does not terminate the connection.

Its primary use is to inform a node that a transaction it broadcasted has failed validation and will not be included in the transaction pool or propagated further across the network.

Core Data Types

Payload Structure

FieldData TypeMinMaxDescription
Entire Payloadbyte[]128 bytesThe total size of the rejected message payload is limited.
rejectionCodeuint8A numeric code indicating the reason for the rejection. See table below.
dataIxiBytesThe identifier (e.g., transaction id) of the data item that was rejected.

Rejection Codes (RejectedCode)

The rejectionCode provides a specific, machine-readable reason for the rejection. Currently, all defined codes relate to transaction validation.

Code (Hex)NameDescription
0x20TransactionInvalidThe transaction is malformed, has an invalid signature, incorrect amounts, or is otherwise structurally invalid.
0x21TransactionDustThe transaction output amount is below the minimum "dust" threshold required by the network.
0x22TransactionInsufficientFeeThe fee included in the transaction is too low for it to be processed or relayed.
0x23TransactionDuplicateThe transaction is a duplicate; a transaction with the same ID has already been seen and processed by the node.