Skip to main content

Error Code Reference

Every failed transaction receipt carries a structured error with a stable numeric code, a machine-readable slug, and human-authored remediation hints.

Error Format

When a transaction fails, the receipt includes a structured error object:

Code Ranges

The registry contains 66 codes across 8 categories:

All Error Codes

E1000–E1099: Transaction Pre-checks

Signature, nonce, basefee, and balance checks that run before the actor handler executes.

E1100–E1199: PVM Static Validation

Compile-time determinism checks enforced at actor deploy.

E1200–E1299: PVM Runtime / Host API

Errors during actor execution — host calls, state access, and messaging.

E1300–E1399: Entitlements / Manifest

Entitlement declaration and grant errors.

E1400–E1499: CIP-20 Tokens

Fungible token operations — create, transfer, approve, hooks.

E1500–E1599: Timers / Deferred / Commit-Reveal

Scheduled execution and commit-reveal protocol errors.

E1600–E1699: Runner / Consensus / Job

Off-chain compute runner registration, job dispatch, and verification.

E1900–E1999: Internal / Fallback

Unclassified errors — report with tx hash.

Reading Errors

From the CLI / RPC

From a Python Actor

Raising Structured Errors

Use SDK exception classes for automatic structured error population: