Учёт мест в хостеле начинается с типа кровати
Учёт мест в хостеле: как разделить верхние, нижние и боковые кровати, назначить им цены и не потерять разницу при продаже на площадках.

Верхнее, нижнее и боковое место нельзя хранить как одинаковые койки с заметкой для администратора. Гость покупает разный опыт, готов платить за него разную сумму и вправе получить именно то, что увидел при бронировании. Если система знает лишь категорию комнаты и общее число свободных кроватей, разница в цене исчезает на площадке или превращается в спор при заселении.
Рабочая модель разделяет три сущности: физическую кровать, продаваемую категорию и назначение конкретному гостю. Они связаны, но не взаимозаменяемы. На этой разнице держатся корректная цена, остаток без овербукинга и понятное обещание гостю.
Тип места нужно хранить как свойство товара
Тип места влияет на продажу, поэтому он должен находиться в структурированных данных, а не в комментарии к брони. У каждой физической кровати нужен постоянный идентификатор, например 204-Н1 для первого нижнего места в комнате 204. Рядом хранят уровень, положение, комнату, пол секции, доступность для продажи и техническое состояние. Тогда администратор видит, какую кровать заняли, а система понимает, из какого остатка её вычесть.
Примечание «гость просит нижнюю» не меняет остаток нижних мест. После такой записи площадка продолжит продавать последнее нижнее место, потому что ни она, ни менеджер каналов не умеют превращать свободный текст в инвентарь. То же происходит с цветом ячейки в самодельной таблице: человеку цвет что-то сообщает, обмен данными его не видит.
Отдельно создают продаваемую категорию. Она отвечает на вопрос, что именно обещано до оплаты: «нижнее место в общем шестиместном номере», «верхнее место» или «боковое место». Назначение отвечает на другой вопрос: какая физическая кровать исполнит это обещание. Категория может объединять несколько одинаковых нижних мест, но одно место не должно одновременно входить в два продаваемых остатка.
Положение Правительства РФ № 1951 описывает гостиницу как средство размещения, где могут быть многоместные номера. Оно не задаёт коммерческую номенклатуру верхних и нижних кроватей. Значит, владелец сам строит товарные категории, но обязан описывать услугу без двусмысленности и исполнять проданное условие.
Нижнее место обычно заслуживает отдельной цены
Нижнее место чаще удобнее, поэтому одинаковая цена скрывает готовность части гостей доплатить. На него не нужно подниматься по лестнице, им проще пользоваться человеку с ограниченной подвижностью, пожилому гостю, высокому человеку или тому, кто несколько раз встаёт ночью. У нижней кровати часто удобнее доступ к багажу. Эти свойства объясняют надбавку лучше, чем абстрактное слово «комфорт».
Верхнее место тоже находит своего гостя. Оно может давать больше уединения, если у кровати есть плотная штора и собственная полка, а человек не боится лестницы. Иногда верх продаётся не хуже низа. Поэтому нельзя назначать вечную скидку только по привычке: сначала формулируют различие, затем смотрят собственные брони.
Боковое место нужно оценивать по фактической комнате. Если оно стоит у прохода, двери или общей зоны, гость получает больше света, шума и движения рядом с вещами. Если боковая кровать отделена перегородкой и имеет больше свободного пространства, она может оказаться предпочтительнее обычного верха. Название само по себе цену не определяет.
Не путайте тип места с медицинской гарантией. Администратор не должен решать, «достаточно ли пожилой» гость для нижней койки. Если нижнее место продаётся отдельно, его покупают на общих условиях. Если объект бесплатно учитывает пожелания, текст должен прямо говорить, что выбор уровня не гарантирован. Платная категория и пожелание без гарантии не могут называться одинаково.
Категории должны повторять обещание гостю
Категорию выделяют тогда, когда различие видно гостю до бронирования, влияет на цену или должно сохраняться при обмене с каналом. Для небольшого хостела обычно достаточно трёх категорий по положению кровати. Делить каждую из них ещё по комнате, окну, цвету шторы и номеру полки не нужно: чрезмерная детализация дробит остаток и усложняет сопоставление с площадками.
Хорошее название отвечает на четыре вопроса: что продаётся, в каком номере, какой это тип места и есть ли ограничение по полу. Например: «Нижнее место в общем 8-местном номере» и «Верхнее место в женском 6-местном номере». Сначала ставьте отличие, которое ищет гость, а затем вместимость и режим комнаты. Внутренний код можно сделать коротким: F6-L для женской шестиместной комнаты с нижним местом, M8-U для мужской восьмиместной с верхним.
Фотографии должны подтверждать разницу. Покажите лестницу, высоту до потолка, штору, розетку, полку и расстояние до прохода. Одна общая фотография комнаты не объясняет, за что человек доплачивает. Если площадка разрешает только галерею категории, не смешивайте в ней верхнее место с нижним так, чтобы первый кадр обещал одно, а бронь давала другое.
TravelLine в инструкции по созданию категории прямо разделяет предложения «Номер» и «Место в номере». Для второго варианта количество доступности равно числу кроватей, а цена в размещении «1 осн.» означает цену одного места. Это полезная проверка модели: если вы продаёте койку, но в канале считаете комнаты, настройки уже расходятся с предметом продажи.
Категории «любое место» лучше не создавать рядом с отдельными категориями верха и низа, если все три берут кровати из одного физического фонда. Без связанного остатка одна нижняя кровать окажется одновременно доступна как «нижняя» и как «любая». Такая схема выглядит гибкой, но создаёт скрытый овербукинг.
Физическая кровать и остаток категории считают по-разному
Физическую кровать учитывают поштучно, а наружу обычно передают количество свободных мест в категории. Если в двух одинаковых шестиместных комнатах по три нижних и три верхних места, начальный остаток составляет шесть нижних и шесть верхних. Продажа одного нижнего места уменьшает наружный остаток нижней категории до пяти, даже если конкретную кровать администратор назначит вечером.
В шахматке каждая койка должна иметь собственную строку или ячейку. Комната остаётся группой, а не единицей продажи. Иначе бронь на три места займёт «один номер», после чего система либо закроет ещё три свободные кровати, либо оставит комнату открытой без понимания фактической загрузки.
Соберите реестр соответствий и держите его рядом с настройками каналов:
204-Н1: комната 204, нижнее, категория «Нижнее, общее 6 мест», канальный кодD6-LOW.204-Н2: комната 204, нижнее, та же категория и кодD6-LOW.204-В1: комната 204, верхнее, категория «Верхнее, общее 6 мест», кодD6-UP.205-Б1: комната 205, боковое, категория «Боковое, общее 8 мест», кодD8-SIDE.
Канальный код в таблице не обязан совпадать с кодом конкретной площадки. Это ваш устойчивый внутренний ключ, с которым сверяют каждое сопоставление. Когда площадка переименует категорию или администратор подключит новый канал, физическую структуру не придётся придумывать заново.
Закрытая на ремонт кровать уходит из доступности своей категории на весь период ремонта. Нельзя закрывать всю комнату, если остальные места безопасны и продаются отдельно. Нельзя и оставлять сломанную лестницу как комментарий на завтра: верхняя кровать при такой неисправности фактически не готова к заселению.
Разницу в цене нужно считать по своим продажам
Ценовую ступень задают в рублях или процентах от базового места, а затем проверяют по скорости продажи каждого типа. Начните с нижнего места как отдельного товара, если гости уже спрашивают его по телефону или в сообщениях. Это готовый сигнал спроса. Верх можно оставить базой, низ продавать с надбавкой, боковое поставить по фактическому качеству.
Не копируйте разницу из железнодорожного билета или соседнего хостела. У вас другая лестница, высота, приватность и состав гостей. Фиксированные 200 рублей могут быть заметны в будний день и исчезнуть на фоне цены в высокий спрос. Процент сохраняет пропорцию, но иногда даёт некрасивую сумму. Выберите одно правило и округляйте одинаково.
Разберём комнату с шестью кроватями. Базовое верхнее место стоит 1 200 рублей, нижнее получает надбавку 15%, боковое скидку 10%. До округления получаются 1 380 и 1 080 рублей. При двух нижних, двух верхних и двух боковых местах полная продажа приносит 7 320 рублей вместо 7 200 при одной цене. Прибавка невелика, но важнее другое: гость осознанно выбирает условие, а администратор реже меняет места у стойки.
Проверяйте не только среднюю цену. Раз в две или четыре недели сравнивайте по типам долю проданных койко-ночей, среднее число дней от бронирования до заезда, отмены и просьбы о переселении. Если низ уходит первым при любой загрузке, надбавка может быть слишком маленькой. Если он остаётся последним, цена либо описание расходятся с тем, что гость видит на фото.
Не снижайте цену верхнего места автоматически за сутки до заезда, если канал не умеет передать тип кровати. Скидка привлечёт бронь, но заказ придёт как безымянное место, и администратор снова потеряет основание назначить верх. Сначала сохраните категорию в цепочке обмена, затем применяйте динамическую цену.
Площадка продаёт только то, что получила в сопоставлении
Разница теряется на площадках, когда две внутренние категории сопоставляют с одной внешней. Менеджер каналов видит «верх» и «низ», а канал получает одну категорию «Кровать в общем номере». После этого он хранит общую цену и общий остаток либо принимает данные только одной из внутренних строк. Красивые названия в своей шахматке обмен не исправляют.
Документация Яндекс Путешествий говорит, что тариф включает доступные категории номеров, а при работе с менеджером каналов цены настраивают на стороне менеджера. В инструкции по подключению объект отдельно указывает конфигурацию спальных мест. Это означает, что цепочку надо проверять целиком: категория в системе управления, размещение и тариф в менеджере каналов, внешняя категория в экстранете, карточка в поиске и готовая бронь на обратном пути.
Есть три рабочих варианта. Первый: площадка поддерживает отдельные категории, тогда верх, низ и бок сопоставляют один к одному. Второй: площадка принимает одну категорию, но умеет обязательный вариант кровати с отдельной ценой и остатком. Третий: площадка не умеет сохранить различие, тогда через неё продают общий пул по одной честной цене, а гарантированный выбор оставляют прямому каналу. Нельзя обещать на площадке нижнее место в описании общей категории и надеяться назначить его вручную.
Для каждого канала заведите одну строку контроля:
- Для
D6-LOWсопоставьте внешнюю категорию «Нижнее место, 6 мест», размещение одного гостя и тариф LOW; в бронь должен вернуться код LOW или полное название. - Для
D6-UPсопоставьте «Верхнее место, 6 мест», размещение одного гостя и тариф UP; бронь должна вернуть UP или полное название.
Если последняя колонка пуста, администратор не сможет доказать, что гость оплатил конкретный тип. Остановите продажу такой связки до исправления. Проверка одной тестовой брони дешевле, чем серия переселений в пятницу вечером.
Общий пул нельзя собирать простым сложением
Единый остаток между площадками нужен, но внутри него типы мест должны сохраняться. Менеджер каналов обязан уменьшить один и тот же остаток категории после продажи на любом источнике. При этом он не должен вычитать верхнюю койку из остатка нижних только потому, что они стоят в одной комнате.
Опасная схема появляется так. В комнате осталось одно нижнее и одно верхнее место. Первая площадка видит два места в общей категории, вторая видит по одному в категориях LOW и UP. Первая продаёт «любое место», но система не назначает тип. Вторая продолжает показывать оба типа, хотя физически свободна только одна кровать. Когда администратор вручную выбирает нижнюю для первой брони, продажа LOW на второй площадке уже может состояться.
Исправление требует правила потребления остатка. Общая категория должна либо быть виртуальной и сразу списывать конкретный дочерний тип по заданному приоритету, либо получать собственный выделенный лимит. Для малого объекта безопаснее выделенный лимит: например, отдать площадке без типов только верхние места или фиксированную квоту, а нижние продавать там, где условие сохраняется.
Не держите «страховой запас» в голове. Если одно место заблокировано для срочного переселения, оформите служебную блокировку с датами и причиной. Иначе следующая смена откроет его, посчитав забытым. Блокировка должна участвовать в остатке так же, как бронь, но не должна попадать в выручку и загрузку проданных мест.
Продажа комнаты целиком поверх продаж по койкам требует связанного ограничения. Бронь целой шестиместной комнаты должна закрыть все шесть физических кроватей на те же ночи; любая занятая койка должна закрыть предложение целой комнаты. TravelLine для одновременной продажи рекомендует создавать отдельные категории «Номер» и «Место в номере», но само наличие двух категорий ещё не гарантирует связь в каждой системе. Проверьте правило на пересекающихся датах до открытия канала.
Назначение места должно пережить перенос и продление
Назначайте физическую кровать не позже момента, когда гость получает гарантию типа. Если конкретный номер кровати не важен, система может отложить выбор внутри категории до подготовки комнаты. Но категория LOW уже должна быть зафиксирована в брони и вычтена из остатка сразу после подтверждения.
Перенос между кроватями допустим внутри одной продаваемой категории. Переселение с нижней на верхнюю меняет оплаченное условие. Сначала получите согласие гостя и пересчитайте стоимость по правилам объекта. Формулировка «все места одинаковые» после отдельной продажи нижней кровати не работает: ваш же прайс доказывает обратное.
Продление особенно часто ломает учёт. Гость занимает нижнее место с понедельника по среду и просит остаться до пятницы. Система должна проверить ту же физическую кровать на новые ночи и весь остаток категории. Если кровать занята с четверга, предложите переезд внутри LOW либо другой тип с явным перерасчётом. Нельзя продлевать бронь в общей строке комнаты, а потом разбирать конфликт утром.
Групповая бронь требует распределения до подтверждения, если заказчик выбрал сочетание типов. Запишите состав заказа как две нижние и три верхние, а не как пять мест с комментарием. Тогда частичная отмена вернёт в продажу правильный тип. При безымянном количестве система часто возвращает первый попавшийся остаток и искажает доступность.
После выезда освободите кровать только на следующую доступную ночь с учётом уборки и ремонта. Статусы «гость выехал», «кровать убрана» и «место открыто в продажу» обозначают разные события. В небольшом объекте их иногда объединяют, но тогда администратор должен понимать, какое действие реально меняет канал.
Подтверждение должно повторять выбранный тип
Гость должен увидеть один и тот же тип места в карточке, корзине, подтверждении, сообщении перед заездом и задании на заселение. Если площадка показывает «нижнее место», а письмо объекта говорит только «койко-место», человек обоснованно сомневается, сохранился ли выбор. Администратор получает лишний вопрос, хотя проблема создана не гостем, а разными шаблонами.
В подтверждение включите полное название продаваемой категории и количество мест каждого типа. Для заказа на семью пишите «два нижних и одно верхнее», а не «три места». Номер конкретной кровати можно не отправлять заранее: уборка или ремонт иногда требуют перестановки внутри той же категории. Но слово «нижнее» после оплаты исчезать не должно.
Самостоятельное заселение требует ещё более точной связи. Код доступа к комнате не объясняет, какую койку занять. Сообщение должно содержать внутренний номер кровати, понятную метку на раме и короткое описание пути, если стойка ночью закрыта. Метки на месте обязаны совпадать с шахматкой. Два номера для одной кровати, например старый на мебели и новый в программе, почти гарантируют ошибку в поздний заезд.
Не отправляйте будущему гостю фамилии или детали проживания соседей ради объяснения рассадки. Достаточно его комнаты и места. Служебная шахматка может показывать администратору занятость соседних кроватей, а гостевое сообщение содержит только данные его заказа.
Если гарантированный тип предоставить невозможно, сообщите об этом до заселения, предложите варианты и зафиксируйте выбор. Равноценной заменой для нижнего места будет другое нижнее место с теми же существенными условиями комнаты. Верхняя койка дешевле или физически неудобна для части гостей, поэтому односторонняя замена требует возврата разницы и может не решить ситуацию. Иногда честнее найти место у партнёра, чем убеждать человека, что уровень кровати ничего не значит.
Отзывы о шуме, лестнице и тесноте привязывайте к типу и физическому коду, а не только к комнате. Повторяющиеся жалобы на одну боковую кровать могут указывать на дверь, лампу или поток людей, а не на всю категорию. После перестановки мебели обновите свойства кровати, фотографии и сопоставление до открытия новых дат. Иначе система продолжит продавать старое описание нового места.
Шаблоны сообщений проверяйте той же контрольной бронью, что и остаток. Получите письмо и сообщение как гость, найдите в них тип и число мест, затем сверьте с заказом в шахматке. Если прямой канал сохраняет выбор, а площадка его стирает, используйте разные шаблоны: гарантированный для первого и нейтральный для второго. Нельзя дописывать гарантию в автоматическое сообщение только потому, что большинство гостей всё равно получает желаемое.
Новая цена не меняет уже проданное условие
Изменение тарифа действует на новые продажи, а подтверждённая бронь сохраняет цену и тип места, которые гость принял при оформлении. Если администратор поднял цену нижних мест к выходным, он не должен дописывать разницу к старой брони при заезде. Система хранит снимок тарифа в заказе, иначе восстановить расчёт после нескольких правок календаря невозможно.
Для каждой брони сохраняйте исходную категорию, цену за ночь, применённую скидку, источник, правило отмены и момент подтверждения. Текущий тариф нужен для следующего покупателя, а не для пересчёта прошлого. Особенно опасно хранить только итоговую сумму: при частичной отмене двух ночей администратор не увидит, сколько стоила каждая ночь и какая скидка к ней относилась.
Если гость сам меняет верхнее место на нижнее, оформите изменение заказа с новой строкой расчёта. Старая строка остаётся в истории, новая показывает доплату или возврат. Простое редактирование итоговой суммы стирает основание платежа и затрудняет разбор претензии. Бесплатное улучшение тоже фиксируют: цена может остаться прежней, но фактически предоставленный тип должен быть виден следующей смене.
При отмене возвращайте в доступность тот тип, который был зарезервирован, а не тот, на котором гость оказался после внутреннего перемещения без записи. Если физическую кровать заменили внутри LOW, наружный остаток не меняется. Если заменили LOW на UP, остатки обеих категорий должны измениться в одну операцию: нижнее возвращается, верхнее списывается. Две отдельные ручные правки легко разъедутся между каналами.
Ограничения тарифа тоже привязывают к категории. Минимальный срок, невозвратное условие и закрытие заезда могут отличаться у прямой продажи и площадки, но они не должны случайно объединять верх и низ. Яндекс Путешествия описывает основной тариф как набор условий, включая доступные категории. Поэтому проверяйте не только цифру цены, но и то, к какой категории прикреплён тариф после сопоставления.
Передача смены должна объяснять все ручные исключения. Запись «переселили» бесполезна; укажите прежний код кровати, новый код, даты, причину, согласие гостя и перерасчёт. Тогда утренняя смена не продаст освобождённое место задним числом и не потребует доплату второй раз. История действий нужна не для контроля сотрудников, а для восстановления правильного остатка после обычной человеческой ошибки.
Контрольная бронь показывает правду лучше настроек
Полную схему проверяют реальной контрольной бронью на дальнюю дату с последующей отменой. Скриншоты полей в экстранете недостаточны: название может отображаться верно, а обратно в систему управления вернётся общая категория без типа. Проверяйте весь круг обмена после первого подключения, после переименования категории и после смены менеджера каналов.
Проведите проверку в таком порядке:
- Запишите остаток верхних, нижних и боковых мест на выбранную ночь во внутренней системе.
- Откройте карточку объекта как гость, выберите конкретный тип и сверьте название, фото, цену и условия отмены.
- Создайте бронь на одно место и дождитесь её появления в шахматке без ручного ввода.
- Убедитесь, что уменьшился остаток только нужной категории на всех подключённых площадках.
- Отмените бронь, проверьте возврат того же типа и сохраните дату теста в таблице сопоставлений.
Если шаг 3 приносит только «место в общем номере», проблема находится до шахматки: канал или сопоставление потеряли признак. Если тип пришёл верно, но уменьшились два остатка, ошибка в связях категорий. Если после отмены вернулось другое место, система неверно хранит происхождение брони или правило распределения.
В Плацкарте шахматка комнат и кроватей устроена как план вагона, а единый фонд между площадками помогает держать один остаток; типы мест всё равно надо завести осмысленно, потому что программа не угадает коммерческое обещание владельца. Сначала дайте каждой кровати постоянный код, затем создайте только те категории, которые канал способен сохранить до возвращения брони.
Не открывайте все площадки сразу после настройки. Откройте одну категорию на одну дальнюю ночь, пройдите круг продажи и отмены, затем расширяйте календарь. Пять минут такой дисциплины отделяют рабочий учёт от таблицы, в которой нижние места дорожают только до первой онлайн-брони.
Частые вопросы
Нужно ли создавать отдельные категории для верхних и нижних мест?
Да, если гость выбирает тип до оплаты, цена различается или выбор гарантирован. Если это лишь пожелание без гарантии и без доплаты, можно оставить одну категорию, но так и написать в условиях.
Можно ли продавать все койки по одной цене?
Можно, если вы не обещаете конкретный уровень и фактический спрос не оправдывает разделение. Но одинаковая цена часто отдаёт более удобные нижние места без доплаты и оставляет администратору споры при распределении.
Как назвать нижнее место на площадке бронирования?
Пишите прямо: «Нижнее место в общем 6-местном номере». Добавьте режим комнаты, если он важен, например женский или мужской, и покажите именно эту кровать на фото.
Что делать, если площадка не различает верхние и нижние кровати?
Продавайте через неё общий пул по одной цене либо выделите ей безопасную квоту конкретного типа. Гарантированный выбор оставьте каналу, который передаёт категорию и возвращает её в бронь.
Чем койко-место отличается от дополнительного места?
Койко-место в хостеле продаётся как самостоятельная основная единица размещения. Дополнительное место добавляют к основному размещению в номере; подмена понятий искажает цену, вместимость и остаток.
Когда назначать гостю конкретную кровать?
Тип фиксируйте сразу при подтверждении брони. Конкретный номер кровати можно назначить позже внутри купленной категории, если это не меняет обещанные условия.
Как учитывать сломанную или закрытую кровать?
Поставьте служебную блокировку на конкретную кровать и нужные даты, чтобы она ушла из остатка своей категории. Комментарий или цвет ячейки не защищает от онлайн-продажи.
Как продлить проживание на том же нижнем месте?
Проверьте доступность этой кровати на новые ночи и остаток категории LOW. Если место занято, предложите другое нижнее либо согласуйте смену типа и перерасчёт.
Можно ли одновременно продавать комнату целиком и по местам?
Можно только при связанном остатке: продажа комнаты закрывает все её кровати, а любая бронь койки закрывает комнату целиком. Проверьте это контрольными бронями на пересекающиеся даты.
Как понять, что сопоставление с площадкой работает правильно?
Создайте контрольную бронь конкретного типа и проследите её до шахматки. Название типа должно вернуться в бронь, а остаток должен уменьшиться только у этой категории на всех каналах.