CalryOTA Docs

Outgoing Webhooks

Zepl Outgoing Webhooks

Introduction

Outgoing webhooks let you receive real-time notifications about reservation events from your PMS. When a new integration account is created, Zepl automatically subscribes to the PMS's webhooks and processes them to keep your reservations and listing data in sync. By creating an outgoing webhook app, you can also receive webhooks from Zepl notifying you of changes made to reservations.

Supported Events

Currently, we support the following events:

  • RESERVATION_CREATED: Triggered when a new reservation is created
  • RESERVATION_UPDATED: Triggered when an existing reservation is modified
  • RESERVATION_CANCELLED: Triggered when a reservation is cancelled
  • NEW_LISTINGS_IMPORTED: Triggered when new listings are imported from a PMS after the initial sync or a re-sync

Getting Started

To start receiving webhook notifications, you will need to create an outgoing webhook app for each provider you want to receive reservation events from. This needs the following information:

  • The provider you want to receive reservation events from
  • The events you want to monitor (RESERVATION_CREATED, RESERVATION_UPDATED, RESERVATION_CANCELLED)
  • The URLs where you want to receive the notifications

Webhook Payload Structure

When an event occurs, Zepl will send a POST request to your configured URLs with a payload in the following format:

{
  "event": "RESERVATION_CREATED",
  "data": {
    "id": 41906762,
    "providerID": "240396",
    "arrivalDate": "2025-05-17",
    "departureDate": "2025-05-20",
    "status": "CONFIRMED",
    "guests": 2,
    "guest": {
      "name": "John Doe",
      "firstName": "John",
      "lastName": "Doe",
      "email": [
        "john.doe@gmail.com"
      ],
      "phone": [
        "+1234567890"
      ]
    },
    "adults": 2,
    "children": 0,
    "infants": 0,
    "pets": 0
  },
  "integrationAccount": {
    "id": "a2a4be53-3c15-4d51-b762-2c9f8bc11145",
    "provider": "HOSTAWAY"
  }
}

API Reference

For detailed API documentation, please refer to the following endpoints:

Considerations

  1. Always validate the webhook payload on your end
  2. Implement proper error handling for failed webhook deliveries
  3. Use HTTPS URLs for secure webhook delivery

On this page