Webhooks

Download OpenAPI specification:Download

Introduction

Webhooks allow 3rd party applications to be notified or updated when certain events happen on Rezdy. When the specified events happen, a POST request to each of the URLs you provide will be sent in JSON format. A typical use case would be connecting a third party app to start some workflow when for example a new booking is created on Rezdy. If you'd like to integrate Rezdy webhooks and have any questions or need advice get in touch.

Rezdy APIs

Rezdy offers different API products for different types of businesses. Make sure to choose the right one for your needs.

Rezdy API for agents

REST API for Rezdy agents and OTAs (online travel agents), providing functionality to resell suppliers products, including pulling shared products, availability and pricing from Rezdy, and pushing bookings and cancellations to Rezdy.

Rezdy API for agents specification

Rezdy API for suppliers

REST API for suppliers using Rezdy Booking Software provides functionality to manage their Rezdy inventory and booking capabilities.

Rezdy API for suppliers specification

RezdyConnect (RC)

The RezdyConnect API powers the supply side of the Rezdy Channel Manager tool. The API is designed for suppliers using other ticketing systems, allowing them to import and resell their products through Rezdy’s connected channels. Rezdy pulls availability and pricing, and pushes bookings and cancellations to the supplier’s booking system.

RezdyConnect specification

Rezdy Webhooks

Webhooks allow 3rd party applications to be notified or updated when certain events happen on Rezdy, by sending data to configured URLs.

Webhooks specification

Overview

Webhook request body

Webhook payload in general contains the current entity state and it's fired whenever the entity is updated. We do not calculate differences between the previous and the current state, if needed this must be implemented on the consumer end. Refer to specific webhook types below for the exact payload.

Consumer response

A webhook consumer has to respond to a webhook with a successful 2xx HTTP status code (e.g: 200, 201, 202, 204...), otherwise, the webhook failure will be counted.

For each configured webhook, if call fails consecutively for more than 20 times, the webhook will be suspended and an alert e-mail will be sent to the company e-mail address. The webhook has to be then manually activated using Webhook configuration screen on Rezdy.

Webhooks delivery

A webhook consumer should handle idempotent calls, for each webhook triggering event we will attempt a single successful delivery, however in rare cases there might be a duplicate delivery for the same webhook event. Currently, we do not retry failed webhooks, but this may change in the future. We may start retrying 5xx status codes.

Getting started

To find out how to set up webhooks in Rezdy UI, please refer to the How To Set Up a Webhook article.

Change log

2021-08-30

Published this initial version of the new webhook specification portal.

Order

new order

The webhook is fired whenever a new order is created regardless of the source, such as API, Internal or Online order.

Some agents create bookings using a 2-steps process. They create reservations first (orders in PROCESSING order status) and then confirm orders by updating their status. In such case the NEW_ORDER webhooks will be fired for reservations (PROCESSING status) and then UPDATED_ORDER webhooks will be fired upon bookings confirmation (orders status CONFIRMED or PENDING_SUPPLIER/PENDING_CUSTOMER if configured on product).

For that reason, if the goal is to process all confirmed bookings only, the recommended way is to set up a NEW_ORDER and an UPDATED_ORDER webhook (they can use the same target URL) and filter bookings with CONFIRMED order status only.

Request Body schema: application/json

New Order Webhook

comments
string

Special requirements entered by the customer. Visible to both customer and supplier.

commission
number

Calculated commission that the agent should receive for this booking.

coupon
string

Promo code that has been applied to this booking.

object

User who created this Booking.

object

Add a credit card payment to a booking.

required
object

Customer details.

dateConfirmed
string

Date this booking was confirmed.

dateCreated
string

Date this booking was created.

datePaid
string

Date this booking was fully paid.

dateReconciled
string

Date this booking was reconciled with the agent.

dateUpdated
string

Date this booking was last updated.

Array of objects

List of custom fields that are required "once per booking" by all the products in this booking.

internalNotes
string

Comments only visible internally by the supplier.

required
Array of objects

List of items in this booking. A booking can contain multiple products. Each BookingItem is a separate product with its own set of quantities and. participant details.

orderNumber
string

Order number. This is the number you should give to customers and print on booking confirmations. Order number is generated by Rezdy.

paymentOption
string
Enum: "ALIPAY" "BANKTRANSFER" "CASH" "CREDITCARD" "EXTERNAL" "INVOICE" "PAYPAL"

Payment option selected by the customer when making an online booking.

Array of objects

List of payments recorded for this booking.

resellerAlias
string

Alias of the agent company attached to this booking.

resellerComments
string

Comments only visible by the agent and the supplier. This should be used by the agent to send voucher numbers./redemption codes to suppliers.

resellerId
number

Rezdy internal ID of the agent company attached to this booking.

resellerName
string

Name of the agent company attached to this booking.

resellerReference
string

External reseller reference, can be used to pass internal booking number. This reference will be shown to a supplier,. also it will appear on reports and can be used to filter orders.

resellerSource
string
Enum: "API" "INTERNAL" "MARKETPLACE" "MARKETPLACE_PREF_RATE" "ONLINE"

Source of this booking viewed from the agent.

object

Name of the agent user attached to this booking.

sendNotifications
boolean

Flag to control if a booking confirmation email should be send to the customer after this booking is created.<br./ > This will also send other types of customer notifications when setup by the supplier (I.e. SMS, Gift cards).

source
string
Enum: "API" "INTERNAL" "MARKETPLACE" "MARKETPLACE_PREF_RATE" "ONLINE"

Source of this booking viewed from the supplier.

sourceChannel
string

Agent code defined by the supplier.

sourceReferrer
string

Referrer code.

status
string
Enum: "ABANDONED_CART" "CANCELLED" "CONFIRMED" "NEW" "ON_HOLD" "PENDING_CUSTOMER" "PENDING_SUPPLIER" "PROCESSING"

Status of this booking.

supplierAlias
string

Alias of the company supplying this product.

supplierId
number

Rezdy internal ID of the company supplying this product.

supplierName
string

Name of the company supplying this product.

surcharge
number

Credit card surcharge calculated for this booking.

totalAmount
number

Total booking amount.

totalCurrency
string
Enum: "AED" "AFA" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUP" "CVE" "CYP" "CZK" "DJF" "DKK" "DOP" "DZD" "ECS" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GGP" "GHC" "GHS" "GIP" "GMD" "GNF" "GTQ" "GWP" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "IMP" "INR" "IQD" "IRR" "ISK" "JEP" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KIP" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MMK" "MNT" "MOP" "MRO" "MTL" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "MZN" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "RWF" "SAR" "SBD" "SCR" "SDD" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "STD" "SVC" "SYP" "SZL" "THB" "TJS" "TMM" "TND" "TOP" "TRL" "TRY" "TTD" "TVD" "TWD" "TZS" "UAH" "UGX" "USD" "UYI" "UYU" "UZS" "VEF" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "YER" "YUM" "ZAR" "ZMK" "ZMW" "ZWD"

