Skip to content

Data Model: EVM Transfer ​

Purpose: The EVM Transfer entity is an immutable, off-chain record of an on-chain transaction. It links token movements, such as Investment issuance or Distribution payouts, to their platform records.

Fields/Attributes ​

NameTypeDescriptionValidation Rules
idUnique IdentifierThe primary internal system ID for the transfer record.• Required • System-generated
transaction_txTextThe unique transaction hash (TxHash) from the blockchain, linking to a block explorer.• Required, Unique per network
statusChoiceThe real-time status of the transaction on the blockchain.• Required • See Transfer Status Lifecycle.
from_addressTextThe sender's wallet address.• Required
to_addressTextThe receiver's wallet address.• Required
amountBig IntegerThe number of tokens transferred.• Required
evm_contract_idForeign KeyA reference to the EVM Contract whose tokens were transferred.• Required
investment_idForeign KeyA reference to the off-chain Investment that triggered this transfer.• Nullable
distribution_idForeign KeyA reference to the off-chain Distribution that triggered this transfer.• Nullable
timestampTimestampThe date and time the transaction was confirmed on the blockchain (from the block timestamp).• Read-only
Fund associationForeign KeyA reference to the off-chain fund these tokens belong to.• Nullable
symbolTextThe token symbol.• Required
typeTextA type of the transfer.• Required
created_atTimestampThe date and time the record was created in our system.• Read-only
updated_atTimestampThe date and time the record was changed.• Read-only

Key Relationships ​

  • EVM Contract: An EVM Transfer always involves tokens managed by one EVM Contract (a many-to-one relationship).

  • Investment / Distribution: An EVM Transfer can be directly triggered by and linked to an Investment or Distribution record, providing a complete audit trail.

  • Crypto Wallets: An EVM Transfer is implicitly linked to one or two Crypto Wallet records. The system establishes this link by matching the from_address and to_address fields against the addresses stored in the Crypto Wallet model.

Global Business Rules ​

  • An EVM Transfer record is created when a transaction is broadcast to the blockchain.

  • The status of a transfer must be updated by a background service (a blockchain listener) that monitors its hash.

  • Once a record reaches a terminal state (CONFIRMED or FAILED), it is immutable and cannot be altered.

Auditing & Event History ​

The system records significant actions or changes involving an EVM Transfer as immutable entries in the system-wide EventLog.