Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Accueil Sirvoy
  • Contact
  • Se connecter
French
US English (US)
FR French
DE German
ES Spanish
NL Dutch
SE Swedish
FI Finnish
NO Norwegian
DA Danish
  • Accueil
  • Mon compte
  • Exportation & API

Ajout d’un lien de rappel HTTP (Webhook) pour une réservation

Written by johana

Updated at January 24th, 2025

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Guide de démarrage
    Guides de configuration Importations de réservations
  • À propos de Sirvoy
    Généralités Détails techniques Sécurité et sauvegardes
  • Chambres et types de chambres
    Chambres et types de chambres Catégoriser vos Types de Chambres Offrir Ajouts ou Options
  • Moteurs de réservation
    Générateur de site Web Installation sur votre Site Web Ajuster le Moteur de Réservation Design & CSS Champs de Saisie Fonctionnalité Vérifiez votre réservation Suivi
  • Gestionnaire de canaux
    Mise en Place des Nouveaux Canaux Mappage de Types de Chambres Questions Générales Actualisation de Prix et Disponibilité Surréservations
  • Finances
    Installer une Solution de Paiement Gestion de Paiements Factures & Reçus Comptabilité Taxes & Surtaxes
  • Réservations
    Modifier des Réservations Vue des Réservations Modèles de Messages & Messagerie Automatique Communication Planification d’Entretien et Tâches
  • Tarifs et restrictions
    Prix & Réductions Restrictions Code Coupon & Réductions
  • Mon compte
    Personnaliser votre Compte Inscription Statistiques Exportation & API
+ Plus

Table des matières

Détails clés Exigences techniques : Gestion des notifications de réservation et des échecs des webhooks Liste blanche d’adresses IP Exemples de format JSON

 

L’ajout d’un webhook d’événement de réservation envoie les détails de la réservation au format JSON à une URL chaque fois qu’une réservation est créée, modifiée, annulée ou restaurée.

Détails clés

  • Connaissances techniques requises : La mise en place et la gestion des webhooks nécessitent des compétences techniques. Consultez un développeur Web au besoin.
  • Activation : Activez le webhook d’événement de réservation dans Paramètres -> Compte Sirvoy -> Lien de rappel HTTP pour les réservations (Webhook)
  • Limite des webhooks : Un seul webhook peut être actif par compte Sirvoy.
  • Déclencheurs de rappel : Un webhook d’événement de réservation envoie un rappel à une URL spécifiée chaque fois qu’une réservation est créée, modifiée, annulée ou restaurée.

Exigences techniques :

  • Code de réponse : Le serveur de réception doit répondre par un code de statut « 200 OK ». Si ce n’est pas le cas, l’appel sera réessayé dix fois avec un temps d’attente exponentiel jusqu’à dix fois avant d’être rejeté
  • HTTPS et TLS : Nous prenons uniquement en charge le protocole HTTPS en utilisant la version 1.2 ou supérieure de TLS afin de garantir la confidentialité des données. Assurez-vous que votre certificat HTTPS est valide; dans le cas contraire, aucune donnée ne sera envoyée.
  • Vérification d’état : Votre serveur doit répondre aux requêtes HTTP GET par « 200 OK » pour les vérifications d’état. Aucune donnée ne sera envoyée avec HTTP GET, mais cela permet de s’assurer que votre point d’extrémité est actif.

Gestion des notifications de réservation et des échecs des webhooks

Nous envoyons une notification pour chaque mise à jour de réservation et les événements peuvent être livrés dans le désordre. Utilisez l’horodatage « generatedAt » pour établir une chronologie précise des événements. Chaque notification contiendra la représentation JSON complète de la réservation à ce moment-là.

Si votre point d’extrémité commence à échouer et ne renvoie pas de codes de statut de succès lors de nos appels, nous vous en informerons par courriel. Si l’échec persiste pendant une semaine, le webhook sera supprimé après une dernière notification.

Liste blanche d’adresses IP

Pour garantir le succès des rappels webhook, autorisez les plages d’adresses IP suivantes dans votre pare-feu :

  • 34.243.166.60
  • 52.18.11.99
  • 63.34.80.48
  • 54.194.0.85
  • 2a05:d018:e34:5300::/56