Booking Currency.

totalDue
number

Amount still due for this booking.

totalPaid
number

Amount already paid.

vouchers
Array of strings

List of vouchers (Gift cards) that have been redeemed to pay for this booking.

Responses

Request samples

Content type
application/json
{
  • "orderNumber": "DU000157",
  • "status": "PROCESSING",
  • "supplierId": 9401,
  • "supplierName": "Homer",
  • "resellerId": 1075,
  • "resellerName": "Rezdy Demo",
  • "customer": {
    • "id": 9870,
    • "firstName": "Homer",
    • "lastName": "Simpson",
    • "name": "Homer Simpson",
    • "email": "homersimpson@rezdy.com",
    • "mobile": "+61484123456"
    },
  • "items": [
    • {
      • "productName": "AnyDate",
      • "productCode": "PZJFH4",
      • "startTime": "2017-08-16T09:00:00Z",
      • "startTimeLocal": "2017-08-16 19:00:00",
      • "quantities": [
        • {
          • "optionLabel": "Group from 1 to 2",
          • "optionPrice": 100,
          • "value": 1
          }
        ],
      • "totalQuantity": 1,
      • "amount": 100,
      • "extras": [ ],
      • "participants": [
        • {
          • "fields": [
            • {
              • "label": "First Name",
              • "value": "Homer"
              },
            • {
              • "label": "Last Name",
              • "value": "Simpson"
              },
            • {
              • "label": "Gender",
              • "value": ""
              }
            ]
          }
        ],
      • "transferReturn": false,
      • "subtotal": 107,
      • "vouchers": [ ],
      • "totalItemTax": 7
      }
    ],
  • "totalAmount": 109.14,
  • "totalCurrency": "AUD",
  • "totalPaid": 107,
  • "totalDue": 2.1399994,
  • "dateCreated": "2018-07-31T00:02:39Z",
  • "dateUpdated": "2018-07-31T02:22:44Z",
  • "datePaid": "2018-07-31T00:02:42Z",
  • "dateReconciled": "2018-07-31T00:02:39Z",
  • "comments": "",
  • "internalNotes": "",
  • "payments": [
    • {
      • "type": "REZDY_PAYOUTS",
      • "amount": 10,
      • "currency": "AUD",
      • "date": "2018-07-31T00:02:42Z",
      • "label": "STRIPE Application Fee: ch_1CtlK0IQxFAfFTHyKDGRlqd5",
      • "recipient": "REZDY"
      },
    • {
      • "type": "REZDY_PAYOUTS",
      • "amount": 97,
      • "currency": "AUD",
      • "date": "2018-07-31T00:02:42Z",
      • "label": "STRIPE: ch_1CtlK0IQxFAfFTHyKDGRlqd5",
      • "recipient": "SUPPLIER"
      }
    ],
  • "fields": [
    • {
      • "label": "How did you hear about us?",
      • "value": "Internet"
      }
    ],
  • "source": "MARKETPLACE_PREF_RATE",
  • "resellerSource": "API",
  • "sourceChannel": "REZDYDEMO",
  • "resellerComments": "REZDYDEMO order",
  • "surcharge": 2.14,
  • "commission": 10,
  • "vouchers": [ ],
  • "paymentOption": "CREDITCARD",
  • "resellerReference": ""
}

Response samples

Content type
application/json
{ }

updated order

The webhook is fired whenever an existing order is updated regardless of the change.

Rezdy does not calculate any differences between the previous and the current order model, nor provides any indication of what kind of update fired the webhook, therefore this has to be calculated by a webhook consumer. Furthermore, the payload of the updated order does not necessarily need to be different from a previous one, since not every order change will cause a modification of the exposed public webhooks model.

Request Body schema: application/json

Updated Order Webhook

comments
string

Special requirements entered by the customer. Visible to both customer and supplier.

commission
number

Calculated commission that the agent should receive for this booking.

coupon
string

Promo code that has been applied to this booking.

object

User who created this Booking.

object

Add a credit card payment to a booking.

required
object

Customer details.

dateConfirmed
string

Date this booking was confirmed.

dateCreated
string

Date this booking was created.

datePaid
string

Date this booking was fully paid.

dateReconciled
string

Date this booking was reconciled with the agent.

dateUpdated
string

Date this booking was last updated.

Array of objects

List of custom fields that are required "once per booking" by all the products in this booking.

internalNotes
string

Comments only visible internally by the supplier.

required
Array of objects

List of items in this booking. A booking can contain multiple products. Each BookingItem is a separate product with its own set of quantities and. participant details.

orderNumber
string

Order number. This is the number you should give to customers and print on booking confirmations. Order number is generated by Rezdy.

paymentOption
string
Enum: "ALIPAY" "BANKTRANSFER" "CASH" "CREDITCARD" "EXTERNAL" "INVOICE" "PAYPAL"

Payment option selected by the customer when making an online booking.

Array of objects

List of payments recorded for this booking.

resellerAlias
string

Alias of the agent company attached to this booking.

resellerComments
string

Comments only visible by the agent and the supplier. This should be used by the agent to send voucher numbers./redemption codes to suppliers.

resellerId
number

Rezdy internal ID of the agent company attached to this booking.

resellerName
string

Name of the agent company attached to this booking.

resellerReference
string

External reseller reference, can be used to pass internal booking number. This reference will be shown to a supplier,. also it will appear on reports and can be used to filter orders.

resellerSource
string
Enum: "API" "INTERNAL" "MARKETPLACE" "MARKETPLACE_PREF_RATE" "ONLINE"

Source of this booking viewed from the agent.

object

Name of the agent user attached to this booking.

sendNotifications
boolean

Flag to control if a booking confirmation email should be send to the customer after this booking is created.<br./ > This will also send other types of customer notifications when setup by the supplier (I.e. SMS, Gift cards).

source
string
Enum: "API" "INTERNAL" "MARKETPLACE" "MARKETPLACE_PREF_RATE" "ONLINE"

Source of this booking viewed from the supplier.

sourceChannel
string

Agent code defined by the supplier.

sourceReferrer
string

Referrer code.

