Articles on: General Questions

Using Webhooks with WaveRez

WaveRez can automatically send booking information to another system (like Zapier) whenever something important happens — like when a new booking is made, updated, or canceled. This is done using something called a webhook, which lets two systems "talk" to each other automatically.


Getting Started


One Connection Per Business
Each business can connect to just one external system using a webhook.


When Webhooks Are Triggered:

  • A new booking is made (through WaveRez or platforms like TripShock, Viator, GetYourGuide, etc.)
  • A booking is updated (Actions within a booking will not trigger a webhook if they do not result in a booking change, e.g. sending SMS, emails, payment errors, etc)
  • A booking is canceled


How to Set It Up:

  1. Go to the Admin Area of WaveRez
  2. Click on Integrations > Webhooks
  3. Check the box for Use Webhook
  4. Paste your Zapier or custom URL into the Webhook Endpoint field


What Information Is Sent


When a webhook is triggered, WaveRez sends a package of booking information that includes:


  • Customer details (name, phone number)
  • Booking details (date, time, activity name, price)
  • Payment details (card type, transaction ID)


Extra Indicators:

  • new: true → Booking was just created
  • cancelled: true → Booking was just canceled
  • timezone → Shows time offset based on your business location


Example Webhook Payload


{
"type": "Booking",
"booking": {
"id": "1000000",
"format_id": "XNO-1000000",
"user_id": "100",
"is_direct": true,
"is_office": "0",
"payment_method": "pay_now",
"rs_agent": "username",
"ts_agent": null,
"accesskey": "abc123",
"made": "2025-03-21 07:46:39",
"state": "paid",
"was_refunded": "0",
"refund_amount": "0.00",
"gift_certificate": "",
"has_different_days": false,
"customer_last_name": "Up",
"customer_first_name": "Walk",
"customer_email": "",
"customer_phone": "+81111111111",
"customer_phone2": "",
"customer_address": "",
"customer_city": "",
"customer_zip": "",
"customer_state_id": "0",
"customer_state_name": "",
"customer_country_id": "5",
"net_total": 127.33,
"partner_fee": 0,
"transaction_info": [
{
"card_type": "MasterCard",
"card_number": "4444",
"transaction_id": "pi_xxxxxxxxxxxxxxxxxxxxxx"
}
],
"cart_items": [
{
"id": "2000000",
"is_integrated": "0",
"is_overnight": false,
"is_wr_aff": "0",
"state": "paid",
"is_gift": false,
"trip_activity": "",
"comment_guest": "",
"comment_partner": "",
"trip_id": "100",
"trip_name": "Trip name",
"trip_slug": "trip-slug",
"trip_google_place_id": "XXXXXXXXXXXXXXXXXXXXXXX",
"trip_tax": "7",
"trip_fee": "5",
"booking_fee": "0",
"trip_need_tickets_guests": "0",
"arrival_date": "2025-04-03",
"calendar_id": "1000000",
"booked_format": "1 x $119 1 HR Rental",
"net_total": "127.33",
"partner_fee": 0,
"cancel_reason": "",
"invitation_sent": "0",
"voucher_link": "/order/voucher/2000000/",
"rate": [],
"inventory": {
"id": "97",
"name": "Boat 1",
"duration": "60",
"description": ""
},
"schedule": {
"id": "1000",
"time": "10:30am"
},
"tickets": [
{
"id": "1000",
"name": "1 HR Rental",
"duration": "60",
"description": "...",
"rs_internal": "",
"is_overnight": false,
"booked": "1",
"price": "119",
"wholesale": "0",
"comission": "0",
"guests": [],
"barcodes": []
}
],
"additional_options": [],
"has_multipass": null
}
],
"subtotal_custom_fees": 0,
"cancelled": false,
"new": true,
"timezone": "-0500"
}
}


Updated on: 15/04/2025

Was this article helpful?

Share your feedback

Cancel

Thank you!