Set up Javis Booking Pro for restaurants — from Setup Wizard to go-live
A step-by-step guide to building an online restaurant table booking system on WordPress: the 6-step Setup Wizard, Stripe/PayPal payments, seasonal pricing (Rate Calendar) and embedding the booking form. The flow follows the standards of Booking.com and Trip.com.
Prepare before installing the restaurant booking plugin
Before opening the Setup Wizard, make sure your WordPress environment is ready.
Minimum versions
- WordPress 5.8+ and PHP 7.0+
- Administrator access for the wizard & license
- Working email (an SMTP plugin is recommended)
Upload & activate
Plugins → Add New → Upload, pickjavis-bookingpro.zip.- Install Now, then Activate.
- It creates tables and opens 🧙 Setup Wizard.
Have these ready
- Name & email, timezone, currency.
- Opening hours / time slots.
- Payment API keys (if charging online).
Setup Wizard — 6 steps
The 🧙 Setup Wizard walks you through 6 screens. You can Skip and adjust later in ⚙️ Settings.
Welcome
Welcome screen. Click Get started to continue.
Your business profile
Enter business name, email and pick 🍽️ Restaurant / Café. The type sets F&B presets.
Set up your schedule
Define opening hours and initial time slots — the basis for real-time availability.
Payment options
Toggle Stripe, PayPal, Square, Razorpay, OnePay. API keys are configured later in ⚙️ Settings → 💳 Payments.
Activate your license
Enter the license key. A free tier (email confirmations · cash · no expiry) is available; upgrade later in 🔑 License.
Done 🎉
The Setup Complete screen confirms the basics. Move to the detailed config below.
Tables, resources & services — restaurant capacity
Branches / venues
Declare one or many venues; each has its own hours, tables and services — ideal for chains.
Seating time slots
Create slots per weekday (lunch/dinner). Booking only when seats remain — no overbooking.
Tables & floor plan
Declare tables by capacity, assign floors/rooms. Tables auto-lock at confirmed/seated.
Services / set menus
Create services or set menus with a price. Choose fixed or per-person — great for buffets.
Rate Calendar — date pricing
Price by season, weekend, holiday: adjust %, +amount or absolute; priority holiday › season › weekend.
Custom fields
Add custom fields (allergies, occasion…) per step, multilingual, required or not.
Pricing, tax & online payments
Open ⚙️ Settings and configure these tabs in order:
| Settings tab | What you configure |
|---|---|
| 🧾 Tax & Pricing | Currency, tax (VAT), service charge. 3 modes: tax-exclusive, tax-inclusive, “++”. |
| 💳 Payments | Enter API keys for Stripe / PayPal / Square / Razorpay / OnePay; full, deposit, or pay-at-venue. |
| 🎟️ Discounts | Discount codes by %, amount, minimum spend, usage limits. |
| 👥 Guest Groups | Per-group pricing (adult / child / infant) as % of adult price. |
Customize & embed the booking form
Form look
Brand colours, package style (grid/list/pill), service position, calendar. Text & cards stay readable on any background.
Booking rules
Max party size, cut-off, auto-confirm, form language, currency switcher.
Content & messages
Edit field labels and messages (success, error, reminders) — multilingual.
Embed with a shortcode
Create a page (e.g. “Book a table”) and paste the main shortcode:
[rbp_booking_form] or set branch & language: [rbp_booking_form restaurant_id="1" lang="en"]
Notifications, email & multi-language
Email & reminders
Enable confirmation, reminder-before-time, cancellation emails. Set sender & timing.
Multilingual templates
Edit email content per language. The system remembers the customer’s language even for reminders sent days later.
Send log
Track which emails were sent, to whom, and their status.
Daily operations — manage bookings
Booking status flow (auto-locks tables & sends emails at each step):
Bookings dashboard
View, filter, change status, see custom fields, edit/cancel.
Door check-in
Scan the guest’s QR code to confirm arrival — fast like a hotel.
Waiting list
When full, collect guests on a waitlist and process them when a table frees up.
Invoices
Create & send invoices for paid bookings — stored for accounting.
Customers, loyalty & marketing
Customer CRM
Customer profiles: history, spend, contacts — nurture repeat guests.
Loyalty points
Reward loyal guests with points to boost return visits.
Campaigns
Send offers to customer segments (birthdays, holidays…).
Funnel analytics
See where guests drop off in the form to improve conversion.
Embed on your site & go-live checklist
| Shortcode | Use it on the page |
|---|---|
[rbp_booking_form] | Main Book a table page (multi-step form) |
[rbp_booking_lookup] | Customer look-up / manage booking |
[rbp_booking_confirmation] | Confirmation page after booking |
[rbp_availability_calendar] | Show the availability calendar |
[rbp_lang_switcher] · [rbp_currency_switcher] | Language / currency switchers |
[rbp_table_layout] · [rbp_resource_allocation] | Show table layout / resource allocation |
Go-live checklist
- Complete all 6 Setup Wizard steps
- Define Time Slots & tables to real capacity
- Configure Tax & Pricing + (if online) Payments API keys
- Place a real test booking → confirmation email arrives
- Verify pending → confirmed → seated → completed
- If multi-language/currency: test each one
- Embed
[rbp_booking_form]& publish
Setup FAQ for the restaurant booking plugin
Do I have to charge online?
No. You can just hold the table and pay at the venue (free tier: cash + email). Enable gateways anytime in ⚙️ Settings → 💳 Payments.
How do I set weekend & holiday prices?
Use 💲 Rate Calendar: rules by weekend, date range (season) or specific holiday — adjust by % / +amount / absolute, like Booking.com/Trip.com.
Does the form support multiple languages?
Yes. Languages in 📋 Bookings, content in 📧 Email Templates. It remembers the customer’s language for emails.
Can I manage multiple venues?
Yes. Define them in 🏪 Branches; each has its own tables, hours and services. Pass restaurant_id when embedding.
What happens after a booking is made?
Status moves pending → confirmed → seated → completed; tables auto-lock and emails go out. Fast check-in via 📱 QR Scanner.