Skip to content

Erc20Peg pallet

Derived from live runtime metadata on TRN root (pallet index 29, captured 2026-05-02). For prose-style documentation see Erc20Peg on the curated reference side.

Pallet index
29
Calls
11
Events
16
Errors
10
Storage items
14
Constants
4

Calls (extrinsics)

Erc20Peg.activate_deposits

See [Pallet::activate_deposits].

ts
api.tx.erc20Peg.activate_deposits(activate: bool)
ArgumentTypeDoc
activateboolbool

Call index: 0

Erc20Peg.activate_withdrawals

See [Pallet::activate_withdrawals].

ts
api.tx.erc20Peg.activate_withdrawals(activate: bool)
ArgumentTypeDoc
activateboolbool

Call index: 1

Erc20Peg.activate_deposits_delay

See [Pallet::activate_deposits_delay].

ts
api.tx.erc20Peg.activate_deposits_delay(activate: bool)
ArgumentTypeDoc
activateboolbool

Call index: 2

Erc20Peg.activate_withdrawals_delay

See [Pallet::activate_withdrawals_delay].

ts
api.tx.erc20Peg.activate_withdrawals_delay(activate: bool)
ArgumentTypeDoc
activateboolbool

Call index: 3

Erc20Peg.withdraw

See [Pallet::withdraw].

ts
api.tx.erc20Peg.withdraw(asset_id: u32, amount: u128, beneficiary: H160)
ArgumentTypeDoc
asset_idu32AssetId
amountu128Balance
beneficiaryH160EthAddress

Call index: 4

Erc20Peg.set_erc20_peg_address

See [Pallet::set_erc20_peg_address].

ts
api.tx.erc20Peg.set_erc20_peg_address(eth_address: H160)
ArgumentTypeDoc
eth_addressH160EthAddress

Call index: 5

Erc20Peg.set_root_peg_address

See [Pallet::set_root_peg_address].

ts
api.tx.erc20Peg.set_root_peg_address(eth_address: H160)
ArgumentTypeDoc
eth_addressH160EthAddress

Call index: 6

Erc20Peg.set_erc20_meta

See [Pallet::set_erc20_meta].

ts
api.tx.erc20Peg.set_erc20_meta(details: Vec<(H160,Bytes,u8)>)
ArgumentTypeDoc
detailsVec&lt;(H160,Bytes,u8)&gt;Vec<(EthAddress, BoundedVec<u8, T::StringLimit>, u8)>

Call index: 7

Erc20Peg.set_erc20_asset_map

See [Pallet::set_erc20_asset_map].

ts
api.tx.erc20Peg.set_erc20_asset_map(asset_id: u32, eth_address: H160)
ArgumentTypeDoc
asset_idu32AssetId
eth_addressH160EthAddress

Call index: 8

Erc20Peg.set_payment_delay

See [Pallet::set_payment_delay].

ts
api.tx.erc20Peg.set_payment_delay(asset_id: u32, min_balance: u128, delay: u32)
ArgumentTypeDoc
asset_idu32AssetId
min_balanceu128Balance
delayu32BlockNumberFor<T>

Call index: 9

Erc20Peg.claim_delayed_payment

See [Pallet::claim_delayed_payment].

ts
api.tx.erc20Peg.claim_delayed_payment(block_number: u32, payment_id: u64)
ArgumentTypeDoc
block_numberu32BlockNumberFor<T>
payment_idu64DelayedPaymentId

Call index: 10

Events

Erc20Peg.Erc20DepositDelayed

An erc20 deposit has been delayed.

FieldTypeDoc
payment_idu64
scheduled_blocku32
amountu128
beneficiary[u8;20]
asset_idu32

Erc20Peg.Erc20WithdrawalDelayed

A withdrawal has been delayed.

FieldTypeDoc
payment_idu64
scheduled_blocku32
amountu128
beneficiaryH160
asset_idu32
source[u8;20]

Erc20Peg.Erc20DelayFailed

An ERC20 delay has failed due to storage bounds.

FieldTypeDoc
payment_idu64
scheduled_blocku32
asset_idu32
source[u8;20]

Erc20Peg.DelayedErc20DepositFailed

A delayed erc20 deposit has failed.

FieldTypeDoc
payment_idu64
beneficiary[u8;20]

Erc20Peg.DelayedErc20WithdrawalFailed

A delayed erc20 withdrawal has failed.

FieldTypeDoc
asset_idu32
beneficiaryH160

Erc20Peg.Erc20Deposit

A bridged erc20 deposit succeeded.

FieldTypeDoc
asset_idu32
amountu128
beneficiary[u8;20]

Erc20Peg.Erc20Withdraw

Tokens were burnt for withdrawal on Ethereum as ERC20s

FieldTypeDoc
asset_idu32
amountu128
beneficiaryH160
source[u8;20]

Erc20Peg.Erc20DepositFail

A bridged erc20 deposit failed.

FieldTypeDoc
sourceH160
abi_dataBytes

Erc20Peg.SetContractAddress

The peg contract address has been set.

FieldTypeDoc
addressH160

Erc20Peg.SetRootPegContract

The ROOT peg contract address has been set.

FieldTypeDoc
addressH160

Erc20Peg.PaymentDelaySet

A delay was added for an asset_id.

FieldTypeDoc
asset_idu32
min_balanceu128
delayu32

Erc20Peg.NoAvailableDelayedPaymentIds