status
string
Enum: "ABANDONED_CART" "CANCELLED" "CONFIRMED" "NEW" "ON_HOLD" "PENDING_CUSTOMER" "PENDING_SUPPLIER" "PROCESSING"

Status of this booking.

supplierAlias
string

Alias of the company supplying this product.

supplierId
number

Rezdy internal ID of the company supplying this product.

supplierName
string

Name of the company supplying this product.

surcharge
number

Credit card surcharge calculated for this booking.

totalAmount
number

Total booking amount.

totalCurrency
string
Enum: "AED" "AFA" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUP" "CVE" "CYP" "CZK" "DJF" "DKK" "DOP" "DZD" "ECS" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GGP" "GHC" "GHS" "GIP" "GMD" "GNF" "GTQ" "GWP" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "IMP" "INR" "IQD" "IRR" "ISK" "JEP" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KIP" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MMK" "MNT" "MOP" "MRO" "MTL" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "MZN" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "RWF" "SAR" "SBD" "SCR" "SDD" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "STD" "SVC" "SYP" "SZL" "THB" "TJS" "TMM" "TND" "TOP" "TRL" "TRY" "TTD" "TVD" "TWD" "TZS" "UAH" "UGX" "USD" "UYI" "UYU" "UZS" "VEF" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "YER" "YUM" "ZAR" "ZMK" "ZMW" "ZWD"

Booking Currency.

totalDue
number

Amount still due for this booking.

totalPaid
number

Amount already paid.

vouchers
Array of strings

List of vouchers (Gift cards) that have been redeemed to pay for this booking.

Responses

Request samples

Content type
application/json
{
  • "orderNumber": "DU000157",
  • "status": "CONFIRMED",
  • "supplierId": 9401,
  • "supplierName": "Homer",
  • "resellerId": 1075,
  • "resellerName": "Rezdy Demo",
  • "customer": {
    • "id": 9870,
    • "firstName": "Homer",
    • "lastName": "Simpson",
    • "name": "Homer Simpson",
    • "email": "homersimpson@rezdy.com",
    • "mobile": "+61484123456"
    },
  • "items": [
    • {
      • "productName": "AnyDate",
      • "productCode": "PZJFH4",
      • "startTime": "2017-08-16T09:00:00Z",
      • "startTimeLocal": "2017-08-16 19:00:00",
      • "quantities": [
        • {
          • "optionLabel": "Group from 1 to 2",
          • "optionPrice": 100,
          • "value": 1
          }
        ],
      • "totalQuantity": 1,
      • "amount": 100,
      • "extras": [ ],
      • "participants": [
        • {
          • "fields": [
            • {
              • "label": "First Name",
              • "value": "Homer"
              },
            • {
              • "label": "Last Name",
              • "value": "Simpson"
              },
            • {
              • "label": "Gender",
              • "value": ""
              }
            ]
          }
        ],
      • "transferReturn": false,
      • "subtotal": 107,
      • "vouchers": [ ],
      • "totalItemTax": 7
      }
    ],
  • "totalAmount": 109.14,
  • "totalCurrency": "AUD",
  • "totalPaid": 107,
  • "totalDue": 2.1399994,
  • "dateCreated": "2018-07-31T00:02:39Z",
  • "dateUpdated": "2018-07-31T02:22:44Z",
  • "datePaid": "2018-07-31T00:02:42Z",
  • "dateReconciled": "2018-07-31T00:02:39Z",
  • "comments": "",
  • "internalNotes": "",
  • "payments": [
    • {
      • "type": "REZDY_PAYOUTS",
      • "amount": 10,
      • "currency": "AUD",
      • "date": "2018-07-31T00:02:42Z",
      • "label": "STRIPE Application Fee: ch_1CtlK0IQxFAfFTHyKDGRlqd5",
      • "recipient": "REZDY"
      },
    • {
      • "type": "REZDY_PAYOUTS",
      • "amount": 97,
      • "currency": "AUD",
      • "date": "2018-07-31T00:02:42Z",
      • "label": "STRIPE: ch_1CtlK0IQxFAfFTHyKDGRlqd5",
      • "recipient": "SUPPLIER"
      }
    ],
  • "fields": [
    • {
      • "label": "How did you hear about us?",
      • "value": "Internet"
      }
    ],
  • "source": "MARKETPLACE_PREF_RATE",
  • "resellerSource": "API",
  • "sourceChannel": "REZDYDEMO",
  • "resellerComments": "REZDYDEMO order",
  • "surcharge": 2.14,
  • "commission": 10,
  • "vouchers": [ ],
  • "paymentOption": "CREDITCARD",
  • "resellerReference": ""
}

Response samples

Content type
application/json
{ }

cancelled order

The webhook is fired whenever an order is cancelled regardless of the cancellation source - if the status change has been done internally by the supplier or by the reseller.

Request Body schema: application/json

Cancelled Order Webhook

comments
string

Special requirements entered by the customer. Visible to both customer and supplier.

commission
number

Calculated commission that the agent should receive for this booking.

coupon
string

Promo code that has been applied to this booking.

object

User who created this Booking.

object

Add a credit card payment to a booking.

required
object

Customer details.

dateConfirmed
string

Date this booking was confirmed.

dateCreated
string

Date this booking was created.

datePaid
string

Date this booking was fully paid.

dateReconciled
string

Date this booking was reconciled with the agent.

dateUpdated
string

Date this booking was last updated.

Array of objects

List of custom fields that are required "once per booking" by all the products in this booking.

internalNotes
string

Comments only visible internally by the supplier.

required
Array of objects

List of items in this booking. A booking can contain multiple products. Each BookingItem is a separate product with its own set of quantities and. participant details.

orderNumber
string

Order number. This is the number you should give to customers and print on booking confirmations. Order number is generated by Rezdy.

paymentOption
string
Enum: "ALIPAY" "BANKTRANSFER" "CASH" "CREDITCARD" "EXTERNAL" "INVOICE" "PAYPAL"

Payment option selected by the customer when making an online booking.

Array of objects

List of payments recorded for this booking.

resellerAlias
string

Alias of the agent company attached to this booking.

resellerComments
string

Comments only visible by the agent and the supplier. This should be used by the agent to send voucher numbers./redemption codes to suppliers.

resellerId
number

Rezdy internal ID of the agent company attached to this booking.

resellerName
string

Name of the agent company attached to this booking.

resellerReference
string

External reseller reference, can be used to pass internal booking number. This reference will be shown to a supplier,. also it will appear on reports and can be used to filter orders.

resellerSource
string
Enum: "API" "INTERNAL" "MARKETPLACE" "MARKETPLACE_PREF_RATE" "ONLINE"

