Common integration problems between hotel systems and how to prevent them
In a hotel, integration between systems is not an isolated “technical” issue: it directly affects availability, parity, distribution and, therefore, revenue. When PMS, channel manager, booking engine and OTAs do not “talk” well with each other, very specific risks arise: overbooking, sales closed for no reason, inconsistent rates between channels, duplicate bookings or cancellations that do not arrive. The result is usually twofold: loss of sales (direct and OTA) and pricing decisions based on contaminated data.

Prevention depends less on “having more tools” and more on three factors: configuration, correct mapping (typologies and tariff plans) and control routines. In that ecosystem, the PMS often acts as the core system: if the PMS has well-defined inventory, typologies, rules and statuses, it is easier for the other pieces to reflect the same consistently.
What “should” be synchronised between systems for revenue to function
For a revenue manager, the important thing is that the essential flows are aligned. You don't need to master APIs to operate well: you just need to understand which elements need to match to avoid pricing and inventory errors.
Critical flows that should be synchronised:
- Availability and inventoryHow many rooms are available for sale by date and type.
- Tariffs and pricing rules: tariff plans (BAR, non-refundable, breakfast included), supplements, occupancy (1/2 pax).
- RestrictionsMinimum stay, CTA/CTD, closures, release and rules per channel.
- Bookings, modifications and cancellations: creation of reservations, changes of dates/typology, cancellation and their effect on availability.
- Taxes and feeswhat is included in the price and how it is displayed in each channel (comparable final price).
- Typologies and rate plans (nomenclature and equivalences): “room types” and “rate plans” should be mapped consistently.
“Minimal” recommended for small hotels (no extra complexity):
- A master inventory by typology defined in PMS.
- Clear basic rate plans (e.g. flexible and non-refundable BAR) with coherent policies.
- A reduced set of enforceable and verifiable restrictions.
- Aligned booking and cancellation statuses for reliable availability.
Minimum map of integrations in a small hotel
A simple mental model helps to diagnose dependencies:
- PMS ↔ Channel manager ↔ OTAs / Booking engine (web)Distribution and synchronisation of availability, rates and restrictions to the OTAs and booking engine, and booking input to the PMS.
- If it fails: broken parity, wrong inventory, overbooking or closed sales. Customer sees something else on the web and flees to OTAs, direct sales are lost.
- (Optional) PMS ↔ RMS/CRM/POS/locks/accountability: optimisation, marketing, charging, operation and reporting.
- If it is not there: it does not necessarily “break” distribution, but it can affect forecast, segmentation, data and operational efficiency.

