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

# Webhooks

> Receive real-time event notifications

<Info>
  Webhooks allow external systems to push event notifications to OLIVE. These endpoints receive payment confirmations, message events, and other real-time updates.
</Info>

## Features

<CardGroup cols={2}>
  <Card title="VULT Integration" icon="credit-card">
    Receive cash-in notifications from VULT processor
  </Card>

  <Card title="WhatsApp Messages" icon="comment">
    Process WhatsApp messages via Agent-TS
  </Card>

  <Card title="HMAC Verification" icon="shield">
    Secure webhook payloads with signature verification
  </Card>

  <Card title="Real-time Processing" icon="zap">
    Instant event handling and response
  </Card>
</CardGroup>

***

## Endpoints

<CardGroup cols={2}>
  <Card title="VULT Webhook" icon="credit-card" href="/api-reference/webhooks/vult">
    `POST /webhooks/vult/cashin`

    Receive VULT cash-in notifications
  </Card>

  <Card title="WhatsApp Webhook" icon="comment" href="/api-reference/webhooks/whatsapp">
    `POST /api/v1/external/whatsapp`

    Process WhatsApp messages
  </Card>
</CardGroup>

***

## Webhook Security

<Warning>
  All webhooks should verify the signature before processing:

  1. Extract signature from header (`X-Webhook-Signature` or equivalent)
  2. Compute HMAC-SHA256 of the raw request body
  3. Compare signatures using timing-safe comparison
  4. Reject requests with invalid or missing signatures
</Warning>

***

## Webhook Flow

<Steps>
  <Step title="Event Occurs">
    External system (VULT, WhatsApp) generates an event
  </Step>

  <Step title="Webhook Sent">
    System sends HTTP POST to configured endpoint with signed payload
  </Step>

  <Step title="Verify Signature">
    OLIVE verifies HMAC signature before processing
  </Step>

  <Step title="Process Event">
    Event is processed (e.g., credit wallet, respond to message)
  </Step>

  <Step title="Acknowledge">
    Return success response to confirm receipt
  </Step>
</Steps>