Source of this booking viewed from the agent.

object

Name of the agent user attached to this booking.

sendNotifications
boolean

Flag to control if a booking confirmation email should be send to the customer after this booking is created.<br./ > This will also send other types of customer notifications when setup by the supplier (I.e. SMS, Gift cards).

source
string
Enum: "API" "INTERNAL" "MARKETPLACE" "MARKETPLACE_PREF_RATE" "ONLINE"

Source of this booking viewed from the supplier.

sourceChannel
string

Agent code defined by the supplier.

sourceReferrer
string

Referrer code.

status
string
Enum: "ABANDONED_CART" "CANCELLED" "CONFIRMED" "NEW" "ON_HOLD" "PENDING_CUSTOMER" "PENDING_SUPPLIER" "PROCESSING"

Status of this booking.

supplierAlias
string

Alias of the company supplying this product.

supplierId
number

Rezdy internal ID of the company supplying this product.

supplierName
string

Name of the company supplying this product.

surcharge
number

Credit card surcharge calculated for this booking.

totalAmount
number

Total booking amount.

totalCurrency
string
Enum: "AED" "AFA" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUP" "CVE" "CYP" "CZK" "DJF" "DKK" "DOP" "DZD" "ECS" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GGP" "GHC" "GHS" "GIP" "GMD" "GNF" "GTQ" "GWP" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "IMP" "INR" "IQD" "IRR" "ISK" "JEP" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KIP" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MMK" "MNT" "MOP" "MRO" "MTL" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "MZN" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "RWF" "SAR" "SBD" "SCR" "SDD" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "STD" "SVC" "SYP" "SZL" "THB" "TJS" "TMM" "TND" "TOP" "TRL" "TRY" "TTD" "TVD" "TWD" "TZS" "UAH" "UGX" "USD" "UYI" "UYU" "UZS" "VEF" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "YER" "YUM" "ZAR" "ZMK" "ZMW" "ZWD"

Booking Currency.

totalDue
number

Amount still due for this booking.

totalPaid
number

Amount already paid.

vouchers
Array of strings

List of vouchers (Gift cards) that have been redeemed to pay for this booking.

Responses

Request samples

Content type
application/json
{
  • "orderNumber": "DU000157",
  • "status": "CANCELLED",
  • "supplierId": 9401,
  • "supplierName": "Homer",
  • "resellerId": 1075,
  • "resellerName": "Rezdy Demo",
  • "customer": {
    • "id": 9870,
    • "firstName": "Homer",
    • "lastName": "Simpson",
    • "name": "Homer Simpson",
    • "email": "homersimpson@rezdy.com",
    • "mobile": "+61484123456"
    },
  • "items": [
    • {
      • "productName": "AnyDate",
      • "productCode": "PZJFH4",
      • "startTime": "2017-08-16T09:00:00Z",
      • "startTimeLocal": "2017-08-16 19:00:00",
      • "quantities": [
        • {
          • "optionLabel": "Group from 1 to 2",
          • "optionPrice": 100,
          • "value": 1
          }
        ],
      • "totalQuantity": 1,
      • "amount": 100,
      • "extras": [ ],
      • "participants": [
        • {
          • "fields": [
            • {
              • "label": "First Name",
              • "value": "Homer"
              },
            • {
              • "label": "Last Name",
              • "value": "Simpson"
              },
            • {
              • "label": "Gender",
              • "value": ""
              }
            ]
          }
        ],
      • "transferReturn": false,
      • "subtotal": 107,
      • "vouchers": [ ],
      • "totalItemTax": 7
      }
    ],
  • "totalAmount": 109.14,
  • "totalCurrency": "AUD",
  • "totalPaid": 107,
  • "totalDue": 2.1399994,
  • "dateCreated": "2018-07-31T00:02:39Z",
  • "dateUpdated": "2018-07-31T02:22:44Z",
  • "datePaid": "2018-07-31T00:02:42Z",
  • "dateReconciled": "2018-07-31T00:02:39Z",
  • "comments": "",
  • "internalNotes": "",
  • "payments": [
    • {
      • "type": "REZDY_PAYOUTS",
      • "amount": 10,
      • "currency": "AUD",
      • "date": "2018-07-31T00:02:42Z",
      • "label": "STRIPE Application Fee: ch_1CtlK0IQxFAfFTHyKDGRlqd5",
      • "recipient": "REZDY"
      },
    • {
      • "type": "REZDY_PAYOUTS",
      • "amount": 97,
      • "currency": "AUD",
      • "date": "2018-07-31T00:02:42Z",
      • "label": "STRIPE: ch_1CtlK0IQxFAfFTHyKDGRlqd5",
      • "recipient": "SUPPLIER"
      }
    ],
  • "fields": [
    • {
      • "label": "How did you hear about us?",
      • "value": "Internet"
      }
    ],
  • "source": "MARKETPLACE_PREF_RATE",
  • "resellerSource": "API",
  • "sourceChannel": "REZDYDEMO",
  • "resellerComments": "REZDYDEMO order",
  • "surcharge": 2.14,
  • "commission": 10,
  • "vouchers": [ ],
  • "paymentOption": "CREDITCARD",
  • "resellerReference": ""
}

Response samples

Content type
application/json
{ }

Product

new product

The webhook is fired whenever a new product is created.

A complete product creation might have multiple steps on Rezdy. Therefore for a new product you need to expect one NEW_PRODUCT call, followed by multiple UPDATED_PRODUCT calls as each product tab submission in UI will trigger a product update.

Request Body schema: application/json

New Product Webhook

additionalInformation
string

Additional information for the product that should be sent after a booking is completed (i.e. by email) to the customer. Useful for integration, when manual control of the entire customer booking experience is wanted, and the automatic confirmation e-mail from Rezdy had been suppressed. )

advertisedPrice
number

General price indication for this product. It represents a display price only, therefore it does not affect a real booking price, which is calculated based on the price options.)

agentPaymentType
string
barcodeOutputType
required
string
barcodeType
required
string
Array of objects

List of booking fields for this product.

bookingMode
string
Enum: "DATE_ENQUIRY" "INVENTORY" "NO_DATE"

Booking mode. Determines if this product needs availability or can be booked for any date.

cancellationPolicyDays
required
number
charter
boolean

A charter product means each session can only have a single booking, whatever the number of seats booked.

confirmMode
string
Enum: "AUTOCONFIRM" "AUTO_THEN_MANUAL" "MANUAL" "MANUAL_THEN_AUTO"

Confirmation mode. Determines if bookings are automatically confirmed or it they are pending.)

confirmModeMinParticipants
number

