| unique_id | VARCHAR(16777216) | Unique row identifier, derived from event_id and the transfer index within the event. |
| transfer_index | NUMBER(38,0) | Sequential index of this transfer row within the event. Multiple rows per event represent different CC movements (e.g., input consumed, change returned, receiver credited). |
| update_id | VARCHAR(16777216) | The update (transaction) this transfer belongs to. Foreign key to canton.raw.updates. |
| event_id | VARCHAR(16777216) | The event that generated this transfer row. Foreign key to canton.raw.events. |
| record_time | TIMESTAMP_NTZ(9) | The timestamp at which the synchronizer sequenced the parent update. |
| migration_id | NUMBER(38,0) | Synchronizer migration epoch. Canton upgrades increment this value (currently 0β4). The active migration_id must match the time range being queried. |
| choice | VARCHAR(16777216) | The Daml choice that generated this transfer row (e.g., AmuletRules_Transfer, AmuletRules_BuyMemberTraffic, Amulet_Expire). |
| transfer_type | VARCHAR(16777216) | Classification of this CC movement. See table description for full list of values. Use this column to filter for specific movement types (e.g., transfer for party-to-party payments, or mint types for reward analysis). |
| from_address | VARCHAR(16777216) | The party sending or losing CC in this movement, formatted as display_name::hash. Null for mint rows (credits with no sender). Filter by hash portion to find all rows for an entity across multiple party names. |
| to_address | VARCHAR(16777216) | The party receiving CC in this movement, formatted as display_name::hash. Null for burn/fee rows (debits with no recipient). Filter by hash portion to find all rows for an entity across multiple party names. |
| amount_str | VARCHAR(16777216) | The CC amount of this movement as a string, preserving full decimal precision. May be in scientific notation ("0E-10") for zero or near-zero values. |
| amount | FLOAT | The CC amount of this movement as a float. Use amount_str for accounting to avoid floating-point precision loss. |
| round_number | NUMBER(38,0) | The Canton mining round number (~10 minutes per round) in which this transfer occurred. Used for reward rate calculations and ExpiringAmount decay computation. |
| locked | BOOLEAN | Whether the output Amulet created by this transfer is time-locked (a LockedAmulet contract). True for escrowed CC in multi-step transfers (e.g., Allocation_ExecuteTransfer). Locked CC is still owned by the receiver but cannot be transferred until released. |
| output_index | NUMBER(38,0) | For transfer-type rows, the position of this output in the eventβs outputs array. Links to the corresponding row in canton.raw.outputs. |
| block_number | NUMBER(38,0) | Synthetic 1-second block index inherited from the parent update. |
| block_timestamp | TIMESTAMP_NTZ(9) | Start timestamp of the synthetic 1-second block window for this transfer. |
| _created_at | TIMESTAMP_NTZ(9) | Timestamp of when the entry was created in the database. |
| _updated_at | TIMESTAMP_NTZ(9) | Timestamp of when the entry was last updated in the database. |