Technical Reference
Errors
This page is a reference to error codes returned by MiniKit.
Verify
Below are the error codes you could receive with the Verify
command
Code | Description | How to fix? |
---|---|---|
verification_rejected | User rejected the World ID request in World App. | If this was a mistake, trigger the verify command again. |
max_verifications_reached | This person has already verified for this particular action the maximum number of times allowed. | Nothing to do. User cannot verify for this action again. |
credential_unavailable | This user does not have the requested credential. | The user must verify at the Orb or verify their unique device in World App to receive the credential required. |
malformed_request | The request payload couldn't be decrypted or did not conform to the standard. | Ensure MiniKit is configured properly and all parameters are valid. |
invalid_network | The application is configured for a different environment than the verifying user's client. | Ensure you use the Worldcoin Simulator for Staging applications and World App for Production applications. |
inclusion_proof_failed | The sequencer returned an unexpected error when retrieving the inclusion proof. | Ask the user to try again. This may be due to a temporary network issue, or a bug with World App or the Signup Sequencer. |
inclusion_proof_pending | The user might have the requested credential, but it is not available on-chain yet. It might be available for API verification. | Ask the user to verify again in approximately one hour. |
unexpected_response | There was a problem with the response obtained from the WLD app. | Try again, though in most cases these will require contacting us to report the bug. |
generic_error | An unhandled exception occurred. | Try again, though in most cases these will require contacting us to report the bug. |
Pay
Below are the error codes you could receive with the Pay
command
Code | Description | How to fix? |
---|---|---|
input_error | There was a problem with this request. Please try again or contact the app owner. | Ensure the request is properly formed and try again. |
payment_rejected | You’ve cancelled the payment in World App. | If this was a mistake, initiate the payment again. |
invalid_receiver | The receiver address is invalid. Please contact the app owner. | You don't have this address whitelisted inside the Developer Portal. |
insufficient_balance | You do not have enough balance to complete this transaction. | Add more funds to your wallet |
transaction_failed | The transaction failed. Please try again. | Try the transaction again. Something failed on-chain. |
generic_error | Something unexpected went wrong. Please try again. | Try again, though in most cases these will require contacting us to report the bug. |
Wallet Auth
Below are the error codes you could receive with the walletAuth
command
Code | Description | How to fix? |
---|---|---|
malformed_request | Provided parameters in the request are invalid. | Ensure the request is properly formed and try again. If the problem persists, contact the app owner. |
user_rejected | User rejected the request. | If this was a mistake, initiate the request again. |
generic_error | Something unexpected went wrong. | Try the request again. If the problem persists, contact the app owner. |
Transactions
Below are the error codes you could receive with the Transaction
command
Code | Description | How to fix? |
---|---|---|
invalid_operation | Transaction included an operation that was invalid | Your app tried using a disallowed operation. These include approve, setAllowance, setApprovalForAll, or setApprovalForAll. |
invalid_contract | App must whitelist the contract you're calling in the Developer Portal | Go to the Developer Portal and whitelist the contract you're calling |
user_rejected | User declined the transaction modal | User closed the transaction modal. |
input_error | Payload received does not conform to specified type | Ensure the request is properly formed and try again. Note all args must be string. Payload has max size of 8kb so your ABI should just be for your function |
simulation_failed | Simulation provider transaction simulation failed (this can include insufficient balance) | Txn simulation failed see the debugUrl returned to understand why |
transaction_failed | Transaction failed please try again later | Try again later. Could be blob fees too high or network congestion |
generic_error | Request failed for unknown reason | Try the request again. If the problem persists, contact the app owner. |
Other helpful things
- If you get a GS026 error, it means the signature is not valid. Most likely there's something switched in your args vs your permit. Double check each argument usually this is the nonce and timestamp getting mixed up.