Skip to main content

GMC Booking for Joomla · Direct-booking engine, 0% commission

Direct accommodation booking

GMC Booking

Turn an accommodation site into a direct-booking channel: fewer portal fees, clear ownership, and a CMS workflow your team can actually run.

What is included

  • Accommodation enquiry and booking flow
  • 0% commission from the plugin
  • Stripe-friendly payment path

Booking Engine

€399/year

Choose GMC Tours or GMC Booking. Annual licence, updates and support included.

Buy Booking Engine

Direct Booking Pack

€699/year

GMC Tours + GMC Booking together for one annual direct-booking stack.

Direct Booking Pack

Docs

Docs and implementation notes

Use this page as the quick start: choose the engine, complete checkout, then send your CMS platform and preferred booking flow so delivery can be mapped cleanly.

FAQ

Everything included

94 real, shipping features — grouped by area, so you can see exactly how deep the booking engine goes.

Operating modes & setup

  • Two products in one — a single-property PMS and a multi-host marketplace share one codebase, switched by a single "operating mode" setting.
  • Single mode — rent out your own apartments/rooms directly at 0% commission, keeping the whole flow on your site.
  • Portal / marketplace mode — run an Airbnb-style site where external hosts list their properties and you earn a commission on every booking (default 10%).
  • Runs on your own brand and domain — no channel fees, no third-party booking platform in the loop.
  • Your currency — configurable default currency (EUR out of the box) with multi-currency amounts.
  • Adjustable hold window — set how long a guest keeps a hold while paying (default 15 minutes, 1–240).
  • One-package install — the package installs the component, scheduler, web-services and privacy plugins and the slider module together, and auto-creates the scheduled tasks.

Booking engine & anti-double-booking

  • Overbooking-proof availability lock — nights are reserved inside a database transaction with SELECT … FOR UPDATE, so two guests can never both book the last unit for the same dates.
  • Time-limited holds — a guest gets a short-lived hold while checking out; unpaid holds are released automatically and returned to the calendar.
  • Token-gated confirmation — a booking only confirms with its matching secret token and an unexpired hold, so nobody can confirm or view another guest's booking (no IDOR).
  • Quantity-based inventory — each unit (room type) carries a stock count, so you can sell several identical units.
  • Minimum-stay enforcement — bookings shorter than a date's minimum stay are refused with a clear message.
  • Party-size / occupancy enforcement — the form captures adults + children and refuses a booking that exceeds the unit's maximum occupancy.
  • Half-open date model[check-in, check-out), so the checkout night is correctly not counted as occupied.
  • Payment-after-expiry safety net — a charge that lands after a hold expired is flagged "needs reconciliation" for operator follow-up instead of being silently dropped.

Availability & calendar

  • Per-night availability calendar — open/close individual dates and set per-date price overrides and min-stay.
  • Bulk availability management — open date ranges and push prices/min-stay across many nights from the admin grid.
  • Guest-facing monthly calendar — the property page shows a free/occupied/past month grid per unit (no personal data), rendered server-side with AJAX month navigation and localized month/weekday names.
  • Always-fresh cross-channel availability — external channel feeds are re-downloaded on demand whenever availability is read (throttled, fail-open, single-flight), shrinking the cross-channel overbooking window from ~1 hour to seconds.

Pricing, rate plans & coupons

  • Seasonal rate plans — price by date range and weekday (per-day bitmask), with priority ordering when plans overlap.
  • Per-night price precedence — a specific date override beats a rate plan, which beats the unit base price.
  • Length-of-stay / flat-rate packages — a rate plan can price an exact number of nights as one flat total instead of per-night.
  • Discount coupons — percent or fixed amount, with validity window, minimum nights and usage cap; a coupon use is only consumed when a booking is actually confirmed.
  • Live quote — price and availability recompute live on the booking form as the guest picks dates.

Fees, taxes & extras

  • Per-property cleaning fee — a flat fee added once per booking.
  • Tourist tax / VAT — charged per guest per night, shown in the quote and at checkout.
  • Checkout extras & add-ons — sell add-ons scoped globally, per-host or per-property, priced per-stay, per-night or per-person, with quantity caps and admin CRUD.
  • Transparent breakdown — extras, fees and taxes are itemised as persisted booking line items; discounts apply to the room only.

