Stellar NFT trades, covering both Classic NFTs (traded on the SDEX orderbook viaDocumentation Index
Fetch the complete documentation index at: https://docs.allium.so/llms.txt
Use this file to discover all available pages before exploring further.
manage_sell_offer / manage_buy_offer) and Soroban NFTs (traded through smart-contract atomic swaps). Hydrated with NFT metadata (name, image URL parsed from the issuer’s stellar.toml) and USD pricing using the Stellar hourly prices model.
Coverage
| Token Standard | Protocol | Detection |
|---|---|---|
| classic | stellar_orderbook | NFT-classified assets traded on the SDEX (Litemint, locked-issuer NFTs, supply ≤ 10M stroops) |
| soroban | soroban | Contracts emitting token_transfers rows with token_id IS NOT NULL (SEP-50) |
Classic NFT trades also appear in
stellar.dex.trades. stellar.nfts.trades is the NFT-classified subset. marketplace is currently populated for known Classic marketplaces (e.g. litemint) and is null for Soroban trades until specific contracts are added.Table Columns
Unique Key:unique_id
| Column Name | Description |
|---|---|
| marketplace | NFT marketplace attributed via the asset’s TOML / issuer mapping (e.g. litemint). Null when the asset isn’t attributable to a known marketplace, including all Soroban trades until specific contracts are added. |
| protocol | Trading-venue protocol. stellar_orderbook for SDEX (Classic); soroban for Soroban atomic-swap trades. |
| token_standard | classic for Classic Stellar NFTs; soroban for Soroban-contract NFTs. |
| contract_id | Soroban contract address (C-prefixed StrKey). Null for Classic NFTs. |
| order_match_type | BUY or SELL from the perspective of the recorded effect (Classic) or BUY (Soroban atomic swap). |
| trade_type | SINGLE_TRADE (bundle support deferred to Phase 2). |
| buyer_address | Stellar G-address of the NFT recipient. |
| seller_address | Stellar G-address of the NFT sender. |
| asset_id | Canonical asset identifier. For Classic NFTs, <asset_code>:<asset_issuer>. For Soroban NFTs, the contract_id. |
| asset_code | Asset code (Classic) or null (pure Soroban NFTs). |
| asset_issuer | Issuer G-address (Classic) or null (pure Soroban NFTs). |
| token_id | Soroban NFT token_id within the contract. Null for Classic NFTs. |
| token_name | NFT name parsed from the issuer’s stellar.toml (Classic) or contract metadata (Soroban). Best-effort. |
| image_url | NFT image URL parsed from the issuer’s stellar.toml. Best-effort. |
| item_quantity | Quantity of the NFT moved, in raw stroops. For 1-stroop-supply NFTs, item_quantity = '1' means the whole NFT. For older 1-whole-unit NFTs, item_quantity = '10000000' means the whole NFT. |
| currency_asset_id | Counter-asset identifier. XLM for native, <code>:<issuer> for Classic, contract_id for Soroban tokens. |
| currency_code | Counter-asset code. |
| currency_decimals | Counter-asset decimal precision used to normalize raw_price. |
| raw_price | Counter-asset amount paid for the NFT, in raw units (stroops for Classic / native, contract-defined for Soroban). |
| price | Counter-asset amount normalized to human units. |
| usd_price | USD value of the trade based on the hourly counter-asset price. Null if it exceeds the upper sanity limit. |
| extra_fields | Variant JSON with protocol-specific debug fields (offer_id, sold/bought asset breakdown, Soroban event indices). |
| ledger_sequence | Stellar ledger sequence number. |
| ledger_close_time | Timestamp at which the ledger containing the trade closed. |
| ledger_hash | Hash of the ledger. |
| transaction_hash | 64-character hex Stellar transaction hash. |
| transaction_index | Index of the transaction within the ledger. |
| transaction_result | Stellar transaction result code. |
| operation_id | Stellar TOID (Total Order ID) of the operation. |
| effect_index | Index of the effect (Classic) or token_transfer event (Soroban) within the transaction. |
| unique_id | Unique identifier for the trade row. |
| _created_at | Row creation timestamp. |
| _updated_at | Row last-update timestamp. |