Skip to main content
After verification, NEUS returns a trust receipt identified by its qHash. Save the qHash — it is how you reference, retrieve, and reuse the proof across your app. Default storage is offchain — you get a durable receipt without a blockchain transaction. Opt in to an on-chain hub anchor only when you explicitly set options.publishToHub: true (SDK/API) or enable cross-chain spokes via targetChains. Details in one place: Integration.

qHash

Role
qHashTrust receipt reference in SDK responses, API paths, and URLs
contentHash identifies the proven content or artifact and is not the receipt reference. Visibility: Security and trust

Save / don’t

SaveSkip as sole record
qHashSignature string only
StatusPrivate payloads in public caches
Verifier ids usedUser secrets

Use it

GoalHow
Show/proof/[qHash]
GateVerifyGate
CheckGET /api/v1/proofs/check
PolicyYour server

Proof URL

https://neus.network/proof/[qHash]

SDK

import { getHostedCheckoutUrl } from '@neus/sdk';

const verifyUrl = getHostedCheckoutUrl({
  gateId: 'gate_your-app-name',
  returnUrl: 'https://myapp.com/callback',
});

window.location.assign(verifyUrl);
After the redirect, read the qHash from your callback URL and verify it on your server:
const qHash = new URL(request.url).searchParams.get('qHash');

const record = await client.getProof(qHash);

const eligible = await client.gateCheck({
  address: '0x...',
  gateId: 'gate_your-app-name',
});

API

GET /api/v1/proofs/{qHash}
GET /api/v1/proofs/check?address=0x...&gateId=gate_your-app-name

Next

Hosted Verify

Create via UI.

Security and trust

Public / private.

API

HTTP.
Last modified on June 12, 2026