Skip to content

EVM integration

Testnet

Deploy Solidity contracts, use Ethereum-compatible JSON-RPC, and call the currently registered RP1-native precompile.

Updated View as Markdown

RP1’s EVM module is native to the chain application. It maps EVM account, nonce, code, storage, gas, logs, and state-root behavior into RP1 state while exposing an Ethereum-compatible JSON-RPC surface.

Connect

Use the EVM endpoint for the target network. The public testnet endpoint is https://testnet.evm.rp.one; query the actual EVM chain ID and gas configuration before signing.

curl -fsS https://testnet.evm.rp.one \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'

JSON-RPC scope

The server supports the eth_*, web3_*, and net_* families needed for balances, calls, transactions, blocks, receipts, and logs. eth_getLogs has bounded block ranges and address/topic list limits; a client should paginate rather than assume an unbounded indexer.

RP1-native precompile

The current application wiring registers one callable RP1-native precompile:

Address Capability Availability
0x0000000000000000000000000000000000000803 Velocity Script and supported Wasm/bridge workflows Current application surface

The 0x08000x0802 constants are reserved for Oracle, Privacy, and InstaWrap adapters, but are not callable precompiles in the current application wiring. Use the native module messages and queries for those capabilities. Use the target release’s Solidity interfaces for 0x0803, and remember that a precompile preserves the called module’s permission, proof, gas, pause, and accounting boundary; it is not a privileged escape hatch.

Contract lifecycle

  1. Compile and inspect bytecode locally.
  2. Call eth_estimateGas or a bounded simulation where the endpoint supports it.
  3. Sign with the target chain ID and native gas denom.
  4. Observe the receipt, logs, and committed height.
  5. Reconcile any precompile or bridge intent through its module query.

See smart contracts and programmable workflows.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close