If confirmMode is MANUAL_THEN_AUTO or AUTO_THEN_MANUAL, determines the minimum number of participants per booking to trigger the change.)

currency
required
string
Enum: "AED" "AFA" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUP" "CVE" "CYP" "CZK" "DJF" "DKK" "DOP" "DZD" "ECS" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GGP" "GHC" "GHS" "GIP" "GMD" "GNF" "GTQ" "GWP" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "IMP" "INR" "IQD" "IRR" "ISK" "JEP" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KIP" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MMK" "MNT" "MOP" "MRO" "MTL" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "MZN" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "RWF" "SAR" "SBD" "SCR" "SDD" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "STD" "SVC" "SYP" "SZL" "THB" "TJS" "TMM" "TND" "TOP" "TRL" "TRY" "TTD" "TVD" "TWD" "TZS" "UAH" "UGX" "USD" "UYI" "UYU" "UZS" "VEF" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "YER" "YUM" "ZAR" "ZMK" "ZMW" "ZWD"

Currency codes. 3 Letter ISO 4217 currency codes supported by Rezdy.

dateCreated
required
string
dateUpdated
string
description
required
string

Long product description is between 100 and 15000 characters.

durationMinutes
required
number

Duration of the product in minutes.

Array of objects
generalTerms
string

General terms and conditions for all products from this supplier.

required
Array of objects
internalCode
string

Supplier-defined product code, used internally by the supplier. It's an alternative option to store product mapping on Rezdy, instead of mapping to Rezdy product codes. If specified RezdyConnect will use this code and send it with every search request as externalProductCode query parameter.

languages
Array of strings

List of product languages. The format of the language is ISO 639 two-letter code with BCP 47 language variants, separated by underscore e.g. en_au.)

object

Product location address.

minimumNoticeMinutes
number

Minimum book ahead interval for he product in minutes.

name
required
string

Product name

pickupId
number
required
Array of objects

List of price options for this product.

productCode
string

Rezdy product code. Either Rezdy productCode or internalCode in order to sycnrhonize an existing product, so we will be able to map it.

productType
string
Enum: "ACTIVITY" "CHARTER" "CUSTOM" "DAYTOUR" "EVENT" "GIFT_CARD" "LESSON" "MERCHANDISE" "MULTIDAYTOUR" "PRIVATE_TOUR" "RENTAL" "TICKET" "TRANSFER"

Type of this product.

qrCodeType
required
string
quantityRequired
boolean

Does this product require a quantity to be booked? True for most products. Can be false if the supplier can only provide one quantity at any single time (I.e. charters) or a price of a booking is fixed regardless of quantity)

quantityRequiredMax
number

Represent the max booking quantity for the product. It can be setup for a supplier product. For a successful booking of the product, the total number of participants (regardless of pricing options), per booking item in the booking request, have to be lesser or equal than this value.)

quantityRequiredMin
number

Represent the min booking quantity for the product. It can be setup for a supplier product. For a successful booking of the product, the total number of participants (regardless of pricing options), per booking item in the booking request, have to be greater or equal than this value.)

shortDescription
required
string

Product short description is between 15 and 240 characters.

supplierAlias
required
string
supplierId
required
number
supplierName
required
string
terms
string

Specific terms and conditions for this product.

timezone
required
string
unitLabel
string

What a quantity for this product is. It can be people (I.e. participant, passenger, diver) or objects (Kayak, Helicopter, etc.)

unitLabelPlural
string

Plural version of unitLabel.

waitListingEnabled
required
boolean
xeroAccount
string

Responses

Request samples

Content type
application/json
{
  • "productType": "ACTIVITY",
  • "name": "High Tatras guided hiking tour",
  • "shortDescription": "A guided hiking tour in High Tatras mountains.",
  • "description": "A guided hiking tour in <b>High Tatras</b> mountains.&nbsp;<p><br></p><p>The tour takes about 10 hours and it's 20 km walk with about 1500m altitude difference and therefore it's <b>suitable only for participants with a good stamina</b>.</p><p><br></p><p>Discount is provided for a group of more than 10 particpants.</p>",
  • "productCode": "PKN0SN",
  • "internalCode": "hightatras",
  • "timezone": "Europe/Prague",
  • "advertisedPrice": "80.0",
  • "priceOptions": [
    • {
      • "price": "100.0",
      • "label": "Adult",
      • "seatsUsed": 1,
      • "minQuantity": 0,
      • "priceGroupType": "EACH"
      },
    • {
      • "price": "80.0",
      • "label": "Group from 10 to 20",
      • "seatsUsed": 1,
      • "minQuantity": 10,
      • "maxQuantity": 20,
      • "priceGroupType": "EACH"
      }
    ],
  • "currency": "AUD",
  • "unitLabel": "Hiker",
  • "unitLabelPlural": "Hikers",
  • "quantityRequired": true,
  • "quantityRequiredMin": 3,
  • "quantityRequiredMax": 20,
  • "bookingMode": "DATE_ENQUIRY",
  • "charter": false,
  • "extras": [
    • {
      • "name": "Hiking gear rental",
      • "description": "Rental of hiking clothes, shoes, sticks. The price is per a piece of equipment rented.",
      • "price": "10.0",
      • "extraPriceType": "ANY"
      }
    ],
  • "bookingFields": [
    • {
      • "label": "Title",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "TITLE"
      },
    • {
      • "label": "Mobile",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "MOBILE"
      },
    • {
      • "label": "Email",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "EMAIL"
      },
    • {
      • "label": "Address",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "ADDRESS"
      },
    • {
      • "label": "City",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "CITY"
      },
    • {
      • "label": "Country",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "COUNTRY"
      },
    • {
      • "label": "State/County/Region",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "STATE"
      },
    • {
      • "label": "Postcode/ZIP",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "POSTCODE"
      },
    • {
      • "label": "Special Requirements",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "SPECIALREQS"
      },
    • {
      • "label": "First Name",
      • "requiredPerParticipant": true,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": true,
      • "visiblePerBooking": true,
      • "fieldType": "FIRSTNAME"
      },
    • {
      • "label": "Last Name",
      • "requiredPerParticipant": true,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": true,
      • "visiblePerBooking": true,
      • "fieldType": "LASTNAME"
      }
    ],
  • "confirmMode": "MANUAL",
  • "confirmModeMinParticipants": 0,
  • "dateCreated": "2016-01-18T00:00:22Z",
  • "minimumNoticeMinutes": 2880,
  • "durationMinutes": 600,
  • "dateUpdated": "2020-10-15T05:02:11Z",
  • "locationAddress": {
    • "addressLine": "Slovakia",
    • "city": "Vysoke Tatry",
    • "countryCode": "sk",
    • "latitude": 49.137508,
    • "longitude": 20.2182305,
    • "postCode": "",
    • "state": ""
    },
  • "additionalInformation": "",
  • "languages": [
    • "en_us"
    ],
  • "waitListingEnabled": true,
  • "qrCodeType": "INTERNAL",
  • "barcodeOutputType": "PARTICIPANT"
}

