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

# Zapier

> Connect Verilock to 6,000+ apps with Zapier automations.

The Zapier integration lets you connect Verilock events to thousands of apps without writing code. Use "Webhooks by Zapier" to catch Verilock events and trigger actions in Google Sheets, Notion, Gmail, Slack, and more.

## Prerequisites

* A Zapier account (Free plan or above)
* Verilock Business or Enterprise plan

## Setup

<Steps>
  <Step title="Create a New Zap">
    Log in to [zapier.com](https://zapier.com) and click **Create Zap**. For the trigger, search for and select **Webhooks by Zapier**.
  </Step>

  <Step title="Choose Catch Hook">
    Select **Catch Hook** as the trigger event. This creates a unique webhook URL that Zapier will listen on. Click **Continue** and copy the webhook URL.
  </Step>

  <Step title="Configure in Verilock">
    Go to **Dashboard > Settings > Integrations > Zapier** and enter:

    * **Webhook URL**: Paste the Zapier webhook URL
    * **Events**: Select which events to forward to Zapier

    Click **Save** to activate.
  </Step>

  <Step title="Test the Trigger">
    Click **Send Test Event** in the Verilock dashboard. Return to Zapier and click **Test trigger** to confirm the payload was received.
  </Step>

  <Step title="Add an Action">
    Choose your destination app (e.g., Google Sheets, Notion, Gmail) and map the Verilock event fields to the action fields.
  </Step>

  <Step title="Publish the Zap">
    Click **Publish** to activate your Zap. Events will now flow from Verilock to your chosen destination automatically.
  </Step>
</Steps>

## Event Payload

Zapier receives the same payload structure as standard Verilock webhooks:

```json theme={null}
{
  "event": "session.approved",
  "data": {
    "session_id": "ses_a1b2c3d4e5f6",
    "status": "approved",
    "risk_score": 12,
    "applicant": {
      "first_name": "Jean",
      "last_name": "Dupont",
      "email": "jean@example.com"
    },
    "completed_at": "2026-03-15T14:30:00Z"
  },
  "timestamp": "2026-03-15T14:30:01Z",
  "webhook_id": "wh_evt_9f8e7d6c5b4a"
}
```

## Example Use Cases

<CardGroup cols={2}>
  <Card title="Google Sheets Log" icon="table">
    Append a new row to a spreadsheet for every completed verification. Track session IDs, applicant names, decisions, and timestamps.
  </Card>

  <Card title="Notion Database" icon="database">
    Create a Notion database entry for each AML match, with properties for risk score, match type, and review status.
  </Card>

  <Card title="Gmail Alert" icon="envelope">
    Send an email to your compliance officer when a transaction is blocked, including the full event details.
  </Card>

  <Card title="HubSpot Contact" icon="address-book">
    Create or update a HubSpot contact when a KYC session is approved, syncing verified identity data.
  </Card>
</CardGroup>

## Event Subscriptions

Choose which events are forwarded to Zapier:

| Event                 | Description                       |
| --------------------- | --------------------------------- |
| `session.approved`    | Identity verification approved    |
| `session.declined`    | Identity verification declined    |
| `session.completed`   | Verification session finished     |
| `aml.match_found`     | AML watchlist match detected      |
| `transaction.flagged` | Transaction flagged for review    |
| `transaction.blocked` | Transaction automatically blocked |

<Tip>
  You can create multiple Zaps with different event subscriptions. For example, one Zap for approved sessions going to Google Sheets and another for AML matches going to email.
</Tip>

## Multi-Step Zaps

For complex workflows, chain multiple actions in a single Zap:

1. **Trigger**: Verilock `session.declined` event
2. **Filter**: Only continue if `risk_score > 70`
3. **Action 1**: Create a Jira issue for compliance review
4. **Action 2**: Send a Slack message to the `#compliance` channel
5. **Action 3**: Add a row to a Google Sheets audit log

<Warning>
  Multi-step Zaps require a Zapier paid plan. Free accounts are limited to single-step Zaps.
</Warning>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Zap not triggering">
    Verify the webhook URL in Verilock matches the one shown in Zapier. Check that the Zap is published (not in draft mode). Review the Zapier Task History for errors.
  </Accordion>

  <Accordion title="Fields not mapping correctly">
    Re-test the trigger in Zapier to refresh the sample data. Zapier uses the test payload to determine available fields for mapping.
  </Accordion>

  <Accordion title="Duplicate events">
    Verilock may retry failed deliveries. Use the `webhook_id` field as a deduplication key in your Zap by adding a filter or lookup step.
  </Accordion>
</AccordionGroup>
