Error list
In this section you can find the errors returned by the Booking API, organized by method.
Connection errors
| Code | Description |
|---|---|
| INC_15003 | The username or password provided is incorrect. |
| INC_15004 | The IP address you are connecting from is not authorized. Contact your provider and provide the IP address to be enabled for the integration. |
Common errors (all methods)
The following errors can be returned by any method:
| Error message | Cause |
|---|---|
| Invalid TransactionIdentifier. | The TransactionIdentifier provided does not exist or is not valid. |
| User does not have permission to open this TransactionIdentifier. | The authenticated user does not have access to the requested booking. |
| Rate not valid or not allowed for user. | The RateCode specified is not valid or the user is not authorized to use it. |
AVAIL — Availability search errors
General validation errors
| Error message | Cause |
|---|---|
| StayDateRange has not values and it's mandatory. | The StayDateRange node was not included in the request. It is required. |
| The specified OccupationType is not a valid code. | The Type attribute of an Occupation element is not a recognized value (ADL or CHL). |
| Occupations node is mandatory. Adults and Child occupation should be defined. | For transfer searches, the Occupations node must be specified with at least one adult and/or child. |
| LocationOriginID is not valid. Valid prefixes: L, H, G. | The format of LocationOriginID is not valid. Must start with L (Location ID), H (Accommodation ID), or G (GIATA code) followed by the corresponding identifier. |
| LocationDestinationID is not valid. Valid prefixes: L, H, G. | The format of LocationDestinationID is not valid. Must start with L (Location ID), H (Accommodation ID), or G (GIATA code) followed by the corresponding identifier. |
| In transfer searches, the TransferOptions node must be specified. | For transfer service type (ServiceType="T"), the TransferOptions node is mandatory. |
| Transfer availability requests are not compatible with the DestinationCodes node. | Transfer searches do not support the DestinationCodes node. Use TransferOptions location fields instead. |
| Specifying products and destinations simultaneously is not allowed. | The ProductCode/ProductCodes and DestinationCodes nodes cannot be used together in the same request. |
| Destinations not found in the system: {list} | One or more DestinationCodes do not match any known destination. |
| LocationOrigin fields are mandatory. | No valid identification data was provided for the origin location. |
| LocationDestination fields are mandatory. | No valid identification data was provided for the destination location. |
Transfer location validation errors
These errors are returned when the transfer request structure is invalid. All applicable validation errors are returned together in a single response.
| Error message | Cause |
|---|---|
| In TransferOptions, there is not value for the set of data: LocationOriginID, LocationOrigin.IATA, and LocationOrigin.Coordinates. | No identification method was provided for the origin. You must send exactly one of: LocationOriginID, LocationOrigin.IATA, or LocationOrigin.Coordinates. |
| In TransferOptions, you can only send a single value for the set of data: LocationOriginID, LocationOrigin.IATA, and LocationOrigin.Coordinates. | More than one identification method was provided for the origin. Send only one. |
| In TransferOptions, LocationOrigin.Coordinates requires both Latitude and Longitude. | Only one of the two coordinate values was provided. Both Latitude and Longitude are required. |
| In TransferOptions, if LocationOrigin.IATA is provided, LocationOrigin.Type must be 'A' (airport). | An IATA code was sent but the Type attribute is not A. IATA codes are only valid for airports. |
| In TransferOptions, if LocationOrigin.Type 'A' (airport) is provided, LocationOrigin.IATA is required. | Type="A" was specified but no IATA code was provided. Airports must be identified by IATA code. |
| In TransferOptions, if LocationOrigin.IATA is provided then Name and Address are not supported. | Name or Address was sent along with an IATA code. These fields are not applicable for airport locations. |
| In TransferOptions, same LocationOriginId and LocationDestinationId. | The same Location ID was sent for both origin and destination. |
| In TransferOptions, same origin and destination IATA. | The same IATA code was sent for both origin and destination. |
| In TransferOptions, same origin and destination coordenates. | The same coordinates were sent for both origin and destination. |
info
The same validation errors apply to LocationDestination with the corresponding field names.
Transfer location resolution errors
These errors are returned when the request is structurally valid but the system cannot resolve the provided data to a known location.
| Error message | Cause | Suggested action |
|---|---|---|
| LocationOrigin: No location found for IATA code '{code}'. | The provided IATA code does not match any airport in the system. | Verify the IATA code is correct. Use the static data methods to retrieve available locations. |
| LocationOrigin: No location found for the provided coordinates (Lat: {lat}, Lon: {lon}). | No location was found within the search radius for the given coordinates. | Verify the coordinates are correct. The search radius is configured per sales channel. |
| LocationOrigin: Locations found near coordinates (Lat: {lat}, Lon: {lon}) but none matches the specified Type '{type}'. | Locations exist near the coordinates, but none matches the Type filter (e.g., A, H, S, P). | Remove the Type filter to see all available locations, or verify the expected location type for these coordinates. |
| LocationDestination: The provided coordinates resolved to the same location as LocationOrigin. | Both origin and destination coordinates resolved to the same internal location (non-hotel). | Provide different coordinates, use a more specific Type filter, or use LocationDestinationID instead. |
| GIATA code '{code}' not found. | The provided GIATA code does not match any accommodation in the system. | Verify the GIATA code is correct. GIATA codes are numeric identifiers assigned to accommodations. |
BOOK — Booking creation errors
Transaction and cart errors
| Error message | Cause |
|---|---|
| The indicated TransactionIdentifier is not correct. | The TransactionIdentifier does not correspond to a valid booking. |
| The indicated TransactionIdentifier does not allow add bookings. | The booking state does not allow adding new services. |
| To cancel items of the current booking you need send the TransactionIdentifier. | A cart item removal was requested without providing the TransactionIdentifier. |
| The BookingItemIdentifier = {id} was not found in the booking. | The specified BookingItemIdentifier does not exist in the current booking. |
| The state of the BookingItemIdentifier = {id} not allow to cancel the item. | The service item's current state does not allow removal from the cart. |
| Multiple services are not allowed in a single booking. | The request attempted to add multiple services, which is not permitted. |
| More than one service with the same ConceptBookingCode per booking is not allowed. | Duplicate ConceptBookingCode values were sent in the same booking request. |
Product and concept validation
| Error message | Cause |
|---|---|
| The ProductBookingCode entered is not correct. | The ProductBookingCode does not match any available product. |
| The ConceptBookingCode entered is not correct. | The ConceptBookingCode does not match any available concept. |
| The ProductBookingCode node is not included in the request. This node is mandatory. | The required ProductBookingCode node was omitted. |
| The ProductBookingCode is wrong. | The ProductBookingCode does not correspond to a valid product in the current search. |
| The ConceptBookingCode is wrong. | The ConceptBookingCode does not correspond to a valid concept in the current search. |
| Bookings with concepts of different rates are not allowed. | The selected concepts belong to different rate plans, which is not permitted in a single booking. |
| Product {code} requires evaluation in method DestServicesAvailV2. | The product must be searched first through the AVAIL method before booking. |
| The initial search is invalid. The DestServicesAvailV2 query should be launched again. | The cached availability data has expired. Perform a new AVAIL search before booking. |
Quantity and availability
| Error message | Cause |
|---|---|
| The quantity requested does not correspond to the occupation sent in the DestServicesAvailV2 method. | The number of units requested does not match the occupancy from the AVAIL search. |
| The requested quantity does not comply with the product restriction. | The quantity exceeds or does not meet the product's minimum/maximum restrictions. |
| The requested date/hour is not available. | The selected date or time slot is no longer available. |
| The requested language is not available. | The selected language option is not available for this product. |
| The requested sector is not available. | The selected sector is not available. |
Service configuration
| Error message | Cause |
|---|---|
| To add products configured by service duration, it is necessary to indicate the duration in the 'Duration' node of the concept. | Products with duration-based pricing require the Duration node. |
Concept and rate
| Error message | Cause |
|---|---|
| The concept or the date requested is not correct. | The combination of concept and date does not match any available option. |
| Attempts have been made to book optional items that are not optional. The mandatory ones are already included in the reservation and should not be indicated in the OptionalDetails node. | Mandatory concepts were included in the OptionalDetails node. They are automatically included and should not be specified there. |
COMMIT — Booking confirmation errors
Confirmation state
| Error message | Cause |
|---|---|
| Booking status does not allow confirmation. | The booking is in a state that cannot be confirmed (e.g., already confirmed or cancelled). |
| No service found with the indicated ConceptBookingCode. | The ConceptBookingCode specified in the commit request does not match any service in the booking. |
| Product not found at service. | Internal error: a product could not be matched to the service during confirmation. |
| The booking has expired, start the booking again. | The booking session has timed out. Create a new booking from the AVAIL step. |
TransferAddress validation (COMMIT)
When confirming a transfer booking that was searched using GPS coordinates, the TransferAddress node may be required:
| Error message | Cause |
|---|---|
| Request error, Transfer node required. | The commit request is missing the required transfer concept data. |
| Request error, too many concepts. | More than 2 transfer concepts were sent (maximum is 2: outbound + return). |
| In TransferAddress, if no Origin Coordinates were sent in the Avail, OriginName, OriginAddress, OriginAddress2 and OriginPostalCode are not supported. | Origin address fields were sent, but the original AVAIL search did not use GPS coordinates for the origin. |
| In TransferAddress, if no Destination Coordinates were sent in the Avail, DestinationName, DestinationAddress, DestinationAddress2 and DestinationPostalCode are not supported. | Destination address fields were sent, but the original AVAIL search did not use GPS coordinates for the destination. |
| In the Transfer node, OriginName is required. | The AVAIL used GPS coordinates for origin, so OriginName must be provided in the commit. |
| In the Transfer node, OriginAddress is required. | The AVAIL used GPS coordinates for origin, so OriginAddress must be provided in the commit. |
| In the Transfer node, DestinationName is required. | The AVAIL used GPS coordinates for destination, so DestinationName must be provided in the commit. |
| In the Transfer node, DestinationAddress is required. | The AVAIL used GPS coordinates for destination, so DestinationAddress must be provided in the commit. |
READ — Booking read errors
| Error message | Cause |
|---|---|
| Invalid TransactionIdentifier. | The TransactionIdentifier does not exist or is not valid. |
| User does not have permission to open this TransactionIdentifier. | The authenticated user does not have access to this booking. |
| ProductBookingCode not found. | The ProductBookingCode specified does not exist in the booking. |
CANCELLATION_FEES — Cancellation fee errors
| Error message | Cause |
|---|---|
| Invalid TransactionIdentifier. | The TransactionIdentifier does not exist or is not valid. |
| The BookingItemIdentifier {id} is not valid or does not exist. | The specified BookingItemIdentifier is not valid or does not belong to the booking. |
CANCEL — Cancellation errors
| Error message | Cause |
|---|---|
| Invalid TransactionIdentifier. | The TransactionIdentifier does not exist or is not valid. |
| The BookingItem {id} does not exist or cannot be cancelled. | The specified service item does not exist or its current state does not allow cancellation. |
BOOKING_LIST — Booking list errors
| Error message | Cause |
|---|---|
| The user settings are not correct. | The authenticated user's configuration is invalid or incomplete. |
| At least one filtering parameter must be established. | No search filter was provided. At least one of TransactionIdentifier, ClientReference, or a date filter is required. |
| In the date filters, the start and end date must be indicated. | A date filter was provided but is missing either the start or end date. Both are required. |
| The date range cannot exceed one year. | The date range specified is longer than the maximum allowed (365 days). |