Response samples

Content type
application/json
{ }

updated product

The webhook is fired whenever an existing product is updated.

Rezdy does not calculate any differences between the previous and the current product model, nor provides any indication of what kind of update fired the webhook, therefore this has to be calculated by the webhook listener. Furthermore, the payload of the updated product does not necessarily need to be different from a previous one, since not every order change will cause a modification of the exposed webhook model.

Request Body schema: application/json

Updated Product Webhook

additionalInformation
string

Additional information for the product that should be sent after a booking is completed (i.e. by email) to the customer. Useful for integration, when manual control of the entire customer booking experience is wanted, and the automatic confirmation e-mail from Rezdy had been suppressed. )

advertisedPrice
number

General price indication for this product. It represents a display price only, therefore it does not affect a real booking price, which is calculated based on the price options.)

agentPaymentType
string
barcodeOutputType
required
string
barcodeType
required
string
Array of objects

List of booking fields for this product.

bookingMode
string
Enum: "DATE_ENQUIRY" "INVENTORY" "NO_DATE"

Booking mode. Determines if this product needs availability or can be booked for any date.

cancellationPolicyDays
required
number
charter
boolean

A charter product means each session can only have a single booking, whatever the number of seats booked.

confirmMode
string
Enum: "AUTOCONFIRM" "AUTO_THEN_MANUAL" "MANUAL" "MANUAL_THEN_AUTO"

Confirmation mode. Determines if bookings are automatically confirmed or it they are pending.)

confirmModeMinParticipants
number

If confirmMode is MANUAL_THEN_AUTO or AUTO_THEN_MANUAL, determines the minimum number of participants per booking to trigger the change.)

currency
required
string
Enum: "AED" "AFA" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUP" "CVE" "CYP" "CZK" "DJF" "DKK" "DOP" "DZD" "ECS" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GGP" "GHC" "GHS" "GIP" "GMD" "GNF" "GTQ" "GWP" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "IMP" "INR" "IQD" "IRR" "ISK" "JEP" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KIP" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MMK" "MNT" "MOP" "MRO" "MTL" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "MZN" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "RWF" "SAR" "SBD" "SCR" "SDD" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "STD" "SVC" "SYP" "SZL" "THB" "TJS" "TMM" "TND" "TOP" "TRL" "TRY" "TTD" "TVD" "TWD" "TZS" "UAH" "UGX" "USD" "UYI" "UYU" "UZS" "VEF" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "YER" "YUM" "ZAR" "ZMK" "ZMW" "ZWD"

Currency codes. 3 Letter ISO 4217 currency codes supported by Rezdy.

dateCreated
required
string
dateUpdated
string
description
required
string

Long product description is between 100 and 15000 characters.

durationMinutes
required
number

Duration of the product in minutes.

Array of objects
generalTerms
string

General terms and conditions for all products from this supplier.

required
Array of objects
internalCode
string

Supplier-defined product code, used internally by the supplier. It's an alternative option to store product mapping on Rezdy, instead of mapping to Rezdy product codes. If specified RezdyConnect will use this code and send it with every search request as externalProductCode query parameter.

languages
Array of strings

List of product languages. The format of the language is ISO 639 two-letter code with BCP 47 language variants, separated by underscore e.g. en_au.)

object

Product location address.

minimumNoticeMinutes
number

Minimum book ahead interval for he product in minutes.

name
required
string

Product name

pickupId
number
required
Array of objects

List of price options for this product.

productCode
string

Rezdy product code. Either Rezdy productCode or internalCode in order to sycnrhonize an existing product, so we will be able to map it.

productType
string
Enum: "ACTIVITY" "CHARTER" "CUSTOM" "DAYTOUR" "EVENT" "GIFT_CARD" "LESSON" "MERCHANDISE" "MULTIDAYTOUR" "PRIVATE_TOUR" "RENTAL" "TICKET" "TRANSFER"

Type of this product.

qrCodeType
required
string
quantityRequired
boolean

Does this product require a quantity to be booked? True for most products. Can be false if the supplier can only provide one quantity at any single time (I.e. charters) or a price of a booking is fixed regardless of quantity)

quantityRequiredMax
number

Represent the max booking quantity for the product. It can be setup for a supplier product. For a successful booking of the product, the total number of participants (regardless of pricing options), per booking item in the booking request, have to be lesser or equal than this value.)

quantityRequiredMin
number

Represent the min booking quantity for the product. It can be setup for a supplier product. For a successful booking of the product, the total number of participants (regardless of pricing options), per booking item in the booking request, have to be greater or equal than this value.)

shortDescription
required
string

Product short description is between 15 and 240 characters.

supplierAlias
required
string
supplierId
required
number
supplierName
required
string
terms
string

Specific terms and conditions for this product.

timezone
required
string
unitLabel
string

What a quantity for this product is. It can be people (I.e. participant, passenger, diver) or objects (Kayak, Helicopter, etc.)

unitLabelPlural
string

Plural version of unitLabel.

waitListingEnabled
required
boolean
xeroAccount
string

Responses

Request samples

