Codes d’erreur
Les erreurs se présentent sous trois formes : les erreurs d’authentification en HTTP 401, les erreurs métier dans une réponse HTTP 200 avec success: false, et les erreurs de transmission de réservation dans BookingPushRS.Error. Cette page répertorie tous les codes.
Erreurs d’authentification#
| HTTP | Réponse | Cause |
|---|---|---|
| 401 | {"success": false, "error": "Authentication required"} | Jeton absent ou inconnu, ou format Bearer mal formé. |
| 200 | message: partner_is_not_found | Connexion : la paire de clés ne correspond pas. |
| 200 | message: hotel_is_not_found | Connexion : aucun hôtel pour hotelSeoUrl. |
| 200 | message: hotel_permission_is_not_found | Connexion : le partenaire n’est pas autorisé pour l’hôtel. |
Codes message#
Codes textuels en snake_case, renvoyés avec success: false.
| message | Endpoint | Description |
|---|---|---|
hotel_id_is_not_found | La plupart | hotelID n’a pas été envoyé. |
start_date_is_not_found / end_date_is_not_found | Disponibilités | Paramètre de date manquant. |
online_cupon_is_not_found | Coupon | Code inconnu, inactif, expiré ou indisponible. |
mail_host_is_not_found | Paramètres e-mail | Aucun SMTP configuré pour le canal en ligne. |
hotel_company_info_could_not_found | Informations du TPE virtuel | Aucun prestataire de paiement configuré pour l’hôtel. |
bank_info_is_not_found | Paiement (type 3) | Aucun compte bancaire activé pour la vente en ligne. |
required_input_info_not_submitted | Paiement (type 10) | Un champ obligatoire est manquant ; errors[] indique lesquels. |
country_info_sent_incorrectly | Paiement (type 10) | countryID ne figure pas dans la liste des pays. |
there_is_missing_info_in_the_shopping_cart | Paiement (type 10) | Il manque id, name, piece ou price dans un élément du panier ; errors[] indique lequel. |
Codes d’erreur de la liste des chambres#
La liste des chambres (POST /external/online/roomType) renvoie un errorCode numérique et un errorMessage lisible. Le message est traduit selon le paramètre language ; basez votre code sur errorCode.
| errorCode | Signification | Que faire |
|---|---|---|
10001 | Hôtel introuvable | Vérifiez hotelID. |
10002 | Paramètre manquant (hotelID, startDate, endDate, adultCount) | Envoyez les champs obligatoires. |
10003 | Hôtel fermé à la vente en ligne | L’hôtel doit activer le canal en ligne dans le panneau. |
10004 | Aucun type de chambre ouvert aux canaux | L’hôtel doit ouvrir des types de chambre à la vente en ligne. |
10022 | Paramètres invalides | Arrivée aujourd’hui ou plus tard, départ après l’arrivée, 30 nuits au maximum, 1 à 40 adultes, 0 à 10 enfants. |
20001 | Disponibilité insuffisante pour les adultes | Proposez d’autres dates ou une autre occupation. |
20002 | Disponibilité insuffisante pour les enfants | Il ne reste aucune chambre avec une capacité enfant. |
20003 / 20004 | Disponibilité insuffisante pour les adultes et les enfants | La capacité totale ne permet pas de satisfaire la demande. |
Lorsqu’il y a de la disponibilité mais qu’un type de chambre donné ne peut pas être vendu, son roomCount vaut 0 et la raison figure dans roomRestrictionMessage : closed_to_checkin, closed_to_checkout, passive_sales, minimum_stay, maximum_stay, closed_to_arrival, price_not_found.
Erreurs de transmission de réservation#
Au lieu de Success: true, BookingPushRS contient un champ Error :
{
"BookingPushRS": {
"Error": "Could not register.",
"BookingConfirmNumbers": [
{
"confirmTime": 1755500000,
"bookingID": 0,
"bookingType": "Book",
"HMS_ID": null
}
]
}
}| Error | Code | Cause |
|---|---|---|
| No available data could be found. | 01 | Corps vide ou JSON illisible ; Bookings[0].hotelID manquant. |
| Hotel registration not found on HMS. | 02 | L’hôtel n’est pas relié au canal en ligne, ou le canal est inactif. |
| Could not register. | — | Erreur lors de l’enregistrement (identifiant de type de chambre ou de pension invalide, dates incohérentes). |
| Failed to parse information. | — | Des champs attendus manquent dans la structure. |
Conseils pour les nouvelles tentatives#
- 401 : reconnectez-vous une fois et relancez la requête.
- 500 et erreurs réseau : jusqu’à 3 tentatives, à 1 s, 2 s puis 4 s d’intervalle. Lorsque vous relancez une transmission de réservation, réutilisez le même
ID; unBookavec un code existant met à jour l’enregistrement au lieu de créer un doublon. - success: false : ne réessayez pas ; corrigez le paramètre ou proposez une alternative au client.
- Joignez à vos tickets de support la requête complète (secrets et données de carte masqués), la réponse et l’horodatage.