Payments

  • Stripe card checkout — Stripe Payment Element with a signature-verified webhook as the source of truth (raw REST, no SDK).
  • PayPal checkout — PayPal Smart Buttons (Orders v2) for full-payment bookings.
  • Guest picks the provider — offer Stripe, PayPal, or both side by side at checkout.
  • Demo mode — a plain confirm button lets you test the whole flow before adding any payment keys.
  • Deposit / balance collection — charge a percentage deposit now and collect the balance later via a tokenized pay-link + reminder, automatic off-session charge, or offline.
  • Per-property deposit override — each property can override the global deposit percentage (or require full payment).
  • Refundable security / damage deposit — hold an amount on the guest's card near check-in, release it on a clean stay, or capture full/partial damages from the booking screen; long stays that outlast a card authorization are charged upfront and refunded.
  • Full and partial refunds — refund all or any part of a captured payment from the booking screen without cancelling; distributed across legs, capped at what's refundable, idempotent on retry.
  • Cancellation penalty — optionally withhold a non-refundable share on cancellation and allow a past-window guest cancel with the penalty kept.
  • Duplicate-charge protection — PaymentIntents are reused on reload and Stripe events are de-duplicated by id, so a page refresh or replayed webhook never double-charges or double-confirms.

Guest experience (front-end)

  • Property catalogue — a browsable list with thumbnails, amenity filter and search.
  • Property detail page — photo gallery, amenities, units, guest reviews and average rating.
  • Full self-service checkout — dates, guests, extras, consent and payment in one flow.
  • Pretty SEF URLs — human-readable id:alias property links.
  • Guest reviews — post-stay reviews (only from real completed bookings, one per booking), moderated by the admin, displayed with an average on the property page.
  • Opt-in guest self-cancellation — guests cancel their own confirmed booking inside a free-cancellation window, with an automatic refund.
  • Online pre-check-in — an opt-in tokenized form lets guests complete traveller details for every guest before arrival; the link rides the confirmation email.
  • Property slider — a responsive property carousel (Joomla module / WP [gmcbooking_slider] shortcode) with manual IDs, filters, ordering and a CTA.

Guest & admin communications

  • Booking confirmation emails — to both guest and admin on every confirmed booking.
  • Balance reminders — scheduled tokenized pay-link emails before the balance due date.
  • Post-stay review requests — a daily job invites recently-departed guests to review.
  • One-click resends — resend a confirmation or send a balance reminder from the booking screen.
  • WhatsApp payment link — deliver the hosted checkout link over the WhatsApp Business Cloud API (fail-closed until configured, with a per-booking cooldown).

Admin & operations

  • Dashboard KPIs — hosts, properties, units, bookings, confirmed and active holds, plus operational tiles (arrivals/departures today, month revenue, needs-reconciliation, unread messages, new leads).
  • Bookings-by-channel reporting — count and confirmed/completed revenue grouped by acquisition channel (web, referral, admin walk-in).
  • Properties management — CRUD with photo gallery, amenities and per-listing contact details (phone, email, website, WhatsApp).
  • Units management — CRUD for base price, quantity, max occupancy and iCal import URL.
  • Bookings management — detail view, cancel + refund (including multi-select), and reschedule to new dates/unit in one anti-overbooking transaction with the price difference auto-settled.
  • Phone / walk-in booking — create a booking on a guest's behalf from the admin.
  • Bookings CSV export — export the filtered bookings list.
  • Coupons, rate plans & reviews screens — full CRUD plus review moderation.

Marketplace (hosts, messaging, payouts)

  • Hosts management — admin CRUD over host profiles (alias, contact, address, logo, description).
  • Host self-service — host self-registration and a multi-tenant, host-scoped dashboard with KPIs and recent bookings (IDOR-guarded).
  • Guest ↔ host messaging — per-booking message threads with unread tracking and optional email notification (live on both Joomla and WordPress since 1.21.0).
  • Stripe Connect payouts — Express onboarding/KYC and a destination-charge split (host share + your application fee) recorded in a payout ledger.
  • KYC status visibility — pending / restricted / rejected / verified states surfaced to admins and hosts instead of hidden.
  • Refund clawback reconciliation — refunds reverse the host transfer and application fee and reconcile the payout ledger so a refunded booking is never paid out.
  • Configurable commission — fixed amount or percentage, set globally or per host.
  • Host authorization contracts — trilingual host/intermediation agreements with disclaimer acceptance, document fingerprinting, signer/IP/timestamp audit and a publication gate that blocks selling until signed.
  • Qualified e-signature — AutoFirma/CAdES document binding with configurable trusted-CA validation and optional RFC-3161 timestamping and OCSP revocation checks.

