Skip to main content
Use neus_verify to create a receipt when the signed-in wallet can complete the check in-session. For steps that need a browser (OAuth, personhood, payment, wallet connect), use neus_verify_or_guide instead — it returns a hosted link. Always run neus_proofs_check first and reuse an existing receipt before creating a new one.

Input

FieldRequiredNotes
walletAddressYesSubject wallet (EVM 0x…, Solana base58)
verifierIdsYesOne or more verifier ids
dataNoVerifier inputs (see each verifier)
chainNoCAIP-2 chain for the wallet
signatureNoProvided in the finalize step
signedTimestampNoProvided in the finalize step
options.returnUrlNoWhere to send the user if a hosted step is needed
options.publishToHubNoMake the receipt discoverable in Hub
{ "walletAddress": "0x...", "verifierIds": ["ownership-basic"], "data": { "content": "Hello NEUS" } }

Signing flow

neus_verify is two-phase. The first call returns the exact signing material once; sign it with the bound wallet and submit it back to finalize. Do not restart the preparation step blindly — finalize with the material you were given.

Output

A Trust Result: the new receipt qHash and status on success, or a next_action pointing to a hosted step when the check can’t complete in-session.
Last modified on June 15, 2026