> ## Documentation Index
> Fetch the complete documentation index at: https://docs.proofable.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Layered verification

> Combine account, social, and proof of human checks in one gate for stronger assurance than any single signal.

One weak signal is easy to game. Define a local policy that layers checks, so visitors must pass more than one.

| Layer | Check | When |
| - | - | - |
| Social or work account | `ownership-social` or `ownership-org-oauth` | The linked identity most products need first |
| Human | `proof-of-human` | Bot resistance and fair access |
| Signed account | `ownership-basic` | A signed account check alongside the others |
| Wallet risk | `wallet-risk` | Payment flows and high-value access |

A common pair is a social account plus proof of human. Add `ownership-basic` or `wallet-risk` when the threat model needs them.

## Define the layered requirements

```javascript theme={"system"}
import { defineGate } from '@proofable/sdk';

const layered = defineGate([
  { verifierId: 'ownership-social' },
  { verifierId: 'proof-of-human' },
]);
```

This is local configuration. It does not publish or persist a Gate.

## Add it to your app

```jsx theme={"system"}
<VerifyGate
  gate={layered}
  onVerified={(result) => {
    // Store result.qHash to prevent replay
  }}
>
  <button>Verify to continue</button>
</VerifyGate>
```

## Check on your server

```javascript theme={"system"}
const result = await client.gateCheck({
  gate: layered,
  subject: { accountId: user.accountAddress },
});

if (!result.satisfied) throw new Error('Verification required');
```

<Warning>
  Set recency on the gate for point-in-time checks, and store proof IDs where replay matters.
</Warning>

[Sell access with a Listing](/gates/sell-access) covers optional publishing and commerce. [Hosted verification](/verification/hosted) covers the browser flow for missing checks.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.