World ID


To develop and test with World ID, you can set up staging apps. Staging apps use the protocol's staging network. This network is intended to aid with development, and it provides more flexibility to create new identities, issue credentials and try different edge cases.

The staging network uses a separate infrastructure and has the following key characteristics:

  • Identities and credentials are managed in the Simulator. The Simulator is used instead of the World App or other clients.
  • Proofs can be verified in the Developer Portal (all endpoints are the same as production).
  • For on-chain verifications, the World ID smart contract is deployed to the Polygon Mumbai-Testnet.

Access the Worldcoin simulator at to generate test identities and credentials.

Using the Staging network

Using the staging network as an end user is simple, just go to the Simulator,

  1. Create or load a staging identity. If you connect any wallet, a signature from the wallet will be used to generate your identity, which means you can always get that identity back.
  2. Get your Orb credential by verifying your identity within the Simulator.
  3. Scan or paste a QR code generated by the widget.

Verifying proofs

Cloud verificationOn-chain verification

If your action is running on Cloud, you don't have to do anything different when using the staging network. When you create an action you select whether you want to run it in staging or production mode and the Developer Portal will do the proper validation automatically for you.

About identity generation

When you use the simulator you are required to generate or load a World ID identity first. You can either generate a temporary identity which is stored on localStorage and persisted until you log out or clear your browser storage, or generate an identity with any ETH wallet for stronger persistence.

When you generate an identity with an external wallet, we use a signature from your wallet to generate the seed entropy for your identity. This means, if you ever use the same wallet again on the simulator, the same World ID identity will be generated, which can help with persistence and working across devices. Your wallet's private key is never exposed to the simulator.

If you don't have a verified World ID yet, the staging network is a great way to try things out.


The information in this section is currently intended only for internal use by core contributors.

The staging sequencer (used to submit verified identities to the staging Semaphore contract and obtain Merkle proof information) uses a Basic authorization token, and can be found at:

  • for Orb credentials
  • for phone credentials

The staging World ID smart contract (also called the Staging Semaphore instance) is hosted on the Polygon Mumbai-Testnet network and the contract address can be found at:

  • staging.semaphore.wld.eth for Orb credentials
  • for phone credentials

Always do an ENS lookup for the most up-to-date information.