---
title: EVM Compatibility
sidebarTitle: Compatibility Matrix
description: >-
  Learn how Paxeer supports standard EVM tooling and where its transaction, gas,
  finality, and proof behaviors differ from Ethereum defaults.
---

> **For AI agents:** the complete documentation index is at [llms.txt](/llms.txt). Append `.md` to any page URL for its markdown version.

## EVM Compatibility

This page documents Paxeer's EVM feature support. Each row shows whether a capability works as on standard Ethereum, behaves differently in a documented way, or is not available on Paxeer.

Standard EVM tooling - viem, wagmi, ethers, Foundry, Hardhat - works on Paxeer for all rows marked **Supported**. Where Paxeer differs from Ethereum, the difference is noted so you can account for it in your application.

## Status Legend

| Status | Meaning |
| --- | --- |
| Supported | Works on Paxeer EVM with standard Ethereum behavior. |
| Supported - differences | Available on Paxeer, but intentionally differs from Ethereum. See the notes. |
| Paxeer extension | A Paxeer-specific capability with no standard Ethereum equivalent. |
| Not supported | Not available on Paxeer EVM. |

## Transactions

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| Legacy transactions (type 0) | Supported - differences | Minimum gas price is set by Paxeer governance parameters, not a fixed floor. [See Gas and Fees.](/evm/evm-parity/gas-and-fees) |
| EIP-2930 access list transactions (type 1) | Supported | |
| EIP-1559 fee market transactions (type 2) | Supported - differences | No base-fee burning. Fees go to validators rather than being burned. [See Gas and Fees.](/evm/evm-parity/gas-and-fees) |
| EIP-4844 blob transactions (type 3) | Not supported | Paxeer runs Pectra without blob transactions. [See Transaction Types.](/evm/evm-parity/transaction-types) |
| EIP-7702 set-code transactions (type 4) | Supported | |

## Account and State

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| `eth_getBalance` | Supported | |
| `eth_getTransactionCount` (nonce) | Supported | |
| `eth_getCode` | Supported | |
| `eth_getStorageAt` | Supported - differences | SSTORE cost is governance-adjustable; do not hard-code gas assumptions. [See Gas and Fees.](/evm/evm-parity/gas-and-fees) |
| `eth_getProof` | Supported - differences | Returns IAVL proof data rather than Ethereum Merkle Patricia Trie proofs. Proof verification logic must account for this. [See State Proofs.](/evm/evm-parity/state-proofs) |

## Blocks and Finality

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| `eth_getBlockByHash`, `eth_getBlockByNumber` | Supported | |
| `eth_blockNumber` | Supported | |
| Finality tags (`latest`, `safe`, `finalized`) | Supported - differences | Paxeer has instant finality. All three tags refer to the same commitment level. [See Finality.](/evm/evm-parity/finality) |
| Pending block state | Supported - differences | Ethereum-style pending state visibility is not guaranteed. Do not rely on pending transaction ordering. [See Finality.](/evm/evm-parity/finality) |

## Logs, Filters, and Subscriptions

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| `eth_getLogs` | Supported | |
| Filter lifecycle (`eth_newFilter`, `eth_getFilterChanges`, `eth_getFilterLogs`, `eth_uninstallFilter`) | Supported | |
| WebSocket subscriptions (`eth_subscribe`) | Supported | [See WebSocket Connections.](/evm/evm-parity/websocket) |

## Execution and Simulation

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| `eth_call` | Supported | |
| `eth_estimateGas` | Supported | |
| `debug_traceTransaction` | Supported | |
| Block-level tracing | Supported | |

## Signing

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| EIP-155 replay protection | Supported | |
| Personal sign (`personal_sign`, `eth_sign`) | Supported | Depends on the connected wallet exposing the method. [See Signing.](/evm/evm-parity/signing) |
| EIP-712 typed data signing (`eth_signTypedData_v4`) | Supported | Depends on the connected wallet exposing the method. [See Signing.](/evm/evm-parity/signing) |
| EIP-1271 contract signature validation | Supported | [See Signing.](/evm/evm-parity/signing) |

## Token Standards

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| ERC-20 | Supported | |
| ERC-721 | Supported | |
| ERC-1155 | Supported | |

## Account Abstraction

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| ERC-4337 | Supported | Requires a compatible bundler. Paxeer EVM is ERC-4337 compatible. |

## Name Services

| Feature | Paxeer status | Notes |
| --- | --- | --- |
| ENS | Not supported | Paxeer does not run Ethereum mainnet ENS. Application-level name services can be deployed as contracts. |

## Paxeer Extensions

These capabilities are Paxeer-specific and have no standard Ethereum equivalent. They are exposed through `@sei-js` packages layered on top of standard EVM tooling.

| Feature | Notes |
| --- | --- |
| Paxeer precompiles (staking, governance, distribution, oracle, P256, JSON, CosmWasm bridge) | EVM contracts at deterministic addresses. ABIs and contract addresses are exported from `@sei-js/precompiles` for use with any standard EVM library. |
| Pointer contracts (CW20 ↔ ERC-20, CW721 ↔ ERC-721) | Bridge between CosmWasm and EVM token standards. Standard ERC interfaces work against pointer contracts. |
| Native address association (EVM ↔ Cosmos address) | Links an EVM address and a Cosmos address for the same account. Required before some Paxeer-native flows. |
| TokenFactory native token creation | Create native Paxeer tokens that are usable across EVM and CosmWasm without a wrapper contract. |

## Unsupported RPC Methods

The following JSON-RPC methods are either not available on Paxeer or will return errors:

### Blob / EIP-4844

| Method | Reason |
| --- | --- |
| `eth_blobBaseFee` | Paxeer runs Pectra without blob transaction support. This method does not exist on Paxeer. |
| `engine_getBlobsV1` | Blob data availability endpoints are not supported. |

### Pending State

| Method | Behavior on Paxeer |
| --- | --- |
| `eth_getBlockByNumber("pending")` | Returns `null` or the latest committed block. Paxeer does not maintain an Ethereum-style pending block. |
| `eth_getTransactionCount(address, "pending")` | Returns the same value as `"latest"`. Pending nonce does not differ from confirmed nonce on Paxeer. |
| `eth_newPendingTransactionFilter` | The filter can be created but will not reliably emit pending transactions. Use `eth_newBlockFilter` or WebSocket block subscriptions instead. |
| `eth_subscribe("newPendingTransactions")` | Supported at the RPC level but Paxeer does not guarantee Ethereum-style pending transaction visibility. Treat results as best-effort. |

### Proof Verification

| Method | Behavior on Paxeer |
| --- | --- |
| `eth_getProof` | Returns IAVL tree proofs, not Ethereum Merkle Patricia Trie proofs. The method itself works, but the proof format is incompatible with standard Ethereum MPT verifiers. [See State Proofs.](/evm/evm-parity/state-proofs) |

### Deprecated / Removed Opcodes

| Method | Reason |
| --- | --- |
| `eth_accounts` | Returns an empty array on Paxeer RPC nodes. Use a wallet library (`eth_requestAccounts`) to get accounts from the connected user's wallet instead. |
