Learn how to import external reservations into Hostaway using CSV and what format and data requirements must be met before import.
How to import external reservations through CSV?
What is this feature about?
If you wish to import other Channel Manager reservations or from an OTA, then this feature is for you. By doing so, you can easily keep track of all your reservations in one place. Please note that this function is not activated by default, so you will need to submit a request to use it.
Introduction
- Only Admins or users with admin-level access can use this feature
- We highly advise importing only reservations that are not already in Hostaway
- Reservations will be imported as Hostaway direct reservations. We will indicate the origin channel (mandatory field) in the reservation. Note that you will be able to cancel these reservations if needed
- You can find the CSV template here
- If there is one error, the full import will be aborted
How to import your CSV reservation file?
Prepare your CSV file
Some general criteria
- All mandatory fields must be filled. Mandatory fields are marked with a * symbol
- Columns must have the same names as the template, but the column order can be different. The only exception is the * symbol, which can be removed if needed
- Any other conditions, such as formats or length limits, must be respected
- The maximum number of reservations for one upload is 500. Additional uploads can be done
The fields are the following
- guestEmail *: It must be a valid email. Max length is 255 characters
- guestFirstName * // guestLastName *: Max length is 127
- guestName: If missing, it will be composed of the guest's first name and the guest's last name. Max length is 255
- numberOfGuests*: It must be a positive integer number. We do not validate that the sum of adults + children + infants differs from the amount in this field
- numberOfAdults // numberOfChildren // numberOfInfants // numberOfPets: They can only be a non-negative integer number
- arrivalDate */departureDate *: Different formats are accepted. If the format is DD/MM/YYYY, it must be specifically chosen in the import process pop-up
- totalPrice *: We can accept both dots and commas for decimals and up to 2 decimals. If commas were chosen, points could be used as thousand separators. It must be a positive number and a maximum of 19 digits
- currency: It should be in ISO 4217 Code. If missing, it will be taken from the associated listing currency. Max 10 characters
- status *: We only accept "new", "canceled", or "ownerStay". Read more about Owner Stays here
- originChannel*: Free text to identify the channel of origin. Max 50 characters. We will add one field in reservations that will show the value introduced here
- channel: This field is specifically used for OTA reservations (Airbnb, Booking.com, Vrbo, etc), and should not be used when importing reservations through CSV. Please use originChannel instead for identification purposes.
- guestNote: Should only include free-form text; we suggest not using line-skipping or special characters to prevent formatting errors when importing.
- externalReservationId*: Each reservation must have its own individual and unique ID. It should be a reservation ID from the channel of origin. If we find another reservation with the same ID, we will delete that one and create a new one. Free text with a maximum of 255 characters
- hostawayListingId*: Id of the listing at Hostaway. Normally comes after the listing name. It must be a positive integer number
-
phoneNumber: The phone number field in CSV uploads requires specific formatting to ensure proper data import and country code detection.
- Digit Limit: Maximum length 32 digits
- Recommended format: Digits only
- Country Code Detection: The system detects country codes based on the first 2 digits of the phone number. Formatting characters (parentheses, spaces, dashes) can cause misinterpretation and incorrect digit sequence reading.
-
checkinTime // checkoutTime: It must be in 24h format and not AM/PM. Only integer numbers from 0 to 23 are accepted
- If these fields are left blank, the system will use the check-in and check-out times from the listing
- You should use a 24-hour format with a colon, for example, 11:30, 12:30, 13:30, and so on
- reservationDate: For the date, different formats are accepted. If the format is DD/MM/YYYY, it must be specifically chosen in the import process pop-up. For the reservation time, the system will identify common times. The exact time is not needed. It needs to be entered in UTC
-
totalPaid and paymentMethod: filling these 2 options will generate 1 paid charge to reflect how much was paid so far. This is a great tool to keep the payment status updated
- For paymentMethod you can select from the following values on the template dropdown: credit_card, vcc, cash, paypal, venmo, bank_transfer, bank_check, ota, and other
- Financial fields (baseRate, cleaningFee, etc.): It is also possible to enter financial data per reservation. The sum of the total price components should ideally match the total price in the reservation to correctly see the price breakdown in the reservation
- reservationAgreement: Optional status of the rental agreement signature for the reservation. It can be either signed, not_signed, or not_required. If left empty, it will be marked as not_required.
Import reservations
- Go to your Hostaway Dashboard > Reservations
- Click on the "Import Reservations" button in the top right-hand corner
- A pop-up will display the available formatting options
Date format
- Automatic: It will identify and correctly process (almost) all common formats
- DD/MM/YYYY: This can be a common case in which the automatic option will not correctly process, so only in this case should it be chosen. It will also work if the date is D/M/YYYY
Decimal separator for prices
- Decimal comma: Used to separate thousands
- Decimal point: Used to separate thousands
After clicking on "Next", you will need to choose the features to be affected in the same way as you would if we got these reservations directly from the channels.
Select features
Imported reservations will block the calendar by default, blocking dates when needed and displaying the reservations. As an example, you might like to import a reservation but not create message automation. Options are:
- Message Automation
- Auto-tasks
- Auto-payments
Disclaimer for CSV Reservation Import
- Please consider that creating the auto-payments on a reservation will depend on the reservation creation date. For example, if the imported reservation creation date is before the auto-payment connection date to the listing, the system will not generate an auto-payment.
- If the process goes well, a success message is displayed. Otherwise, a list of errors will be displayed, identifying the rows with issues and the fields for those rows. For this reason, we recommend that you only update CSVs that contain reservations that have not yet been entered into Hostaway.
- To avoid duplicating reservations when uploading this CSV multiple times, we will check the externalReservationId, meaning that each reservation must have its own and unique ID. If we find a duplicate, we will delete that reservation and add it again, giving an option for updating data.
- If a reservation has been booked through a channel like Airbnb and the same reservation is present in the CSV file using the same externalReservationId, we will not delete and create a new reservation. In such cases, a new reservation from the CSV will be added, which will result in a double booking being shown.
- When importing reservations via CSV, please be aware that leaving certain checkbox options unchecked, such as the "Message Automation" option, will not prevent automations or tasks from being triggered under certain conditions.
- Message Automation Checkbox: Leaving the "Message Automation" checkbox unchecked will prevent automated messages from being sent at the time of reservation creation. However, it does not exclude automations triggered by other events, such as "After Reservation" triggers, provided the conditions for those automations are met.
- Tasks & Other Modifications: Even if the checkbox for message automation is unchecked, tasks, access codes, and other modifications may still be scheduled or processed, depending on other triggers and conditions. These are not prevented by the checkbox, as it only disables message generation during the reservation creation event.
- Automations and Triggers: If you have "Always trigger" enabled for certain events, automations may still be triggered based on modifications to the reservation after creation. This includes conditions like after a reservation is updated or after other event-specific triggers.