transact
Call v210 → v323, v326 → current #0Submits an Ethereum-format transaction for execution.
View calls on chainCall Workflow
This diagram shows the call execution flow: starting with transact, passing through validation
(signature, nonce, mortality, fee payment), then pre-dispatch checks, followed by dispatch which emits events: Executed and modifies storage: Pending, CurrentBlock, CurrentReceipts, CurrentTransactionStatuses, and finally post-dispatch where ExtrinsicSuccess is emitted and fees are settled.
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
Click items to navigate. Pan and zoom to explore.
Used by: developerswallets
The Big Picture
Bridge between Ethereum tooling and Bittensor - use standard Ethereum wallets and libraries.
Use Cases
- Submit from MetaMask
- Use ethers.js/web3.js
- Deploy via Ethereum tools
From Chain Metadata
Transact an Ethereum transaction.
Migration Notes
v323 v326 Breaking
transaction changed from TransactionV2 to TransactionV3
Update decoders: SCALE encoding is positional, so any signature change (added, removed, or type-changed fields, or storage shape changes) shifts byte offsets and existing decoders will misparse this item. Re-derive types from the new metadata.
Input Parameters
| # | Name | Type | Description |
|---|---|---|---|
| 0 | transaction | TransactionV3 Transaction | transaction (TransactionV3) |
Permissions
Origin
Unknown
Required Role
Permission data inferred from metadata. May be incomplete.
Requirements
- Valid Ethereum tx
- Signature valid
- Nonce correct
- Balance for gas + value
Effects
Events Emitted
Storage Modified
Postconditions
- Transaction executed
- Receipt generated
- Ethereum.Executed emitted
Side Effects
- Updates Pending storage
- Updates CurrentBlock and CurrentReceipts
Code Examples
// ----------------------------------------------------------------------
// HEADS UP: 1 arg below has a complex type with no usable default.
// Look for `undefined as any` and replace it with real value
// before running — the snippet compiles, but will fail at runtime as-is.
// ----------------------------------------------------------------------
import { createClient, Binary } from "polkadot-api";
import { getWsProvider } from "polkadot-api/ws";
import { sub } from "@polkadot-api/descriptors"; // generated by: npx papi add sub -w wss://entrypoint-finney.opentensor.ai:443
const client = createClient(getWsProvider("wss://entrypoint-finney.opentensor.ai:443"));
const api = client.getTypedApi(sub);
// Build transact call (typed, named args)
const transaction = undefined as any /* TransactionV3 — replace with real value */;
const tx = api.tx.Ethereum.transact({
transaction,
});On-Chain Activity
Usage Frequency
●●●●○○ Active 100K–1M extrinsics
Significant regular use
#28 most used call
Success Rate Near-certain
Over 95% of submissions succeed
As of block 7,429,232
Version History
v210 block 4,345,556 1 args
v326 block 6,608,228 1 args Current
Runtime Info
- Pallet Index
- 21
- Call Index
- 0
- First Version
- v210
- Current Version
- v411