WP Manifestindependent plugin directory
manifest / ecommerce / hostelpro

Hostel PRO

Premium plugin for hostels, small hotels, or BnB

by Kiboko Labs · github.com/pimteam/hostelpro · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/pimteam/hostelpro/archive/refs/heads/main.zip

Readme

Hostel PRO

A comprehensive WordPress plugin for hostel and small hotel management with online booking capabilities.

Overview

Hostel PRO is a complete reservation system and website solution for hostels, B&Bs, and small hotels. Built as a WordPress plugin, it provides everything you need to manage rooms, accept online bookings, track payments, and synchronize with external booking platforms.

This project is now open source and available for everyone under the GPL v2 license.


Features

Room Management

  • Unlimited rooms - Create as many rooms as you need
  • Room types - Private rooms or dormitories (male/female/mixed)
  • Bathroom options - Ensuite or shared bathroom designation
  • Flexible pricing - Set prices per bed or per room
  • Extra beds - Configure additional beds with separate pricing
  • Child pricing - Special rates for children's beds
  • Whole dorm pricing - Offer entire dorm rooms at a discount

Online Bookings & Payments

  • PayPal integration - Accept payments via PayPal (IPN & PDT supported)
  • Stripe integration - Modern payment processing with Stripe
  • Manual booking mode - Accept bank transfers, checks, or payment on arrival
  • Multiple booking mode - Allow multiple rooms in a single session/payment
  • Advance payment - Configurable deposit percentage or fixed amount
  • Automatic cleanup - Remove unpaid pending bookings after specified hours

Booking Management

  • Searchable booking list - Filter by guest name, email, room, status, or booking ID
  • Past & upcoming bookings - Separate views for historical and future reservations
  • Payment tracking - Mark bookings as paid, track amounts due
  • Booking statuses - Active, pending, cancelled status management
  • Custom fields - Add unlimited custom fields to booking forms
  • Email notifications - Automated emails to guests and administrators

Customizable Booking Form

  • Shortcode-based - Easy embedding anywhere on your site
  • Visual editor support - Rearrange fields in WordPress editor
  • Custom fields - Text, textarea, dropdown, checkbox, file upload fields
  • Required fields - Mark fields as mandatory
  • CSS customization - Full control over form appearance
  • Responsive design - Mobile-friendly booking experience

Availability & Calendar

  • Set unavailable dates - Block dates when property is closed
  • Room-specific unavailability - Schedule maintenance without closing entire property
  • Room calendars - Visual calendar showing availability for each room
  • Multiple calendar views - Overview calendar for all rooms
  • Date picker - jQuery UI datepicker with localization support
  • Min/max stay - Set minimum and maximum stay requirements

Discounts & Surcharges

  • Date-based pricing - Different prices for specific date ranges
  • Weekday pricing - Set different prices for days of the week
  • Length of stay discounts - Discounts based on number of nights
  • Coupon codes - Distribute discount codes to guests
  • Seasonal pricing - Perfect for high/low season rate changes
  • Minimum price discounts - Automatic discounts when booking total reaches threshold
  • Partial occupancy pricing - Discounted rates for partially booked private rooms

Addon Services

  • Unlimited addons - Bike rentals, meals, extra beds, linen, etc.
  • Per-person pricing - Charge addons per guest
  • Per-day pricing - Charge addons per night
  • Room-specific addons - Different services for different rooms
  • Maximum availability - Limit quantity of each addon
  • Automatic application - Addons automatically calculated in total

Reports & Analytics

  • Earnings reports - View income by date range
  • Room occupancy - See which rooms are most popular
  • Room type profitability - Compare earnings by room type
  • Charts & graphs - Visual representation of data
  • Export capabilities - Download reports for external analysis

Synchronization

  • iCal export - Each room provides .ics calendar URL
  • iCal import - Import bookings from external calendars
  • Multiple import URLs - Sync with multiple booking platforms per room
  • Booking.com support - Import/export via iCal
  • Airbnb support - Two-way synchronization
  • Expedia/Hotels.com - Import bookings (requires iCal URL from Expedia)
  • TripAdvisor - Sync availability calendar

Security Features

  • SQL injection protection - All queries use prepared statements
  • CSRF protection - Nonce verification on all forms
  • XSS prevention - Output escaping throughout
  • Capability checks - Role-based access control
  • Input validation - Strict validation on all user inputs
  • Direct file access protection - All files protected against direct access

User Roles & Permissions (Ensuite Module)

  • Staff management - Create records for all staff members
  • Custom roles - Define roles beyond default housekeeper/receptionist
  • Room cleaning schedule - Automatic or manual cleaning assignments
  • Expense tracking - Track expenses per room or globally
  • Access control - Fine-tune permissions for different user roles

Communication (Ensuite Module)

  • Thank-you notices - Automated messages after guest departure
  • Email reminders - Reminders for upcoming bookings
  • Customizable templates - Edit email content and subject lines
  • Email logging - Track all sent emails with status

Internationalization

  • Translation ready - Full gettext support
  • Language files - Included .pot file for translations
  • Date/time localization - Respects WordPress locale settings
  • Currency options - USD, EUR, GBP, JPY, INR, and custom

Installation

Requirements

  • WordPress 5.0 or higher
  • PHP 7.0 or higher
  • MySQL 5.6 or higher
  • cURL extension (for payment processing and iCal sync)
  • OpenSSL extension (for secure connections)

Standard Installation

  1. Download the plugin

    git clone https://github.com/your-org/hostelpro.git
  2. Upload to WordPress

    • Copy the hostelpro folder to /wp-content/plugins/
    • Or use WordPress admin: Plugins → Add New → Upload Plugin
  3. Activate the plugin

    • Go to WordPress admin → Plugins
    • Find "Hostel PRO" and click "Activate"
  4. Run installation

    • The plugin will automatically create required database tables on activation