Content type
application/json
{
  • "productType": "ACTIVITY",
  • "name": "High Tatras guided hiking tour",
  • "shortDescription": "A guided hiking tour in High Tatras mountains.",
  • "description": "A guided hiking tour in <b>High Tatras</b> mountains.&nbsp;<p><br></p><p>The tour takes about 10 hours and it's 20 km walk with about 1500m altitude difference and therefore it's <b>suitable only for participants with a good stamina</b>.</p><p><br></p><p>Discount is provided for a group of more than 10 participants.</p>",
  • "productCode": "PKN0SN",
  • "internalCode": "hightatras",
  • "timezone": "Europe/Prague",
  • "advertisedPrice": "80.0",
  • "priceOptions": [
    • {
      • "price": "100.0",
      • "label": "Adult",
      • "seatsUsed": 1,
      • "minQuantity": 0,
      • "priceGroupType": "EACH"
      },
    • {
      • "price": "80.0",
      • "label": "Group from 10 to 20",
      • "seatsUsed": 1,
      • "minQuantity": 10,
      • "maxQuantity": 20,
      • "priceGroupType": "EACH"
      }
    ],
  • "currency": "AUD",
  • "unitLabel": "Hiker",
  • "unitLabelPlural": "Hikers",
  • "quantityRequired": true,
  • "quantityRequiredMin": 3,
  • "quantityRequiredMax": 20,
  • "bookingMode": "DATE_ENQUIRY",
  • "charter": false,
  • "extras": [
    • {
      • "name": "Hiking gear rental",
      • "description": "Rental of hiking clothes, shoes, sticks. The price is per a piece of equipment rented.",
      • "price": "10.0",
      • "extraPriceType": "ANY"
      }
    ],
  • "bookingFields": [
    • {
      • "label": "Title",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "TITLE"
      },
    • {
      • "label": "Mobile",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "MOBILE"
      },
    • {
      • "label": "Email",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "EMAIL"
      },
    • {
      • "label": "Address",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "ADDRESS"
      },
    • {
      • "label": "City",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "CITY"
      },
    • {
      • "label": "Country",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "COUNTRY"
      },
    • {
      • "label": "State/County/Region",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "STATE"
      },
    • {
      • "label": "Postcode/ZIP",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "POSTCODE"
      },
    • {
      • "label": "Special Requirements",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "SPECIALREQS"
      },
    • {
      • "label": "First Name",
      • "requiredPerParticipant": true,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": true,
      • "visiblePerBooking": true,
      • "fieldType": "FIRSTNAME"
      },
    • {
      • "label": "Last Name",
      • "requiredPerParticipant": true,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": true,
      • "visiblePerBooking": true,
      • "fieldType": "LASTNAME"
      }
    ],
  • "confirmMode": "MANUAL",
  • "confirmModeMinParticipants": 0,
  • "dateCreated": "2016-01-18T00:00:22Z",
  • "minimumNoticeMinutes": 2880,
  • "durationMinutes": 600,
  • "dateUpdated": "2020-10-15T05:02:11Z",
  • "locationAddress": {
    • "addressLine": "Slovakia",
    • "city": "Vysoke Tatry",
    • "countryCode": "sk",
    • "latitude": 49.137508,
    • "longitude": 20.2182305,
    • "postCode": "",
    • "state": ""
    },
  • "additionalInformation": "",
  • "languages": [
    • "en_us"
    ],
  • "waitListingEnabled": true,
  • "qrCodeType": "INTERNAL",
  • "barcodeOutputType": "PARTICIPANT"
}

Response samples

Content type
application/json
{ }

deleted product

The webhook is fired whenever a product is deleted.

Request Body schema: application/json

Deleted Product Webhook

additionalInformation
string

Additional information for the product that should be sent after a booking is completed (i.e. by email) to the customer. Useful for integration, when manual control of the entire customer booking experience is wanted, and the automatic confirmation e-mail from Rezdy had been suppressed. )

advertisedPrice
number

General price indication for this product. It represents a display price only, therefore it does not affect a real booking price, which is calculated based on the price options.)

agentPaymentType
string
barcodeOutputType
required
string
barcodeType
required
string
Array of objects

List of booking fields for this product.

bookingMode
string
Enum: "DATE_ENQUIRY" "INVENTORY" "NO_DATE"

Booking mode. Determines if this product needs availability or can be booked for any date.

cancellationPolicyDays
required
number
charter
boolean

A charter product means each session can only have a single booking, whatever the number of seats booked.

confirmMode
string
Enum: "AUTOCONFIRM" "AUTO_THEN_MANUAL" "MANUAL" "MANUAL_THEN_AUTO"

Confirmation mode. Determines if bookings are automatically confirmed or it they are pending.)

confirmModeMinParticipants
number

If confirmMode is MANUAL_THEN_AUTO or AUTO_THEN_MANUAL, determines the minimum number of participants per booking to trigger the change.)

currency
required
string
Enum: "AED" "AFA" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BRL" "BSD" "BWP" "BYR" "BZD" "CAD" "CDF" "CHF" "CLP" "CNY" "COP" "CRC" "CUP" "CVE" "CYP" "CZK" "DJF" "DKK" "DOP" "DZD" "ECS" "EEK" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GGP" "GHC" "GHS" "GIP" "GMD" "GNF" "GTQ" "GWP" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "IMP" "INR" "IQD" "IRR" "ISK" "JEP" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KIP" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LTL" "LVL" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MMK" "MNT" "MOP" "MRO" "MTL" "MUR" "MVR" "MWK" "MXN" "MYR" "MZM" "MZN" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "RWF" "SAR" "SBD" "SCR" "SDD" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "STD" "SVC" "SYP" "SZL" "THB" "TJS" "TMM" "TND" "TOP" "TRL" "TRY" "TTD" "TVD" "TWD" "TZS" "UAH" "UGX" "USD" "UYI" "UYU" "UZS" "VEF" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "YER" "YUM" "ZAR" "ZMK" "ZMW" "ZWD"

Currency codes. 3 Letter ISO 4217 currency codes supported by Rezdy.

dateCreated
required
string
dateUpdated
string
description
required
string

Long product description is between 100 and 15000 characters.

durationMinutes
required
number

Duration of the product in minutes.

Array of objects
generalTerms
string

General terms and conditions for all products from this supplier.

required
Array of objects
internalCode
string

Supplier-defined product code, used internally by the supplier. It's an alternative option to store product mapping on Rezdy, instead of mapping to Rezdy product codes. If specified RezdyConnect will use this code and send it with every search request as externalProductCode query parameter.

languages
Array of strings

List of product languages. The format of the language is ISO 639 two-letter code with BCP 47 language variants, separated by underscore e.g. en_au.)

object

Product location address.

minimumNoticeMinutes
number

Minimum book ahead interval for he product in minutes.

name
required
string

Product name

pickupId
number
required
Array of objects

List of price options for this product.

productCode
string

Rezdy product code. Either Rezdy productCode or internalCode in order to sycnrhonize an existing product, so we will be able to map it.

productType
string
Enum: "ACTIVITY" "CHARTER" "CUSTOM" "DAYTOUR" "EVENT" "GIFT_CARD" "LESSON" "MERCHANDISE" "MULTIDAYTOUR" "PRIVATE_TOUR" "RENTAL" "TICKET" "TRANSFER"

Type of this product.

qrCodeType
required
string
quantityRequired
boolean

Does this product require a quantity to be booked? True for most products. Can be false if the supplier can only provide one quantity at any single time (I.e. charters) or a price of a booking is fixed regardless of quantity)

quantityRequiredMax
number

