Skip to main content

πŸ’³ Plans, Limits and Feature Gating

A clear reference for what each plan can do and how the system controls access.

Plans table​

FeatureFreemiumMatrixProPro Unlimited
PriceFree39€/mo69€/moCustom
Conversations included/mo309001,500Unlimited
Overage per conversationNot available0.09€0.09€N/A
Add-on packs (+30 conv)No5€5€N/A
Web Chat channel (widget)βœ…βœ…βœ…βœ…
WhatsApp Business channelβŒβœ…βœ…βœ…
Instagram / Facebook channelβŒβœ…βœ…βœ…
Google Calendar syncβŒβœ…βœ…βœ…
Real-time availability (PMS)βŒβœ…βœ…βœ…
Direct booking via chatβŒβœ…βœ…βœ…
OTA price comparisonβŒβŒβœ…βœ…
Hotel chainsβŒβŒβœ…βœ…
Active promotionsMax. 3UnlimitedUnlimitedUnlimited
Travel packages❌Max. 10UnlimitedUnlimited
Discount rules❌Max. 10UnlimitedUnlimited
White label (PMS Admin)βŒβœ…βœ…βœ…
Export conversationsβœ…βœ…βœ…βœ…
Analytics dashboardBasicFullFullFull
SupportCommunity24h SLA12h SLA12h SLA
Users per hotel210UnlimitedUnlimited

:::info Plan codes The marketing names are Freemium / Matrix / Pro / Pro Unlimited. In the system (database and API) they correspond to the codes free, matrix, pro and pro_unlimited. The pro_unlimited plan removes the conversation counter and does not generate overage charges. :::

How limit control works (Feature Gating)​

The system controls access to features by plan_code in real time. The logic lives in the backend (subscriptions + conversation_counters).

Conversation flow with limit​

User starts a conversation
↓
Backend: is conversation_counter >= conversations_limit?
β”œβ”€β”€ NO β†’ Conversation allowed, increment counter
└── YES β†’ Bot sends auto-reply: "Limit reached"
System records overage_conversations
Sends warning_email_sent_at (if not yet sent)

How a "conversation" is counted​

  • A chat session counts as 1 conversation when it starts
  • The session has a 24-hour window β€” messages within the same day = 1 conversation
  • If the guest returns the next day, it is a new conversation

Counter reset​

  • The counter resets automatically every 30 days from billing_cycle_start_date
  • For add-on packs (+30 conv for 5€), the limit increases immediately after payment
  • On the pro_unlimited plan there is no active counter β€” conversations are unlimited

Feature gating β€” what the user sees depending on the plan​

If they try to access a blocked feature​

  • A banner or modal appears with the message: "This feature requires the [Matrix/Pro] plan. Upgrade your plan to access it."
  • Direct CTA: "View plans" β†’ redirects to the Billing section
  • A technical error is never shown to the end user

Features blocked on Freemium β€” bot behavior​

SituationBehavior
Guest asks for exact availabilityBot responds with "approximate base rate" β€” not real availability
Guest wants to book directlyBot generates a pre-booking: captures data + notifies the hotel manually
Guest asks to compare with Booking.comBot ignores the comparison and focuses on the hotel's value
30-conversation limit reachedBot sends an auto-reply and stops responding until the next cycle
Lead generated with no channel configuredThe lead does not trigger a notification (requires WhatsApp or email configured)

Support SLAs by plan​

PlanGuaranteed SLAInternal priority
Pro / Pro Unlimited12 hoursHigh
Matrix24 hoursMedium
Freemium (or no active plan)72 hoursLow

Billing cycle (Stripe Connect)​

Sign-up on Matrix/Pro plan
↓
Stripe creates a monthly subscription (stripe_subscription_id)
↓
Automatic payment every 30 days
↓
If payment fails β†’ Hotel drops to Freemium until resolved
↓
If conversations are exceeded β†’ Overage is billed automatically
↓
Invoice download available in Hotels β†’ [your hotel] β†’ Billing
warning

Payments in Colombia (PSE/Nequi) via Wompi are functionality planned for Phase 3 (not yet available on all plans). Currently only Stripe (international card) and Wompi for specific markets.

White label (PMS Admin)​

pms_admin users are resellers who can manage multiple hotels under their own brand:

  • They have their own admin panel with a list of referred hotels
  • They receive a commission per active hotel (configured in platform_commission_configs)
  • They can customize the chatbot branding for their clients
  • The hotelier sees the chatbot with the PMS Admin's brand, not HotelChatBook's
  • Custom subdomains available (e.g.: pms-lamaravilla.hotelchatbook.io)
tip

To become a PMS Admin: contact the UNOZERO team.