There are no more payment ids available, they've been exhausted.

No payload.

Erc20Peg.ActivateDepositDelay

Toggle deposit delay.

FieldTypeDoc
activebool

Erc20Peg.ActivateWithdrawalDelay

Toggle withdrawal delay.

FieldTypeDoc
activebool

Erc20Peg.ActivateDeposits

Toggle deposits.

FieldTypeDoc
activebool

Erc20Peg.ActivateWithdrawals

Toggle withdrawals.

FieldTypeDoc
activebool

Errors

Erc20Peg.CreateAssetFailed

Could not create the bridged asset

Erc20Peg.InvalidAmount

Deposit has bad amount

Erc20Peg.InvalidPalletId

Could not convert pallet id to account

Erc20Peg.InvalidSourceAddress

The peg source address is incorrect for the token being bridged

Erc20Peg.DepositsPaused

Deposits are inactive

Erc20Peg.WithdrawalsPaused

Withdrawals are inactive

Erc20Peg.UnsupportedAsset

Withdrawals of this asset are not supported

Erc20Peg.EvmWithdrawalFailed

Withdrawals over the set payment delay for EVM calls are disabled

Erc20Peg.InvalidAbiEncoding

The abi received does not match the encoding scheme

Erc20Peg.PaymentIdNotFound

Supplied payment id not in storage

Storage

Erc20Peg.DepositsActive

Whether deposit are active

ts
await api.query.erc20Peg.depositsActive()

Returns: bool

Modifier: Default

Erc20Peg.WithdrawalsActive

Whether withdrawals are active

ts
await api.query.erc20Peg.withdrawalsActive()

Returns: bool

Modifier: Default

Erc20Peg.DepositsDelayActive

Whether deposit delays are active, default is set to true

ts
await api.query.erc20Peg.depositsDelayActive()

Returns: bool

Modifier: Default

Erc20Peg.WithdrawalsDelayActive

Whether withdrawals delays are active, default is set to true

ts
await api.query.erc20Peg.withdrawalsDelayActive()

Returns: bool

Modifier: Default

Erc20Peg.Erc20ToAssetId

Map ERC20 address to GA asset Id

ts
await api.query.erc20Peg.erc20ToAssetId(key1)
  • Key: H160 (hasher: Twox64Concat)
  • Returns: u32

Modifier: Optional

Erc20Peg.AssetIdToErc20

Map GA asset Id to ERC20 address

ts
await api.query.erc20Peg.assetIdToErc20(key1)
  • Key: u32 (hasher: Twox64Concat)
  • Returns: H160

Modifier: Optional

Erc20Peg.Erc20Meta

Metadata for well-known erc20 tokens (symbol, decimals)

ts
await api.query.erc20Peg.erc20Meta(key1)
  • Key: H160 (hasher: Twox64Concat)
  • Returns: (Bytes,u8)

Modifier: Optional

Erc20Peg.PaymentDelay

Map from asset_id to minimum amount and delay

ts
await api.query.erc20Peg.paymentDelay(key1)
  • Key: u32 (hasher: Twox64Concat)
  • Returns: (u128,u32)

Modifier: Optional

Erc20Peg.DelayedPayments

Map from DelayedPaymentId to PendingPayment

ts
await api.query.erc20Peg.delayedPayments(key1)
  • Key: u64 (hasher: Twox64Concat)
  • Returns: {"_enum":{"Deposit":"PalletErc20PegErc20DepositEvent","Withdrawal":"(SeedPrimitivesSignatureAccountId20,PalletErc20PegWithdrawMessage)"}}

Modifier: Optional

Erc20Peg.DelayedPaymentSchedule

Map from block number to DelayedPaymentIds scheduled for that block

ts
await api.query.erc20Peg.delayedPaymentSchedule(key1)
  • Key: u32 (hasher: Twox64Concat)
  • Returns: Vec<u64>

Modifier: Default

Erc20Peg.ReadyBlocks

The blocks with payments that are ready to be processed

ts
await api.query.erc20Peg.readyBlocks()

Returns: Vec<u32>

Modifier: Default

Erc20Peg.NextDelayedPaymentId

The next available payment id for withdrawals and deposits

ts
await api.query.erc20Peg.nextDelayedPaymentId()

Returns: u64

Modifier: Default

Erc20Peg.ContractAddress

The peg contract address on Ethereum

ts
await api.query.erc20Peg.contractAddress()

Returns: H160

Modifier: Default

Erc20Peg.RootPegContractAddress

The ROOT peg contract address on Ethereum

ts
await api.query.erc20Peg.rootPegContractAddress()

Returns: H160

Modifier: Default

Constants

Erc20Peg.NativeAssetId

The native token asset Id (managed by pallet-balances)

Type: u32
SCALE-encoded value: 0x01000000

Erc20Peg.StringLimit

The maximum length of an ERC20 token symbol

Type: u32
SCALE-encoded value: 0x32000000

Erc20Peg.MaxDelaysPerBlock

The maximum number of delayed payments allowed per block

Type: u32
SCALE-encoded value: 0xf4010000

Erc20Peg.MaxReadyBlocks

The maximum number of ready blocks allowed per storage

Type: u32
SCALE-encoded value: 0xa0860100

Source: live chain metadata from wss://root.rootnet.live/archive/ws · captured 2026-05-02

Curated independently by Codeology. Source-attributed reference for The Root Network. Not affiliated with Futureverse / TRN Labs.