Represent the max booking quantity for the product. It can be setup for a supplier product. For a successful booking of the product, the total number of participants (regardless of pricing options), per booking item in the booking request, have to be lesser or equal than this value.)

quantityRequiredMin
number

Represent the min booking quantity for the product. It can be setup for a supplier product. For a successful booking of the product, the total number of participants (regardless of pricing options), per booking item in the booking request, have to be greater or equal than this value.)

shortDescription
required
string

Product short description is between 15 and 240 characters.

supplierAlias
required
string
supplierId
required
number
supplierName
required
string
terms
string

Specific terms and conditions for this product.

timezone
required
string
unitLabel
string

What a quantity for this product is. It can be people (I.e. participant, passenger, diver) or objects (Kayak, Helicopter, etc.)

unitLabelPlural
string

Plural version of unitLabel.

waitListingEnabled
required
boolean
xeroAccount
string

Responses

Request samples

Content type
application/json
{
  • "productType": "ACTIVITY",
  • "name": "High Tatras guided hiking tour",
  • "shortDescription": "A guided hiking tour in High Tatras mountains.",
  • "description": "A guided hiking tour in <b>High Tatras</b> mountains.&nbsp;<p><br></p><p>The tour takes about 10 hours and it's 20 km walk with about 1500m altitude difference and therefore it's <b>suitable only for participants with a good stamina</b>.</p><p><br></p><p>Discount is provided for a group of more than 10 particpants.</p>",
  • "productCode": "PKN0SN",
  • "internalCode": "hightatras",
  • "timezone": "Europe/Prague",
  • "advertisedPrice": "80.0",
  • "priceOptions": [
    • {
      • "price": "100.0",
      • "label": "Adult",
      • "seatsUsed": 1,
      • "minQuantity": 0,
      • "priceGroupType": "EACH"
      },
    • {
      • "price": "80.0",
      • "label": "Group from 10 to 20",
      • "seatsUsed": 1,
      • "minQuantity": 10,
      • "maxQuantity": 20,
      • "priceGroupType": "EACH"
      }
    ],
  • "currency": "AUD",
  • "unitLabel": "Hiker",
  • "unitLabelPlural": "Hikers",
  • "quantityRequired": true,
  • "quantityRequiredMin": 3,
  • "quantityRequiredMax": 20,
  • "bookingMode": "DATE_ENQUIRY",
  • "charter": false,
  • "extras": [
    • {
      • "name": "Hiking gear rental",
      • "description": "Rental of hiking clothes, shoes, sticks. The price is per a piece of equipment rented.",
      • "price": "10.0",
      • "extraPriceType": "ANY"
      }
    ],
  • "bookingFields": [
    • {
      • "label": "Title",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "TITLE"
      },
    • {
      • "label": "Mobile",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "MOBILE"
      },
    • {
      • "label": "Email",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "EMAIL"
      },
    • {
      • "label": "Address",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "ADDRESS"
      },
    • {
      • "label": "City",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "CITY"
      },
    • {
      • "label": "Country",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "COUNTRY"
      },
    • {
      • "label": "State/County/Region",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "STATE"
      },
    • {
      • "label": "Postcode/ZIP",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "POSTCODE"
      },
    • {
      • "label": "Special Requirements",
      • "requiredPerParticipant": false,
      • "requiredPerBooking": false,
      • "visiblePerParticipant": false,
      • "visiblePerBooking": true,
      • "fieldType": "SPECIALREQS"
      },
    • {
      • "label": "First Name",
      • "requiredPerParticipant": true,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": true,
      • "visiblePerBooking": true,
      • "fieldType": "FIRSTNAME"
      },
    • {
      • "label": "Last Name",
      • "requiredPerParticipant": true,
      • "requiredPerBooking": true,
      • "visiblePerParticipant": true,
      • "visiblePerBooking": true,
      • "fieldType": "LASTNAME"
      }
    ],
  • "confirmMode": "MANUAL",
  • "confirmModeMinParticipants": 0,
  • "dateCreated": "2016-01-18T00:00:22Z",
  • "minimumNoticeMinutes": 2880,
  • "durationMinutes": 600,
  • "dateUpdated": "2020-10-15T05:02:11Z",
  • "locationAddress": {
    • "addressLine": "Slovakia",
    • "city": "Vysoke Tatry",
    • "countryCode": "sk",
    • "latitude": 49.137508,
    • "longitude": 20.2182305,
    • "postCode": "",
    • "state": ""
    },
  • "additionalInformation": "",
  • "languages": [
    • "en_us"
    ],
  • "waitListingEnabled": true,
  • "qrCodeType": "INTERNAL",
  • "barcodeOutputType": "PARTICIPANT"
}

Response samples

Content type
application/json
{ }

Contact

new contact

The webhook is fired whenever a new contact is created regardless of the source - internally or by a new order.

A new order can trigger both NEW_ORDER and NEW_CONTACT webhook in case of a new customer who is not matched among the existing contacts.

Request Body schema: application/json

New Contact Webhook

aboutUs
string

How did you hear about us?

addressLine
string

Address.

addressLine2
string

Extended Address.

city
string

City/Town/Suburb.

companyName
string

Company name.

countryCode
string

2 letter ISO country code

dob
string

Date of birth.

email
string

Email.

fax
string

Fax number.

firstName
string

First name.

gender
string
Enum: "FEMALE" "MALE"

Gender.

id
number

Rezdy internal ID of the customer.

lastName
string

Last Name.

marketing
boolean

Agree to receive marketing emails.

middleName
string

Middle name.

mobile
string

Mobile phone number.

name
string

Full name - calculated from first/middle/last names.

newsletter
boolean

Subscribe to the newsletter.

phone
string

Preferred Phone number.

postCode
string

Postcode / ZIP

preferredLanguage
string

Preferred language. Should be a 2 letter ISO country code.

skype
string

Skype alias.

state
string

State/County/Region.

title
string
Enum: "Miss" "Mr." "Mrs." "Ms."

Title.

Responses

Request samples

Content type
application/json
{
  • "id": 9873,
  • "firstName": "Homer",
  • "middleName": "",
  • "lastName": "Simpson",
  • "name": "Homer Simpson",
  • "email": "homersimpson.3@rezdy.com",
  • "companyName": "",
  • "phone": "+61484123456",
  • "mobile": "",
  • "fax": "",
  • "skype": "",
  • "preferredLanguage": "",
  • "marketing": false,
  • "aboutUs": "",
  • "addressLine": "",
  • "postCode": "",
  • "city": "",
  • "state": "",
  • "countryCode": ""
}

Response samples

Content type
application/json
{ }