Bundler Error Codes
If a UserOperation is valid, the bundler return the calculated userOpHash for it. In case of failure, the bundler return an error result object, with code and message.
Here are the common error codes as defined by the protocol. These error codes supplement the standard JSON-RPC error codes that are typically returned in response to an incorrect method call.
Additionally, many of these errors will be accompanied by an extra error message provided by the Entrypoint.
Invalid UserOp Error Codes
Code | Description |
---|---|
-32500 | Transaction rejected by entryPoint’s simulateValidation, during wallet creation or validation. The message field is set the FailedOp’s “AAxx” error message from the EntryPoint. |
-32501 | Transaction rejected by paymaster’s validatePaymasterUserOp |
-32502 | Transaction rejected because of opcode validation |
-32503 | UserOperation out of time-range: either wallet or paymaster returned a time-range, and it is already expired (or will expire soon) |
-32504 | Transaction rejected because paymaster (or signature aggregator) is throttled or banned |
-32505 | Transaction rejected because paymaster (or signature aggregator) stake or unstake-delay is too low |
-32506 | Transaction rejected because wallet specified unsupported signature aggregator |
-32507 | Transaction rejected because of wallet signature check failed (or paymaster signature, if the paymaster uses its data as signature) |
-32521 | Transaction was reverted during the execution phase |
-32602 | Invalid UserOperation struct/fields |