Compliance, privacy & GDPR

  • Consent capture — terms + privacy checkboxes and an optional marketing opt-in at checkout, stored per booking with timestamp and IP.
  • Guest compliance registry — a traveller registry with search and CSV export (UTF-8 BOM for correct accents).
  • Spanish SES.Hospedajes data model — the full RD 933/2021 traveller field set (sex, document support number, address + country, phone, email, kinship for minors, postal code, municipality).
  • SES.Hospedajes export — generate the official "parte de viajeros" file (MIR-HOSPE v3.1.2 solicitud XML + ZIP + Base64) for a date range, with pre-flight validation and per-property establishment codes; a backend download only — it never contacts the government web service.
  • Privacy export & erasure — data-subject export and anonymization that removes identity while retaining the accounting records you must legally keep (Joomla privacy plugin / WP personal-data tools).

Channel sync (iCal)

  • iCal export — each unit publishes its busy dates (confirmed bookings + active holds) as an .ics feed for Airbnb/Booking.
  • iCal import — external channel feeds are imported hourly and on demand to block externally-booked dates.
  • Two-way date-level sync — keeps calendars aligned across channels (dates, not rates).

Integrations, connector & analytics

  • Vokira WhatsApp concierge routing — when configured, public booking forms are replaced by a WhatsApp concierge call-to-action and direct holds are blocked server-side.
  • Inbound connector API — external tourism sites can push leads and catalog (properties, units, rate plans) into the system; catalog always lands as drafts.
  • Native import + audit trail — full-fidelity catalog import (upsert by alias, soft-disable removed units) with every import run recorded as a batch of per-item refs and outcomes.
  • Affiliate referral reporting — paid bookings that arrived via a ?ref= link are reported to a central registry over an HMAC-signed API, fail-safe so it never blocks or delays a sale.
  • Analytics — GA4, Google Tag Manager and Meta Pixel with view_item / begin_checkout / purchase e-commerce events and no personal data in the payloads.

Developer / API & automation

  • Web-services API — a fail-closed inbound API (Joomla web-services plugin / WP REST) for the connector's ping, leads and catalog endpoints.
  • Scoped API keys — issue and rotate hashed, scope-limited connector keys; the plaintext is shown only once.
  • Scheduled automation — background routines for releasing expired holds, iCal sync, Stripe Connect sync and balance reminders, auto-created on install (Joomla scheduler / WP-Cron).

Internationalization

  • Multilingual out of the box — ships in English, Italian and Spanish and respects your site's multilingual setup (the WordPress build also carries Hindi and Simplified Chinese packs).

Trust & licensing

  • GPLv2 licensed — open-source license on both platforms.
  • Self-hosted — runs entirely on your own site with your own Stripe/PayPal credentials; your data stays on your server.
  • No mandatory external service — every advanced integration (Stripe, PayPal, Connect, Vokira, iCal, affiliate, analytics) is opt-in; the engine works without any of them.
  • Licensed one-click updates — a Download Key from your licence email unlocks automatic updates from the GMC / FuerteventuraTV update server (checked about every 24 hours).
  • Single-package integrity — install the one package zip and every component/plugin/module stays version-aligned.
  • Native on both CMSs — a native Joomla 5/6 component and a standalone WordPress plugin sharing the same engine — buy the one that matches your site.
  • Requirements — Joomla 5.0+/6 with PHP 8.1+ and MySQL 8 / MariaDB (InnoDB, required for the transactional hold); WordPress 6.0+ with PHP 8.1+.

Joomla & WordPress

  • Joomla — the full marketplace: Stripe Connect payouts, host self-registration and the multi-tenant host dashboard are all available.
  • WordPress — same core engine and feature parity for bookings, payments (direct-charge Stripe + PayPal, no Stripe Connect payouts), pricing, extras, deposits, reviews, iCal, compliance/SES, messaging, native import and analytics; hosts are operator-managed via admin CRUD (no host self-service frontend), and the plugin adds a branded admin theme.

FAQ

Is there any per-booking commission?
No. The plugin does not add a per-booking fee. Stripe fees remain Stripe fees.
Joomla or WordPress?
The licence can be delivered for the CMS version agreed after checkout.
Can I buy both systems?
Yes. Use Direct Booking Pack when you want tours and accommodation booking together.

marketing, hotels, web development

www.fuerteventuratv.net es tambien una agencia online especializada en excursiones, actividades y locaciones en Canarias.
Somos Intermediadores Turisticos oficiales por el Gobierno de Canarias, con identificadores I-0003278.1

Social


Copyright www.fuerteventuratv.net From 2011. All Rights Reserved.