Table of contents
Property model fields
Reservation model fields
User model fields
Space model fields
RatePlan model fields
Property model fields
id (Required*)
Description: Unique identifier for the property. Either id or name must be provided.
Examples:
PROP-00112345hotel-downtown-nycproperty_abc123
Note: *Required if name is not provided.
name (Required*)
Description: Name of the property. Either id or name must be provided.
Examples:
Grand Hotel DowntownBeachside Resort & SpaCity Center HotelMountain View Lodge
Note: *Required if id is not provided.
Reservation model fields
id (Required*)
Description: Unique identifier for the reservation. Either id or booking_reference must be provided.
Examples:
RES-2024-00123412345678booking-abc-xyz-12320240115-001
Note: *Required if booking_reference is not provided.
booking_reference (Required*)
Description: Booking reference number from the source system. Either id or booking_reference must be provided.
Examples:
BK-2024-001234ABC123XYZ1234567890WEB-2024-01-15-001
Note: *Required if id is not provided.
status (Optional)
Description: Current status of the reservation. The system normalizes various status formats.
Examples:
confirmed→ Normalized toexpectedcheckin/checked in/check_in/check-in→ Normalized tochecked_incheckout/checked out/check_out/check-out→ Normalized tochecked_outdue in/duein/due_in/due-in→ Normalized todue_indue out/dueout/due_out/due-out→ Normalized todue_outno show/noshow/no-show→ Normalized tono_showenquiredrequestedtransferredwaitlistedcanceled→ Normalized tocancelledother
Valid values: String, 2-16 characters
market_segment (Optional)
Description: Market segment classification for the reservation.
Examples:
GroupBusinessLeisureCorporateIndividualFamily
Valid values: String, max 255 characters
market_category (Optional)
Description: Market category classification.
Examples:
PromotionNon-PromotionStandardPremiumDiscount
Valid values: String, max 255 characters
channel_segment (Optional)
Description: Channel segment through which the reservation was made.
Examples:
MessagingPhoneChannel ManagerDirectOnlineWalk-in
Valid values: String, max 255 characters
channel_category (Optional)
Description: Specific channel category or booking source.
Examples:
BookingcomExpediaAirbnbHomeAwayAgodaWebsiteMapsChatbotWhatsappFacebookWeChatSiteminderBookingEngineSMXOKTA
Valid values: String, max 255 characters
agency_name (Optional)
Description: Name of the travel agency or booking agency.
Examples:
ABC Travel AgencyGlobal Travel ServicesCorporate Travel SolutionsVacation Experts Inc.
Valid values: String, max 255 characters
iata_code (Optional)
Description: IATA (International Air Transport Association) code for the travel agency.
Examples:
12345678ABC1234598765432
Valid values: String, max 255 characters
arrival_date_time (Optional)
Description: Date and time of guest arrival. Automatically converted to Carbon date object.
Examples:
2024-01-15 14:00:002024-01-15T14:00:00Z2024-01-1515/01/2024 14:002024-01-15 2:00 PM
Format: Any date/time format that Carbon can parse
departure_date_time (Optional)
Description: Date and time of guest departure. Automatically converted to Carbon date object.
Examples:
2024-01-20 11:00:002024-01-20T11:00:00Z2024-01-2020/01/2024 11:002024-01-20 11:00 AM
Format: Any date/time format that Carbon can parse
number_of_units (Optional)
Description: Number of units (rooms/spaces) in the reservation. Automatically converted to integer.
Examples:
12510
Format: Integer
number_of_adults (Optional)
Description: Number of adults in the reservation. Automatically converted to integer.
Examples:
1246
Format: Integer
number_of_children (Optional)
Description: Number of children in the reservation. Automatically converted to integer.
Examples:
0123
Format: Integer
start (Optional)
Description: Start date of the reservation. Automatically converted to Carbon date object.
Examples:
2024-01-152024-01-15 00:00:0015/01/20242024-01-15T00:00:00Z
Format: Date format (required if provided)
end (Optional)
Description: End date of the reservation. Automatically converted to Carbon date object.
Examples:
2024-01-202024-01-20 00:00:0020/01/20242024-01-20T00:00:00Z
Format: Date format (required if provided)
currency (Optional)
Description: Currency code for the reservation amounts.
Examples:
USDEURGBPJPYCADAUDCHF
Format: ISO 4217 currency code (3 letters), max 255 characters
total_gross_amount (Optional)
Description: Total gross amount for the reservation. Automatically converted based on money_in_cents configuration.
Examples:
If
money_in_centsistrue:15000(represents $150.00)If
money_in_centsisfalse:150.00(automatically multiplied by 100 to become 15000 cents)
Format: Integer (if money_in_cents) or Numeric (if not)
total_tax (Optional)
Description: Total tax amount for the reservation. Automatically converted to integer.
Examples:
1500(represents $15.00 in cents)2500(represents $25.00 in cents)0
Format: Integer
notes (Optional)
Description: General notes or comments about the reservation. Creates a note record associated with the reservation.
Examples:
Guest requested late checkoutAllergic to peanuts - please noteCelebrating anniversary - room upgrade requestedVIP guest - special attention required
Format: String
connector:created (Optional)
Description: Timestamp when the record was created in the source system. Automatically converted to Carbon date object.
Examples:
2024-01-15 10:30:002024-01-15T10:30:00Z2024-01-15
Format: Date/time format
connector:updated (Optional)
Description: Timestamp when the record was last updated in the source system. Automatically converted to Carbon date object.
Examples:
2024-01-16 14:20:002024-01-16T14:20:00Z2024-01-16
Format: Date/time format
User model fields
id (Required*)
Description: Unique identifier for the user. Either id, email, or phone must be provided.
Examples:
USER-00112345john.doe@example.com(if email is used as ID)+1234567890(if phone is used as ID)
Note: *Required if both email and phone are not provided. If not provided, system will auto-generate from email, phone, or full name.
full_name (Optional)
Description: Full name of the user. If provided, will be automatically split into first_name and last_name.
Examples:
John DoeMary Jane WatsonJean-Pierre DuboisMaria Elena Rodriguez
Format: String
first_name (Optional)
Description: First name of the user.
Examples:
JohnMaryJean-PierreMaria Elena
Format: String
last_name (Optional)
Description: Last name of the user.
Examples:
DoeWatsonDuboisRodriguez
Format: String
email (Required*)
Description: Email address of the user. Automatically validated and converted to lowercase. Either id, email, or phone must be provided.
Examples:
Format: Valid RFC-compliant email address
Note: *Required if both id and phone are not provided.
phone (Required*)
Description: Phone number of the user. Automatically validated. Either id, email, or phone must be provided.
Examples:
+1234567890+44 20 1234 5678+33 1 23 45 67 89(555) 123-4567+1-555-123-4567
Format: Valid phone number format (auto-validated)
Note: *Required if both id and email are not provided.
gender (Optional)
Description: Gender of the user.
Examples:
MaleFemaleOtherPrefer not to say
Format: String
nationality (Optional)
Description: Nationality of the user. Automatically converted to country code.
Examples:
United States→ Converted toUSUnited Kingdom→ Converted toGBFrance→ Converted toFRGermany→ Converted toDE
Format: String (country name, automatically converted to ISO country code)
language (Optional)
Description: Preferred language of the user. Automatically converted to ISO 639 language code.
Examples:
English→ Converted toenFrench→ Converted tofrSpanish→ Converted toesGerman→ Converted tode
Format: String (language name, automatically converted to ISO 639 code)
salutation (Optional)
Description: Salutation or title for the user.
Examples:
Mr.Mrs.Ms.Dr.Prof.
Format: String
birthday (Optional)
Description: Date of birth of the user.
Examples:
1990-05-151985-12-2515/05/19901990-05-15T00:00:00Z
Format: Date format
address:address_line1 (Optional)
Description: First line of the user’s address.
Examples:
123 Main Street456 Oak Avenue, Apt 4B789 Park Road
Format: String
address:address_line2 (Optional)
Description: Second line of the user’s address (apartment, suite, etc.).
Examples:
Apt 4BSuite 200Building 2, Floor 3P.O. Box 123
Format: String
address:city (Optional)
Description: City of the user’s address.
Examples:
New YorkLondonParisTokyo
Format: String
address:country (Optional)
Description: Country of the user’s address.
Examples:
United StatesUnited KingdomFranceJapan
Format: String
address:zip_code (Optional)
Description: ZIP or postal code of the user’s address.
Examples:
10001SW1A 1AA75001100-0001
Format: String
consent:consent_code (Optional)
Description: Code identifying the consent type. Must match an existing consent code in the system.
Examples:
marketing_emailsms_notificationsdata_processingthird_party_sharing
Format: String (must exist in system)
Note: Requires consent:is_granted to be set to true for the consent to be granted.
consent:is_granted (Optional)
Description: Boolean indicating if consent is granted. Accepts boolean values.
Examples:
true/True/TRUE/1/yes/Yes→ Grants consentfalse/False/FALSE/0/no/No→ Does not grant consent
Format: Boolean (automatically mapped)
consent:is_pending (Optional)
Description: Boolean indicating if consent is pending. Accepts boolean values.
Examples:
true/True/TRUE/1/yes/Yes→ Consent is pendingfalse/False/FALSE/0/no/No→ Consent is not pending
Format: Boolean (automatically mapped)
company:name (Optional)
Description: Name of the company associated with the user.
Examples:
Acme CorporationTech Solutions Inc.Global Enterprises Ltd.Smith & Associates
Format: String
classification (Optional)
Description: User classification or category. Synced with PMS integration if available.
Examples:
VIPCorporateMemberRegularPremium
Format: String
loyalty_programs:name (Optional)
Description: Name of the loyalty program. Required if loyalty_programs:external_membership_id is provided.
Examples:
Gold RewardsPlatinum EliteStar AllianceHotel Rewards Program
Format: String, max 255 characters
Note: If loyalty_programs:external_membership_id is provided, this field becomes required.
loyalty_programs:external_membership_id (Optional)
Description: External membership ID in the loyalty program. Required if loyalty_programs:name is provided.
Examples:
123456789GOLD-ABC-123PLT-987654MEM-2024-001
Format: String, max 255 characters
Note: If loyalty_programs:name is provided, this field becomes required.
Space model fields
id (Required*)
Description: Unique identifier for the space (room/unit). Either id or name must be provided.
Examples:
ROOM-101101Suite-201space_abc123
Note: *Required if name is not provided. If not provided, system will use name value.
name (Required*)
Description: Name of the space. Either id or name must be provided.
Examples:
Deluxe Room 101Suite 201Ocean View RoomPenthouse Suite
Note: *Required if id is not provided. If not provided, system will use id value.
state (Optional)
Description: Current state of the space.
Examples:
AvailableOccupiedOut of OrderMaintenanceCleaning
Format: String
number (Optional)
Description: Room or space number.
Examples:
101201ASuite-301Villa-5
Format: String, max 1024 characters
type:name (Optional)
Description: Name of the space type.
Examples:
Deluxe RoomStandard SuiteExecutive RoomPresidential SuiteStudio Apartment
Format: String
Note: Requires type:code to be set for the type to be created/updated.
type:code (Optional)
Description: Code for the space type. Used as the unique identifier for the type.
Examples:
DLXSTDEXEPRESSTU
Format: String, max 64 characters
Note: This is the primary identifier for space types. If provided, the type will be created or updated.
type:description (Optional)
Description: Description of the space type.
Examples:
Spacious room with king-size bed and city viewLuxury suite with separate living areaStandard room with two queen bedsPremium accommodation with ocean view balcony
Format: String
RatePlan model fields
id (Required)
Description: Unique identifier for the rate plan.
Examples:
RATE-001BAR(Best Available Rate)CORP-2024PROMO-SUMMER
Format: String
name (Optional)
Description: Name of the rate plan.
Examples:
Best Available RateCorporate Rate 2024Summer PromotionEarly Bird SpecialWeekend Package
Format: String
code (Optional)
Description: Code for the rate plan.
Examples:
BARCORPPROMOEBWKND
Format: String
description (Optional)
Description: Description of the rate plan.
Examples:
Our best available rate with flexible cancellationSpecial corporate rate for business travelersLimited time summer promotion with 20% discountEarly booking discount for advance reservations
Format: String
Field mapping notes
Required fields summary
Property: Either
idORnamemust be providedReservation: Either
idORbooking_referencemust be providedUser: Either
idORemailORphonemust be providedSpace: Either
idORnamemust be providedRatePlan:
idis required
Special field prefixes
Fields with colons (:) indicate nested or related data:
address:*- Address fields (creates/updates address relationship)consent:*- Consent fields (requires existing consent code in system)company:*- Company fields (creates/updates company relationship)loyalty_programs:*- Loyalty program fields (creates/updates loyalty program relationship)type:*- Space type fields (creates/updates space type relationship)connector:*- Connector metadata fields
Data type conversions
Dates: Automatically converted to Carbon date objects from various formats
Integers: Fields like
number_of_units,number_of_adults,number_of_children,total_taxare automatically converted to integersMoney:
total_gross_amountis converted based onmoney_in_centsconfigurationBooleans: Consent fields accept various boolean representations and are automatically mapped
Email: Automatically validated and converted to lowercase
Phone: Automatically validated for proper phone number format
Country/Language: Automatically converted from names to ISO codes
Status normalization
The status field for reservations accepts various formats and normalizes them to standard values. Common variations are automatically handled (e.g., checkin, check-in, checked in all become checked_in).