On this page

Originals & Omniassets

An ERC-20 starts on one original EVM chain. Omnisea locks that canonical token in a dedicated Vault and mints an equal Omniasset supply on another connected chain.

The asset cycle

  1. sendOriginal moves a canonical token into OmniseaVault and sends its identity through the Router.
  2. The destination Registry deploys the deterministic OFT when needed, then the core mints the received amount.
  3. sendOFT burns an Omniasset. Another destination can mint it, or its original chain can unlock the canonical backing.

Representation-to-representation transfers do not need to pass through the original chain. The origin identity remains unchanged throughout the route.

The core enforces the direction: sendOriginal rejects an Omniasset, while sendOFT rejects a token that the local Registry does not recognize.

One identity on every destination

The canonical source Registry freezes one rendered identity on the first transfer:

symbol = om{original symbol}
name   = {original name} ({original chain name})

Ethereum wBTC is therefore omwBTC / Wrapped Bitcoin (Ethereum) on Base, Robinhood Chain, Polygon, and every later destination. A Base-to-Robinhood transfer does not add another om or replace Ethereum with Base.

The chain name comes from the immutable deployment configuration. Decimals and contract URI are carried with the same origin record. A new destination copies the propagated owner()-compatible issuer owner at initialization. After that, only a direct message from the original chain can replace it; retries and multi-hop messages cannot overwrite the existing owner.

Modular contracts

  • Omnisea is the public send/receive and accounting entrypoint.
  • OmniseaRouter is the only LayerZero OApp.
  • OmniseaVault holds original backing.
  • OmniseaRegistry owns deterministic identity and OFT clone deployment.
  • OmniseaFeesManager keeps bridge fees separate from backing.
  • OFT is the ERC-20 Permit representation.

Every companion accepts calls only from its exact precomputed Omnisea. The system is non-upgradeable and has no route-pause function.

Discovery

The public discovery ABI remains typed by the EVM origin:

function representationFor(
    uint32 originalChainId,
    uint8 originalTokenAddressType,
    bytes32 originalToken
) external view returns (address);

function oftToOriginal(address representation)
    external view
    returns (uint32, uint8, bytes32, bool);

EVM address type is 1, and the token address is left-padded to bytes32.

First transfers

Representations deploy lazily, so a first transfer needs more lzReceive gas than a normal mint or unlock. The sender passes isFirstTransfer consistently to quote and send. Router validation applies minCreationGas for first transfers and minTransferGas otherwise.

Use representationFor or predictRepresentation to determine whether the destination token already exists. Read Executor options for receive and compose gas encoding.

Trust boundary

LayerZero verifies a message from the configured remote Router pathway. The destination then treats that peer's payload as authoritative for minting or unlocking. Router peers and their EID-to-chain-ID records are one-time settings. Read Security model for the exact owner powers and Failed messages for permissionless retry and restore.

Experimental Beta is Live-Learn more about the Pilot