web3wagmi
← All standards

ERC-8183 Agentic Commerce

DraftERCcreated 2026-02-25requires ERC-20

Job escrow with evaluator attestation for agent commerce.

Authors: Davide Crapis (@dcrapis), Bryan Lim (@ai-virtual-b), Tay Weixiong (@twx-virtuals), Chooi Zuhwa (@Zuhwa)

ERC-165 interface ids

Computed here as the XOR of the selectors each interface defines.

IACPHook0x7ff6bc9e

Functions this standard introduces (2)

0xa3fe4783afterAction(uint256,bytes4,bytes)
0xdc08fb1dbeforeAction(uint256,bytes4,bytes)

Inherited (1)

0x01ffc9a7supportsInterface(bytes4)ERC-165

Events (12)

Topic0 is the keccak256 hash of the signature, which is what a log filter matches on.

0xb0f0239bfdd96453e24733e18bfc24b70d8fadf123dd977473518dd577ee79b9JobCreated(uint256,address,address,address,uint256,address)
0x9a87df076ea1725aba8ba29d32517ce37c9597d88cbf16ec6707892cc330ab69ProviderSet(uint256,address)
0x869e2577b006bf47ee981cf6fec2e25583548081c14b98deab587f77b5068038BudgetSet(uint256,uint256)
0xe3fbcc1ea1bdc559ec7f0347efde7655e58b5f45a30b0e4470a583c3ef5496b3JobFunded(uint256,address,uint256)
0x80c17db79857f338a6a6df68a6883ecc0ce78e2202fe61ed979733573f40538eJobSubmitted(uint256,address,bytes32)
0x0fd54bd364fa9e67f17b091aefe930932c09fe7651cf5ad02c71a418f3341444JobCompleted(uint256,address,bytes32)
0xae7362b1af91f4492868987b9c73990d780060811551b58728fbe96fd1bab275JobRejected(uint256,address,bytes32)
0x97237956f8810192811e2c3f273fd02c5d6295206fdd9c62e6fe2bfc19ba9232JobExpired(uint256)
0x21d71db5be59bb9fa133895586b7404307dd33fb93b16db09dc6f1d9d7d231b0PaymentReleased(uint256,address,uint256)
0x253dd534010ac976fa263caa123bae79b9c50292adf7ce67bdc5ec309f784e61EvaluatorFeePaid(uint256,address,uint256)
0x7ca5472b7ea78c2c0141c5a12ee6d170cf4ce8ed06be3d22c8252ddfc7a6a2c4Refunded(uint256,address,uint256)
0x7ee54953080e392a475a25b6acacb85417ca4e1953293c90934233ca13612510HookWhitelistUpdated(address,bool)

Custom errors (9)

0x71c8f460InvalidJob()
0x8e78f0cbWrongStatus()
0x82b42900Unauthorized()
0xd92e233dZeroAddress()
0xf7a0748cExpiryTooShort()
0xff97b861ZeroBudget()
0xa9456d43ProviderNotSet()
0xc9034e18FeesTooHigh()
0xa04b28ecHookNotWhitelisted()

Depends on (1)

Proposals this one names in its requires field.

What the specification covers

Compare with

Parsed from the canonical specification · discussion