In practice, the clearer it is which system controls which data (inventory, tariffs, restrictions, status), the fewer conflicts will arise.
Problem: overbooking or closed sales due to availability mismatches
It is the main fear with good reason: overselling damages the operation and reputation; underselling is a direct loss of revenue. In integrations, both problems often share a common root: availability is not the same at all points.
Typical causes:
- Inventory does not synchronise (mismatch between PMS and channel/OTAs).
- Stop sell or closures that do not go down into channels or are applied where they should not be.
- Refreshing times (slow or inconsistent refresh rates: the system is slow to update changes.
- Misconfigured quotas/allotments (unintended limitations by channel or typology).
- Rooms incorrectly assigned to typologies or duplicated/overlapping typologies.
Early signs (useful to act before the problem):
- OTA shows “last room” repeatedly on dates with actual inventory.
- PMS shows availability, but channel/OTA shows closed (or the other way around).
- Availability jumps without associated reserves (it goes up or down “on its own”).
- Discrepancies only in a specific typology (usually indicates mapping or allotment).
What to check first (practical order):
- Typologies and mappings (which inventory is actually connected to which channel).
- Allotments/quotas and closures per channel.
- Availability by date in PMS vs channel manager on 2-3 key dates.
- Latest reservations and amendments which could have left the inventory “unbalanced”.
Quick checks to detect misalignments before they cost money
Habit of prevention for small teams:
- Select 3 future dates:
- one of high demand (event/heavy weekend),
- a valley,
- and a “normal” weekend.
- Compare PMS vs channel manager vs an OTA (at least one) at:
- availability by typology,
- locks/stop seals,
- allotments/quotas if they exist.
- Check for active restrictions that may block sales and appear to be “out of stock”.
- If you detect a difference, document: date, typology, channel and capture. This speeds up resolution and avoids repeating the analysis.
Problem: inconsistent rates between channels (parity unintentionally broken)
Parity is often broken without a conscious decision: it is not that the hotel “wants” different prices, it is that the systems end up showing prices or conditions that are not comparable. The usual impact is clear: conversion on the web drops (the customer detects the difference) and ADR or margin is eroded by commissions and uncontrolled discounts.
Frequent causes:
- Incorrect mapping of rate plans (one rate is linked to another rate that does not correspond).
- Different taxes/fees (in one channel included, in another added).
- Rounding, currencies or conversions.
- Automatic promotions and legacy rules that remain active without review.
- Mobile tariffs or programme discounts (e.g. benefits visible only in app).
- Visibility/tier discounts (e.g. Preferred/Genius programmes) not included in the final price.
The prudent approach is to distinguish: is it a problem of price or conditions? Sometimes the number matches, but the cancellation policy or regime does not.
Most common mapping errors in tariff plans
Typical failures that break parity “underneath”:
- Flexible BAR crossed with non-refundable (different policy and cancellation).
- Breakfast included misconfigured (sold as included where it is not, or vice versa).
- Different policies between channels for the same tariff label (cancellation, prepaid, no-show).
- Mixed occupancy (1 pax and 2 pax with the same plan, or supplements that do not apply).
- Supplements/child policies misapplied (appear only in one channel).
When the problem is a mapping problem, it tends to recur on the same tariff/type and is not day-dependent.
Problem: restrictions that are not applied (or are applied where they are not supposed to be)
Restrictions are part of the demand strategy. If they are not applied, you can fill up with “short” stays that break the calendar; if they are over-applied, you block sales without realising it. In integrations, failures often appear in changes: new season, new typologies, new integration or manual adjustments in several places.
Common cases:
- Min stay that stays only in one system and does not reach all channels.
- CTA/CTD that the engine or an OTA does not support the same and is interpreted differently.
- Closures applied to an erroneous typology by mapping.
- Per-channel rules that are lost after an update or manual change.
In practice, the clearer it is which system controls which data (inventory, tariffs, restrictions, status), the fewer conflicts will arise.
How to validate restrictions without checking channel by channel
Efficient method:
- Define 2-3 “test” dates: one with high demand (where you would put min stay) and one where there should be no restrictions.
- Verify from the PMS which restrictions are active by type and plan.
- Contrast from a consolidated view (channel manager or key extranets) whether they are replicated.
- Check on the front-end as a client: booking engine and an OTA, trying to book 1 night where it should be blocked and 2 nights where it should be allowed.
This avoids checking “everything” and detects most of the faults that affect conversion and inventory.
Problem: duplicate bookings, “ghost” bookings or cancellations not arriving
This problem contaminates the database for forecasting and pricing. If cancellations do not arrive or a booking is duplicated, the PMS can show artificial occupancy. This leads to increase rates or close sales without a real basis, or to make late decisions when discovering the error.
Typical scenarios:
- Re-attempts to send: the channel forwards a spot-drop reservation and is doubled.
- Unmapped changes of state: a cancellation remains as a modification or “pending”.
- Partial amendments: changes dates, but inventory is not released correctly.
- Occasional disconnections: during a period no cancellations/changes enter and accumulate.
The key is to treat it as a problem of states and “source of truth”, not as isolated cases.
Which reserve states need to be clear and aligned
Minimum states that should be understood in the same way in all systems:
- Confirmed: blocks inventory and computes in occupancy.
- Amendedinventory should be updated (dates, typology, occupancy).
- Cancelled: releases inventory and adjusts reporting.
- No-show: affects inventory (as per policy) and cancellation/no-show metrics.
- Pending/guaranteed (if any): its actual effect on availability must be defined.
Operational recommendation: defines by process what is the source of truth (in many hotels, the PMS for reservations and statuses) and sets reconciliation rules: what to do if the channel/OTA shows one status and the PMS shows another.
Problem: the booking engine does not reflect the same as the channel manager/OTAs.
When the website shows different prices, conditions or availability, the customer compares and tends to go where they see more clarity or a better price. The most typical impact is the leakage to OTAs and the loss of direct, even if “everything is connected”.
Frequent causes:
- Different cache and refresh times between engine and channel.
- Restrictions not supported or interpreted differently.
- Differences in occupancy (1-2 pax) or supplements not applied equally.
- Packages/addons that change the final total.
- Taxes/currency/fees shown differently at checkout.
Practical “customer” test to validate the direct
Fast routine, especially after seasonal changes or relevant adjustments:
- Opens in incognito mode (no cookies or session).
- Look for test dates (the same dates you use to validate inventory/restrictions).
- Try 1 and 2 pax.
- Compare final total price and conditions with an OTA (same regime and policy).
- Check: cancellation, prepayment, taxes/fees and what's included in the fare.
If the difference only appears at checkout, the problem is likely to be in fees, taxes or addons rather than the base fare.
Problem: Incomplete data for revenue (segmentation, origin, cancellations, pick-up).
In small hotels, many issues are not seen as “integration failure”, but as a lack of data quality: mislabelled channels, unused segments, mixed rates and part of the revenue outside the PMS. This distorts key metrics: pick-up, ADR by channel, cancellation, production by segment and distribution decisions.
Typical examples of distortion:
- Failure to differentiate OTA vs. direct in the PMS prevents measurement of real distribution cost.
- Segmenting everything as “general” prevents understanding which demand is corporate vs. leisure.
- Cancellations without reason or without consistent status inflate or hide conversion problems.
Minimum fields that should be standardised now
A simple standard (without excessive complexity):
- Channel (direct, OTA, GDS, tour operator if applicable).
- Subchannel/OTA (name of partner).
- Tariff/plan (BAR, NR, breakfast, package).
- Basic segment (leisure/corporate/group, if applicable).
- Reason for cancellation (if it exists in your operational or PMS; even if it is basic).
- Country/market (to read demand and lead time patterns).
With a few well-used fields, reporting is improved and decisions based on misleading “averages” are reduced.
Root causes explaining the majority of integration incidents
Although symptoms are varied, most problems are explained by a small set of repeated causes:
- Incorrect mapping (poorly linked typologies and tariff plans).
- Permits/credentials (insufficient access, passwords or permissions preventing proper synchronisation).
- Manual changes in various systems (double control: it is changed in PMS and also in extranet, creating conflicts).
- Differences in definition (what is a typology, what is included in a rate plan, how to interpret a constraint).
- Lack of change process (no checklist, no documentation, no end-to-end testing).
This framework helps to diagnose without “blaming the technology”: many issues are preventable with clarity of definitions and change control.
Signs to distinguish a configuration failure vs. a one-off connection failure
Practical guidelines:
- If it affects always at the same rate or typology, is usually configuration/mapping.
- If it occurs in peaks and then recovers (and affects several things at the same time), it tends to be connectivity/refresh.
- If it affects a single channel, is usually specific mapping or channel rule.
- If the problem appears after a change (season, new tariffs, new typologies), it is usually insufficient change process.
Prevention checklist before activating (or changing) integration
Before connecting or modifying, assume that the risk is not in “activating” but in activating without validating the entire flow.
Actionable checklist:
- Inventory: typologies created, correct units, rooms assigned to typology without overlaps.
- Mapping typologies: clear and documented PMS ↔ channel ↔ OTAs equivalences.
- Rate plans: BAR, non-refundable, breakfast/packages; consistent policies per channel.
- Taxes/fees: defined what is included and how it will be displayed; consistency in final price.
- Policies: cancellation, prepayment, no-show; consistent across systems.
- Restrictions: min stay, CTA/CTD, closures; confirm what each channel/engine supports.
- Coins and rounding: check if there are conversions and how they affect the visible price.
- Refresh ratesUnderstand how often each system is updated and what to do in the event of an incident.
- Reservation/modification/cancellation testsend-to-end (see next block).
- Rollback planwhat is reverted if something goes wrong (deactivate mappings, close sales, revert to previous configuration).
- Minimum documentationwho changed what and when, and what was expected.
Must-try tests in 60 minutes (for small hotels)
Compact sequence to validate the complete flow:
- Live test booking (motor): one test date, 1-2 pax. Check final price, conditions and that it enters PMS with correct plan/typology.
- Trial booking on OTASame date or another test. Check PMS entry, availability and status.
- A modification: changes dates or typology (if the channel allows) and confirms correct update and release/blocking of inventory.
- A cancellationcancels and verifies that status and availability are updated in PMS and channels.
- Repeat a quick check of availability in PMS, channel and front-end.
If any phase fails, it usually points directly to the root cause (mapping, states, policies or refresh).
What to ask suppliers (PMS, channel, engine) to resolve issues faster
When there is an issue, resolution time affects revenue. Support works best if it receives reproducible and specific data, not general descriptions.
Information that accelerates:
- Reservation ID (of the channel and PMS if they exist).
- Channel affected and whether it is a single or repeated case.
- Date and time (timestamp) of the event (creation, modification, cancellation).
- Typology y tariff plan involved.
- Captures of PMS, channel and channel (or engine) showing the discrepancy.
- Steps to reproduce (what you did, in what order).
- Expected vs. actual result (e.g. “should release inventory and doesn't”).
- If supported by the supplier: logs or internal connector references.
Operational advice: agree on a clear support channel and realistic SLAs according to your operations (especially during seasonal changes or peaks in demand).
How a well-integrated PMS reduces operational risk and protects revenues
In a simple and stable architecture, the PMS functions as a “source of truth” for inventory and reservations, and as a reporting basis for revenue. A well-integrated PMS does not eliminate the need for strategy, but it does reduce repetitive errors: it improves cross-channel consistency, facilitates change auditing and enables more reliable data control routines.
Functional impacts relevant to revenue:
- Fewer availability discrepancies and less risk of overbooking or sales closed by mistake.
- Greater consistency of tariffs and conditions by centralising tariff plans and restrictions.
- Traceability to learn: what change led to a problem or an improvement.
- More consistent reporting for pricing, segmentation and distribution decisions.
The aim is not to add complexity, but to have the essential pieces (PMS-channel-engine-OTAs) aligned and verifiable with simple routines.
Frequently asked questions on integration problems between hotel systems
What is the most expensive integration problem for a small hotel?
It is usually anything that affects inventory and parity at the same time: an overbooking due to poorly timed availability, a stop sell that does not go down and blocks sales, or broken parity that pushes the customer to the OTA. In addition to the impact on revenue and margin, it can affect reputation if it forces relocations or generates distrust.
How often should I check that PMS and channel manager are synchronised?
It depends on volume and variability, but a realistic guideline is a light almost daily check on sensitive dates (next 7-14 days, strong weekends) and a structured weekly review with 3-5 test dates. After seasonal changes, new tariffs or typologies, it is advisable to review immediately.
Why do different rates appear between my website and the OTAs if “everything is connected”?
Because “connected” does not guarantee “identical”. Differences often come from different taxes/fees shown, automatic promotions or mobile rates, incorrect mapping of tariff plans, currency/rounding or engine cache. Conditions also play a role: same figure, but not equivalent cancellation policy or scheme.
How do I know if the fault is a configuration or a connection fault?
Observe the pattern. If the problem always occurs on the same tariff or type, it points to configuration/mapping. If it appears intermittently, especially in peaks, it is usually refresh/connectivity. If it affects a single channel, it is usually channel-specific mapping or rule. Isolating “what changes” speeds resolution.
What tests should I do before activating a new integration?
As a minimum, one live test booking and one OTA test booking, plus one modification and one cancellation, verifying that everything is reflected in the PMS and that availability is updated correctly. In addition, it is advisable to validate restrictions on test dates and compare the final price (with taxes/fees) between web and OTA to avoid broken parity.
Who should be the “source of truth”: PMS or channel manager?
It should be defined by process. In many hotels, the PMS is the source of truth for reservations, inventory and status, and the channel manager for distribution to OTAs. The important thing is to avoid double checking (changing the same thing in two places) and to agree on which data sends where, depending on capabilities and operations.
What information do I need to send to support to get it fixed quickly?
Includes booking ID (channel and PMS), affected channel, date/time of the event, typology and fare plan, comparative screenshots (PMS/channel/channel), steps taken and expected vs. actual result. If the problem is repeated, it indicates since when and on what dates it occurs. This reduces exchanges and speeds up diagnosis.
You may also be interested in
REQUEST YOUR DEMO TODAY
Discover how Lean Hotel System can transform your hotel business