Les serveurs effectuant les rappels sont à double pile, prenant en charge les protocoles IPv4 et IPv6. Si vous ajoutez des adresses IPv4 et IPv6 à votre nom de domaine, le rappel sera effectué sur le premier serveur à répondre.

Exemples de format JSON

Exemple de structure JSON pour les nouvelles réservations :

{
	"version": "2.0",
	"generatedAt": "2024-05-31T12:11:53.639+00:00",
	"event": "new",
	"propertyId": 1,
	"bookingId": 26006,
	"channelBookingId": null,
	"bookingDate": "2024-05-31T12:09:16+00:00",
	"arrivalDate": "2024-06-01",
	"departureDate": "2024-06-04",
	"cancelled": false,
	"eta": "10:00",
	"totalAdults": 4,
	"guest": {
    	"firstName": "John",
    	"lastName": "Doe",
    	"businessName": "Acme",
    	"address": "Fancy street",
    	"postcode": "11-111",
    	"city": "York",
    	"state": "NY",
    	"country": "US",
    	"phone": "+16033336666",
    	"email": "guest@email.com",
    	"passportNo": "XX11122223333",
    	"language": "en",
    	"message": "Additional comment added by guest"
	},
	"guestReference": "2103001",
	"internalComment": null,
	"couponCode": null,
	"bookingSource": "Front desk",
	"bookingIsCheckedIn": false,
	"bookingIsCheckedOut": false,
	"bookingIsConfirmed": true,
	"customFields": [
    	{
        	"name": "Custom text field name",
        	"value": "text added by guest"
    	},
    	{
        	"name": "Custom checkbox unchecked",
        	"value": false
    	},
    	{
        	"name": "Custom checkbox checked",
        	"value": true
    	}
	],
	"rooms": [
    	{
        	"RoomTypeName": "Basic room",
        	"RoomTypeDescription": "Basic room",
        	"RoomName": "101",
        	"RoomId": 2,
        	"arrivalDate": "2024-06-01",
        	"departureDate": "2024-06-04",
        	"adults": 2,
        	"quantity": 3,
        	"price": 100,
        	"roomTotal": 300,
        	"guestName": null,
        	"comment": null,
        	"ledgerAccount": null
    	},
    	{
        	"RoomTypeName": "Fancy room",
        	"RoomTypeDescription": "Fancy room",
        	"RoomName": "182",
        	"RoomId": 83,
        	"arrivalDate": "2024-06-01",
        	"departureDate": "2024-06-04",
        	"adults": 2,
        	"quantity": 3,
        	"price": 100,
        	"roomTotal": 300,
        	"guestName": null,
        	"comment": null,
        	"ledgerAccount": null
    	}
	],
	"additionalItems": [
    	{
        	"description": "Breakfast",
        	"specificDate": null,
        	"quantity": 12,
        	"price": 20,
        	"itemTotal": 240,
        	"ledgerAccount": null
    	}
	],
	"bookedCategory": null,
	"currency": "EUR",
	"totalPrice": 840,
	"totalSurcharges": 84,
	"totalPriceIncludingSurcharges": 924,
	"payments": [],
	"invoices": []
}

 

Exemple de structure JSON pour la création d’un encaissement et l’application d’un paiement à une facture :

