Flexatech Stay Suite Wordpress Plugin - Rating, Reviews, Demo & Download
Plugin Description
Flexatech Stay Suite is a professional room-reservation system for WordPress. It manages hotel rooms, rate plans with date-specific price and availability overrides, realtime availability computed straight from bookings (no stale caches), time-limited holds that prevent overbooking, coupons, and modern payment gateways with signature-verified, idempotent webhooks.
Every amount is stored and computed as integer cents, and the total charged is always re-computed on the server at checkout, so a tampered client payload can never lower the price.
Highlights
- Rooms as a custom post type with per-room inventory, capacity, deposit, and extras.
- Rate plans with priority, min/max stay, and per-date-range / day-of-week price rules.
- Realtime availability using half-open night semantics
[check_in, check_out), so same-day turnover (a guest checks out and another checks in the same day) works correctly. - Overbooking-safe holds: a time-limited hold reserves inventory during checkout and is swept automatically when it expires (WP-Cron).
- Coupons (percentage or fixed amount) with usage limits and expiry.
- Payment gateways: Offline / bank transfer (built in), plus Stripe and PayPal with sandbox/live modes and webhook verification. The charged amount always equals the server-computed total.
- Transactional emails for booking received (customer + admin), processing, completed, cancelled, and payment receipts, each toggleable with a custom subject.
- A modern React admin app for the dashboard, calendar, bookings, rate plans, coupons, and settings, backed by a versioned REST API (
flexatech-stay-suite/v1). - WP-CLI commands and full privacy exporter/eraser integration.
Storefront pages
Room browsing works with no setup: single room pages at /rooms/{slug}/, the room archive at /rooms/, and room-type and amenity archives all render inside your active theme automatically. Your theme’s own room templates take priority, and every plugin template can be overridden from a flexatech-stay-suite/ folder in your theme. Return false from the flexatech_stay_suite/frontend/use_default_templates filter to turn the automatic routing off.
For the cart and checkout steps, create a few pages under Pages Add New and paste one shortcode into each, then Publish:
- Cart (required):
[flexatech_hotel_cart] - Checkout (required):
[flexatech_hotel_checkout] - Booking Confirmation (required):
[flexatech_hotel_thankyou] - My Bookings (recommended):
[flexatech_hotel_account] - Book a Room (optional landing page):
[flexatech_hotel_search]and[flexatech_hotel_rooms]
The plugin finds these pages by scanning your published pages for each shortcode, so the titles and slugs are up to you. Put each flow shortcode on its own published page; if the same shortcode appears on more than one page, the first match is used. The Cart, Checkout, and Booking Confirmation pages are required because the flow redirects between them.
The three browsing shortcodes are also available as editor blocks: Room Search, Room List, and Single Room Booking.
Shortcode reference:
[flexatech_hotel_search]: date and guests search form. Optionalredirect="URL"sends results to another page.[flexatech_hotel_rooms]: grid of bookable rooms. Optionalper_page,columns, androom_type.[flexatech_hotel_room id="123"]: one room’s booking widget;iddefaults to the current room on a room page.[flexatech_hotel_cart],[flexatech_hotel_checkout],[flexatech_hotel_thankyou],[flexatech_hotel_account]: the cart, checkout, confirmation, and account screens.
The “Storefront pages” steps above are the full setup walkthrough; the FAQ below covers the common questions.
External services
This plugin can connect to Stripe and PayPal to take online payments for bookings. Both integrations are optional: the plugin only contacts them if the site owner enables that gateway in Settings Payments with their own API keys and a guest actually selects it at checkout. The built-in Offline / bank-transfer gateway makes no external calls.
Card numbers are never sent to or stored on your server. Stripe collects card details in the browser (via Stripe.js) and your site only handles the resulting PaymentIntent id and client secret.
Stripe
Stripe processes credit-card payments when the Stripe gateway is enabled and a guest chooses to pay by card. Your site sends requests to the Stripe API (https://api.stripe.com) in these cases:
- When a guest starts a card payment at checkout, the plugin creates a PaymentIntent. It sends the charge amount (in the smallest currency unit), the currency, and the booking order id and order code as metadata.
- When you issue a refund, the plugin sends the PaymentIntent reference and the refund amount.
- Stripe also sends webhook notifications back to your site to confirm payment; the plugin only verifies the request signature against your webhook secret and does not send data to Stripe in response.
Your Stripe secret key is sent in the request authorization header so Stripe can authenticate the call.
Stripe’s terms and privacy policy: https://stripe.com/legal/ssa and https://stripe.com/privacy
PayPal
PayPal processes payments when the PayPal gateway is enabled and a guest chooses to pay with PayPal. Depending on sandbox or live mode, your site sends requests to https://api-m.sandbox.paypal.com or https://api-m.paypal.com in these cases:
- To authenticate, the plugin exchanges your PayPal client id and client secret for an OAuth access token.
- When a guest starts a PayPal payment at checkout, the plugin creates a PayPal order, sending the amount, currency, and the booking order id and order code as the order reference.
- When you issue a refund, the plugin sends the capture reference and the refund amount and currency.
- PayPal also sends webhook notifications back to your site to confirm payment; the plugin verifies each notification by calling PayPal’s verify-webhook-signature endpoint with your webhook id before acting on it.
PayPal’s user agreement and privacy policy: https://www.paypal.com/us/legalhub/useragreement-full and https://www.paypal.com/us/legalhub/privacy-full
Screenshots
No screenshots provided

