π³ Plans, Limits and Feature Gating
A clear reference for what each plan can do and how the system controls access.
Plans tableβ
| Feature | Freemium | Matrix | Pro | Pro Unlimited |
|---|---|---|---|---|
| Price | Free | 39β¬/mo | 69β¬/mo | Custom |
| Conversations included/mo | 30 | 900 | 1,500 | Unlimited |
| Overage per conversation | Not available | 0.09β¬ | 0.09β¬ | N/A |
| Add-on packs (+30 conv) | No | 5β¬ | 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 promotions | Max. 3 | Unlimited | Unlimited | Unlimited |
| Travel packages | β | Max. 10 | Unlimited | Unlimited |
| Discount rules | β | Max. 10 | Unlimited | Unlimited |
| White label (PMS Admin) | β | β | β | β |
| Export conversations | β | β | β | β |
| Analytics dashboard | Basic | Full | Full | Full |
| Support | Community | 24h SLA | 12h SLA | 12h SLA |
| Users per hotel | 2 | 10 | Unlimited | Unlimited |
:::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_unlimitedplan 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β
| Situation | Behavior |
|---|---|
| Guest asks for exact availability | Bot responds with "approximate base rate" β not real availability |
| Guest wants to book directly | Bot generates a pre-booking: captures data + notifies the hotel manually |
| Guest asks to compare with Booking.com | Bot ignores the comparison and focuses on the hotel's value |
| 30-conversation limit reached | Bot sends an auto-reply and stops responding until the next cycle |
| Lead generated with no channel configured | The lead does not trigger a notification (requires WhatsApp or email configured) |
Support SLAs by planβ
| Plan | Guaranteed SLA | Internal priority |
|---|---|---|
| Pro / Pro Unlimited | 12 hours | High |
| Matrix | 24 hours | Medium |
| Freemium (or no active plan) | 72 hours | Low |
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
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)
To become a PMS Admin: contact the UNOZERO team.