Skip to main content
IOTA is a DAG-based distributed ledger with an object-oriented model. This guide covers IOTA-specific features when using Dfns wallets.

Object model

IOTA uses an object-based model where all entities (wallets, assets, UTXOs) are represented as objects. This is similar to Sui’s architecture.

Coins and merging

When you receive IOTA, it creates coin objects. To transfer, you may need to split or merge existing coin objects. Dfns handles this automatically - when you make a transfer, Dfns merges coin objects as needed.

Staking

IOTA supports native staking with the following mechanics:

Basic staking

When you stake IOTA:
  1. Your IOTA is burned
  2. You receive an equivalent amount of STAKED-IOTA
  3. Minimum stake: 1 IOTA

Time-locked staking

IOTA also supports time-locked staking:
  1. Burn IOTA to mint LOCKED-IOTA (includes expiry date)
  2. LOCKED-IOTA can be staked to create TIME-LOCKED-STAKED-IOTA
  3. Must stake from oldest locked IOTA first
  4. Cannot unstake before lock expiration
When unstaking, you cannot unstake fractional amounts. It’s recommended to stake whole IOTA amounts to avoid complications.

Transfers

Use the Transfer Asset endpoint for IOTA transfers:
  • Native IOTA: Use kind: Native