Ledger Object Types

Each ledger version's state data is a set of ledger objects, sometimes called ledger entries, which collectively represent all settings, balances, and relationships at a given point in time. To store or retrieve an object in the state data, the protocol uses that object's unique Ledger Object ID.

In the peer protocol, ledger objects have a canonical binary format. In rippled APIs, ledger objects are represented as JSON objects.

A ledger object's data fields depend on the type of object; the XRP Ledger supports the following types:

  • AccountRoot

    The settings, XRP balance, and other metadata for one account.

  • Amendments

    Singleton object with status of enabled and pending amendments.

  • Check

    A check that can be redeemed for money by its destination.

  • DepositPreauth

    A record of preauthorization for sending payments to an account that requires authorization.

  • DirectoryNode

    Contains links to other objects.

  • Escrow

    Contains XRP held for a conditional payment.

  • FeeSettings

    Singleton object with consensus-approved base transaction cost and reserve requirements.

  • LedgerHashes

    Lists of prior ledger versions' hashes for history lookup.

  • NegativeUNL

    List of validators currently believed to be offline.

  • Offer

    An order to make a currency trade.

  • PayChannel

    A channel for asynchronous XRP payments.

  • RippleState

    Links two accounts, tracking the balance of one currency between them. The concept of a trust line is an abstraction of this object type.

  • SignerList

    A list of addresses for multi-signing transactions.