# Persona - Automatic KYC

## Available To

Free for the following exchange plans:&#x20;

* **Cloud Plans:**
  * Enterprise
* **On-Premise Plans:**
  * Enterprise Unlimited

## What Is It?

The **Persona Plugin** is an identity verification and KYC solution integrated into HollaEx exchanges. Powered by [Persona](https://withpersona.com), it provides a fully hosted identity verification flow — government ID, selfie, liveness, and document checks — without your team having to handle sensitive PII directly.

The plugin creates a Persona inquiry per user, redirects the user into the hosted Persona flow, listens for inquiry status updates via a secure webhook (which is then re-verified against the Persona API to prevent spoofing), and updates the user's `id_data.status` on the exchange. Admins also have manual controls to verify or revoke a user's KYC status from the operator dashboard.

## Who Needs It?

This plugin is essential for any HollaEx exchange operator that:

* Needs to meet regulatory KYC/AML requirements.
* Wants to automate and streamline customer onboarding.
* Operates in regions where compliance is mandatory for trading, deposits, or withdrawals.
* Wants a customizable, white-labeled verification flow controlled from a single Persona template.

## How to Use It?

You can simply install the plugin from the **Plugins** section inside the Operator Control. After installation, input your **Persona API key** and **template ID**.

#### 1. Get your Persona credentials

1. Log in to the [Persona Dashboard](https://app.withpersona.com).
2. Open **Settings → API Keys** and create an API key. It is sent on every request as a Bearer token.
3. Open **Inquiries → Templates**, create or select a template (the hosted flow your users will see), and copy its **Template ID** (`itmpl_XXXXXXXXXXXXXXXXXXXXXXXX`).

#### 2. Set up the webhook in Persona

1. In Persona, go to **Settings → Webhooks**.
2. Create a new webhook.
3. Set the **Target URL** to:

   ```
   https://<your exchange url>/api/plugins/persona/webhook
   ```
4. Subscribe to the `inquiry.*` event family (at a minimum `inquiry.approved`, `inquiry.declined`, `inquiry.failed`, `inquiry.expired`).

The plugin re-verifies every webhook against the Persona API before changing a user's status, so the webhook secret is not strictly required for security — but you can still set one in Persona for defense in depth.

#### 3. Configure the plugin

Open the plugin in the Operator Control and set the following fields:

| Field          | Required | Default                          | Description                                                          |
| -------------- | -------- | -------------------------------- | -------------------------------------------------------------------- |
| `url` (public) | yes      | `https://withpersona.com/api/v1` | Persona API base URL.                                                |
| `api_key`      | **yes**  | —                                | Persona API key (Bearer token used for all API requests).            |
| `template_id`  | **yes**  | —                                | Persona inquiry template ID (e.g. `itmpl_XXXXXXXXXXXXXXXXXXXXXXXX`). |

Once configured, all verification requests and responses will be automatically managed between HollaEx and Persona.

***

#### Benefits for HollaEx Operators

The Persona plugin saves exchange operators time and resources by outsourcing identity checks to a trusted global compliance provider. It helps reduce fraud, prevents unauthorized access, and ensures that exchanges are legally compliant in multiple regions. The customizable Persona templates let you tailor the verification flow per market — collecting passport in one country, driver's license in another — while the plugin keeps the on-chain user state in lock-step with Persona's authoritative inquiry status.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hollaex.com/plugins/use-plugins/persona-automatic-kyc.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
