Zenoti Integration Explained

Zenoti is a cloud-based software platform for businesses in the wellness and beauty industries, such as spas, salons, and fitness centers.

Sep 15, 2024

Introduction

✨ What is Zenoti?

Zenoti is a cloud-based software platform for businesses in the wellness and beauty industries, such as spas, salons, and fitness centers. It offers a range of features to help manage operations, including:
  • Appointment Scheduling: Streamlines booking for clients and staff.
  • Point of Sale (POS): Manages sales transactions and inventory.
  • Employee Management: Facilitates staff scheduling, payroll, and performance tracking.
  • Marketing Tools: Helps businesses engage with customers through promotions and loyalty programs.
  • Reporting and Analytics: Provides insights into business performance and customer behavior.

βš™οΈ Setting Up a New Webhook

Available Trigger Events

The triggering events from Zenoti mainly cover the creation, update, and deletion of the following objects:
  • Invoice
  • Guest
  • Class
  • Membership & Member
  • Package
  • Appointment & Appointment Group
  • Employee

Step-by-Step Configuration

  1. At the organization level, click the Admin icon.
  1. Navigate to Setup > Automation.
  1. Select "+ Add New Automation".
  1. Enter the following information in the configuration window:
      • a. Name: Input your preferred name for the webhook.
      • b. Description: Add a short description for easy reference.
      • c. Event Type: Choose an event category from the dropdown (e.g., "Guest Membership").
      • d. Event Name: Select the specific event from the dropdown (e.g., "Created").
      • e. Action: This will be set to Webhook by default.
      • f. HTTP Verb: Choose between POST, PUT, or PATCH.
  1. Click Submit.
Your webhook is now ready to send notifications to your external system when the specified event occurs.

πŸ“„ Sample Event Response

When a webhook is triggered, Zenoti sends a JSON payload to your endpoint. Here is an example of what that payload looks like:
JSON
{ "id": "622b5b33a961750e01db6512", "event_id": "622b5b33a961750e01db6510", "event_schema": "v1", "event_resource": "Invoice", "event_type": "Invoice.Closed", "event_timestamp": "2022-03-11T14:22:43.3847049Z", "data": {} }

❗ Important Policies and Notes

Webhook Timeout

Each webhook request will wait 10 seconds for a response from your endpoint. If no response is received, it will attempt to reconnect up to five times.

Webhook Retry Policy

If a delivery fails, the retry mechanism will attempt to resend the webhook up to five times using an exponential backoff strategy. The delay between attempts will be a minimum of 30 seconds and a maximum of 10 minutes.

Automatic Webhook Deactivation

If a webhook experiences 20 consecutive failures, it will be automatically deactivated. A failure notification email will be sent to the administrator.
Sample Deactivation Email:
Due to a series of delivery failures, the webhook {WebhookName} has been temporarily deactivated. Please verify that the destination URL is working and resolve the webhook errors which are listed in the below link.
{WebhookFailureLogURL}
After resolving the webhook errors, you can activate this webhook from inactive tab of webhooks page.
To fix this, you must:
  1. Verify that the destination URL is operational.
  1. Review the Webhook Failure Logs provided in the email.
  1. Correct any errors at the destination URL.
  1. Navigate to the "inactive" tab on the webhooks page in Zenoti and reactivate the webhook.

πŸ“š Reference

Β 
Β