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

# Register KYC Proof

> Process a validated Zero-Knowledge proof and register the nullifier on-chain.

The main KYC registration endpoint. It verifies the cryptographic `snarkjs` Groth16 proof. If the proof is mathematically sound, the backend pays the transaction fee to anchor the `nullifier` into the Algorand `NullifierRegistry` smart contract.

## Body

**public\_signals** `array` *required*

The public output array from the `snarkjs` proof (e.g., Nullifier Haash, SMT Root, Authority Signature).

**proof** `object` *required*

The Groth16 cryptographic proof object.

**Proof Object Properties**

**pi\_a** `array` *required*

Point A on the BN254 curve

**pi\_b** `array` *required*

Point B on the BN254 curve

**pi\_c** `array` *required*

Point C on the BN254 curve

**encrypted\_blob** `string`

The ECIES-encrypted identity package. Only supplied if Conditional Anonymity is enabled.

## Response

**success** `boolean`

Indicates whether the proof was valid and the Algorand transaction succeeded.

**txid** `string`

The Algorand transaction ID for the NullifierRegistry interaction.

```json 200 OK theme={null}
{
  "success": true,
  "txid": "MC526N5AWJUZ57HEIUQATWVCLSW3GIYDDQGOKBYQCZSHRSZ4V7HQ",
  "nullifier_hex": "156f82bc6f8d385dfb...",
  "explorer_url": "https://allo.info/tx/MC52...",
  "demo": false
}
```


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