{
	"version": "2.0",
	"generatedAt": "2024-05-31T12:15:23.895+00:00",
	"event": "modified",
	"propertyId": 1,
	"bookingId": 26006,
	"channelBookingId": null,
	"bookingDate": "2024-05-31T12:09:16+00:00",
	"arrivalDate": "2024-06-01",
	"departureDate": "2024-06-04",
	"cancelled": false,
	"eta": "10:00",
	"totalAdults": 4,
	"guest": {
    	"firstName": "John",
    	"lastName": "Doe",
    	"businessName": "Acme",
    	"address": "Fancy street",
    	"postcode": "11-111",
    	"city": "York",
    	"state": "NY",
    	"country": "US",
    	"phone": "+16033336666",
    	"email": "guest@email.com",
    	"passportNo": "XX11122223333",
    	"language": "en",
    	"message": "Additional comment added by guest"
	},
	"guestReference": "2103001",
	"internalComment": null,
	"couponCode": null,
	"bookingSource": "Front desk",
	"bookingIsCheckedIn": false,
	"bookingIsCheckedOut": false,
	"bookingIsConfirmed": true,
	"customFields": [
    	{
        	"name": "Custom text field name",
        	"value": "text added by guest"
    	},
    	{
        	"name": "Custom checkbox unchecked",
        	"value": false
    	},
    	{
        	"name": "Custom checkbox checked",
        	"value": true
    	}
	],
	"rooms": [
    	{
        	"RoomTypeName": "Basic room",
        	"RoomTypeDescription": "Basic room",
        	"RoomName": "101",
        	"RoomId": 2,
        	"arrivalDate": "2024-06-01",
        	"departureDate": "2024-06-04",
        	"adults": 2,
        	"quantity": 3,
        	"price": 100,
        	"roomTotal": 300,
        	"guestName": null,
        	"comment": null,
        	"ledgerAccount": null
    	},
    	{
        	"RoomTypeName": "Fancy room",
        	"RoomTypeDescription": "Fancy room",
        	"RoomName": "182",
        	"RoomId": 83,
        	"arrivalDate": "2024-06-01",
        	"departureDate": "2024-06-04",
        	"adults": 2,
        	"quantity": 3,
        	"price": 100,
        	"roomTotal": 300,
        	"guestName": null,
        	"comment": null,
        	"ledgerAccount": null
    	}
	],
	"additionalItems": [
    	{
        	"description": "Breakfast",
        	"specificDate": null,
        	"quantity": 12,
        	"price": 20,
        	"itemTotal": 240,
        	"ledgerAccount": null
    	}
	],
	"bookedCategory": null,
	"currency": "EUR",
	"totalPrice": 840,
	"totalSurcharges": 84,
	"totalPriceIncludingSurcharges": 924,
	"payments": [],
	"invoices": [
    	{
        	"invoiceNumber": "41002",
        	"invoiceDate": "2024-06-01",
        	"dueDate": "2024-06-01",
        	"receiver": "Acme",
        	"address": [
            	"John Doe",
            	"Fancy street",
            	"York, NY 11-111",
            	"United States"
        	],
        	"roundingAmount": 0,
        	"invoiceTotal": 924,
        	"originInvoice": null,
        	"invoiceRows": [
            	{
                	"quantity": 3,
                	"price": 100,
                	"rowTotal": 300,
                	"ledgerAccount": "100",
                	"rowText": "Basic room",
                	"vatRate": 0,
                	"vatAmount": 0,
                	"bookingId": 26006
            	},
            	{
                	"quantity": 3,
                	"price": 100,
                	"rowTotal": 300,
                	"ledgerAccount": "100",
                	"rowText": "Fancy room",
                	"vatRate": 0,
                	"vatAmount": 0,
                	"bookingId": 26006
            	},
            	{
                	"quantity": 12,
                	"price": 20,
                	"rowTotal": 240,
                	"ledgerAccount": "200",
                	"rowText": "Breakfast",
                	"vatRate": 0,
                	"vatAmount": 0,
                	"bookingId": 26006
            	},
            	{
                	"quantity": 1,
                	"price": 84,
                	"rowTotal": 84,
                	"ledgerAccount": "300",
                	"rowText": "surcharge",
                	"vatRate": 0,
                	"vatAmount": 0,
                	"bookingId": 26006
            	}
        	],
        	"payments": [
            	{
                	"paymentId": 28,
                	"createdAt": "2024-05-31T12:15:09+00:00",
                	"valueDate": "2024-06-01",
                	"amount": 924,
                	"ledgerAccount": "3606",
                	"paymentReference": null,
                	"comment": null
            	}
        	]
    	}
	]
}

 

Pour toute question ou assistance supplémentaire, contactez notre équipe de soutien.

webook rappel http

Cela valait-il la peine d'être lu ?

Oui
Non
Vous avez repéré quelque chose de bizarre ? Faites-le nous savoir.

Articles connexes

  • Une façon plus rapide de créer des réservations
  • Ajouter une alerte à une réservation
  • Ouvrir le fichier d’exportation CSV dans numbers (Apple)
  • Ouvrir le fichier d’exportation CSV dans MS Excel

Besoin d'un coup de main de Sirvoy ?

Vous êtes au bon endroit.

  • Sirvoy
  • Se connecter
  • Contact

©2025 Sirvoy . All Rights reserved.

Knowledge Base Software by Helpjuice

Expand