Manual Installation

# Navigate to your WordPress plugins directory
cd /path/to/wordpress/wp-content/plugins/

# Clone the repository
git clone https://github.com/your-org/hostelpro.git

# Set proper permissions
chown -R www-data:www-data hostelpro/
chmod -R 755 hostelpro/

Quick Start Guide

Get your hostel booking system running in minutes:

Step 1: Basic Configuration

  1. Navigate to Hostel PRO → Settings in WordPress admin
  2. Set your currency
  3. Configure booking mode (PayPal, Stripe, or manual)
  4. Set up PayPal/Stripe credentials if using online payments
  5. Configure sender email and name for notifications

Step 2: Create Rooms

  1. Go to Hostel PRO → Manage Rooms
  2. Click "Add Room"
  3. Enter room details:
    • Title (e.g., "4-Bed Mixed Dorm")
    • Type (Private or Dorm)
    • Number of beds
    • Bathroom type (Ensuite/Shared)
    • Price per night
  4. Add description and photos via WordPress editor
  5. Save and repeat for all rooms

Step 3: Configure Booking Form

  1. Go to Hostel PRO → Booking Form
  2. Add custom fields if needed (special requests, arrival time, etc.)
  3. Arrange field order using drag & drop
  4. Note the shortcode: [hostelpro-booking]

Step 4: Publish Booking Form

Create a page and add the shortcode:

[hostelpro-booking]

Or use the room list with availability:

[hostelpro-list show_titles="1" show_descriptions="1"]

Step 5: Set Unavailable Dates

  1. Go to Hostel PRO → Unavailable Dates
  2. Select dates when your property is closed
  3. Mark specific rooms as unavailable for maintenance
  4. Save changes

Step 6: Configure Discounts (Optional)

  1. Go to Hostel PRO → Discounts & Surcharges
  2. Add seasonal pricing rules
  3. Create coupon codes for promotions
  4. Set weekday/weekend pricing differences

Step 7: Test Booking

  1. Visit your booking page as a customer
  2. Select dates and room
  3. Complete the booking form
  4. Verify email notifications are received
  5. Check booking appears in admin panel

You're ready to accept guests! 🎉


Shortcodes Reference

Main Shortcodes

Shortcode Description
[hostelpro-booking] Display booking form
[hostelpro-list] List all rooms with availability
[hostelpro-book room_id="1"] Book button for specific room
[hostelpro-calendar room_id="1"] Room availability calendar
[hostelpro-calendar-overview] Overview calendar for all rooms

Form Shortcodes

Shortcode Description
[hostelpro-form-start] Begin custom form
[hostelpro-form-end] End custom form
[hostelpro-field-static room_id] Room selection dropdown
[hostelpro-field-static beds] Number of beds selector
[hostelpro-field-static from_date] Arrival date picker
[hostelpro-field-static to_date] Departure date picker
[hostelpro-field-static contact_name] Guest name field
[hostelpro-field-static contact_email] Guest email field
[hostelpro-field field_id="1"] Custom field by ID
[hostelpro-submit-button] Submit button

Conditional Shortcodes

Shortcode Description
[hostelpro-if-extra-beds]Content[/hostelpro-if-extra-beds] Show if room has extra beds
[hostelpro-if-beds]Content[/hostelpro-if-beds] Show bed selection info
[hostelpro-room-addons] Display room addons
[hostelpro-room-description] Display room description

Example: Custom Booking Form

[hostelpro-form-start]
<h3>Book Your Stay</h3>
[hostelpro-field-static room_id]
[hostelpro-field-static from_date]
[hostelpro-field-static to_date]
[hostelpro-field-static beds]
[hostelpro-field-static contact_name]
[hostelpro-field-static contact_email]
[hostelpro-field-static contact_phone]
[hostelpro-field field_id="1"] <!-- Custom field -->
[hostelpro-submit-button "Reserve Now"]
[hostelpro-form-end]

🔄 Synchronization Guide

Export Calendar (Outbound)

Each room generates an iCal URL for external services:

https://yoursite.com/?hostelpro_ical=1&room_id=ROOM_ID

For download:

https://yoursite.com/?hostelpro_ical=1&room_id=ROOM_ID&download=1

Import Calendar (Inbound)

  1. Go to Hostel PRO → Manage Rooms
  2. Edit the room you want to sync
  3. Find "iCal Import URL" field
  4. Paste the external calendar URL
  5. Save changes

The plugin will automatically import bookings from the external calendar.

Supported Services

Service Import Export Notes
Booking.com See Export Calendar section in Booking.com extranet
Airbnb Full two-way sync supported
Expedia ⚠️ Requires iCal URL from Expedia (hotel owners only)
Hotels.com ⚠️ Via Expedia integration
TripAdvisor Use iCal URL from extranet
VRBO iCal synchronization supported

Note: iCal sync typically updates every few hours. For real-time availability, consider channel manager solutions.


Configuration Options

General Settings

Option Description Default
Currency Payment currency (USD, EUR, GBP, etc.) USD
Booking Mode PayPal, Stripe, or Manual Manual
PayPal Email Your PayPal account email -
Stripe Keys Public and Secret keys -
Advance Payment Percentage or fixed amount 100%
Min Stay Minimum nights required 1
Max Stay Maximum nights allowed Unlimited
Max Date How far ahead can book 1 year
Cleanup Hours Remove unpaid bookings after 24

Email Settings

Option Description
Sender Name Name in outgoing emails
Sender Email Email address for notifications
Admin Email Receive booking notifications
Email Templates Customize guest and admin emails

Read the full README on GitHub →