Title: MagePeople Shuttle Booking – Airport Shuttle, Transfer &amp; Route Booking for WooCommerce
Author: magepeopleteam
Published: <strong>August 13, 2026</strong>
Last modified: September 29, 2026

---

Search plugins

![](https://ps.w.org/magepeople-shuttle-booking/assets/banner-772x250.jpeg?rev=3644130)

![](https://ps.w.org/magepeople-shuttle-booking/assets/icon-128x128.jpeg?rev=3644130)

# MagePeople Shuttle Booking – Airport Shuttle, Transfer & Route Booking for WooCommerce

 By [magepeopleteam](https://profiles.wordpress.org/magepeopleteam/)

[Download](https://downloads.wordpress.org/plugin/magepeople-shuttle-booking.1.3.1.zip)

 * [Details](https://vec.wordpress.org/plugins/magepeople-shuttle-booking/#description)
 * [Reviews](https://vec.wordpress.org/plugins/magepeople-shuttle-booking/#reviews)
 *  [Installation](https://vec.wordpress.org/plugins/magepeople-shuttle-booking/#installation)
 * [Development](https://vec.wordpress.org/plugins/magepeople-shuttle-booking/#developers)

 [Support](https://wordpress.org/support/plugin/magepeople-shuttle-booking/)

## Description

**MagePeople Shuttle Booking** turns any WordPress + WooCommerce site into a complete
shuttle booking and transportation reservation system. Build multi-stop routes, 
set stop-to-stop pricing, publish departure schedules, and let customers book airport
shuttles, hotel transfers, corporate shuttle rides and scheduled shuttle services
entirely online, with real WooCommerce checkout and real-time seat availability.

Whether you run an airport shuttle service, a hotel transfer desk, a corporate or
employee transport program, a tour or resort transfer operation, or a city-to-city
shuttle route, this plugin gives you a route builder, a live pricing matrix, a schedule
manager and a WooCommerce-powered checkout, without touching a line of code.

#### Try the live demo

**[Live demo: wpshuttlebooking.com](https://wpshuttlebooking.com/)** – a fully configured
shuttle booking website you can use right now. No signup, no install, nothing to
set up.

The demo runs this exact plugin with the same one-click demo data the importer installs,
so what you try there is what your own shuttle booking site will do after setup.
In the demo you can:

 * Search a live airport shuttle route and see that only the days the shuttle actually
   operates are selectable
 * Choose a pickup point and a drop-off point on a multi-stop route and watch the
   fare update per segment
 * Switch between one-way and round-trip booking and see the return departure time
   calculated automatically from the turnaround time
 * Check real-time seat availability, tracked separately for the outbound and return
   leg
 * Go through a complete WooCommerce checkout and end up with a real shuttle booking
   attached to a real order

If you are comparing shuttle booking, airport transfer or hotel transfer plugins
for WordPress, the demo is the fastest way to see the full booking flow before you
install anything.

#### Why choose MagePeople Shuttle Booking?

 * **Built on WooCommerce** – no separate payment system to learn. Every shuttle
   booking is a real WooCommerce order, so you keep every gateway, tax rule and 
   reporting tool you already use.
 * **True round-trip logic** – set a turnaround time once and the plugin calculates
   the return departure time from the forward journey’s arrival, then adds a correctly
   priced, correctly directed return leg to the cart.
 * **Direction-aware seat availability** – outbound and return seats are tracked
   independently, so a full outbound trip never blocks an available return trip 
   on the same route.
 * **Stop-to-stop pricing matrix** – price every valid origin  destination combination
   individually, with an automatic fallback to the one-way fare for the return direction.
 * **Guided route setup** – add stops in order, set the time offset and distance
   from the first stop, and the plugin works out arrival times, drop-off options
   and schedules for you.
 * **One-click professional demo data** – import or sync 30 ready-made U.S. services(
   ten Shared, ten Private and ten Airport) with one-way and round-trip routes, 
   fares, discounts, schedules, Travel Pass plans, location badges and local featured
   images.

#### Who is this plugin for?

 * Airport shuttle and airport transfer operators
 * Hotels and resorts offering guest shuttle or transfer services
 * Corporate and employee transport programs
 * Campus and staff shuttle services
 * Tour operators offering pickup and drop-off transfers
 * City-to-city and intercity shuttle route operators
 * Van, minibus and small coach transport businesses

#### How the booking flow works

 1. A visitor searches by route, picks a pickup point, a date (only days the shuttle
    runs are selectable), a time and the number of passengers.
 2. The plugin shows the correct drop-off stops and points for that route and direction,
    live seat availability and the fare.
 3. On a round-trip route, the customer can toggle between one-way and round-trip pricing
    before booking.
 4. The booking is added to the WooCommerce cart (round trip automatically adds the
    return leg) and checkout is handled entirely by WooCommerce.
 5. After checkout, a shuttle booking record is created and linked to the order, ready
    for you to manage.

#### Features

**Routes, stops & schedules**

 * Custom shuttle post type with route builder
 * Ordered, multi-stop route configuration
 * Time-offset and distance data per stop (from the first stop)
 * Pickup point and drop-off point support per stop
 * Schedule manager with multiple departure times per route
 * Per-route operating days (weekday availability)
 * Turnaround-time setting with automatically calculated return departure time

**Pricing**

 * Stop-to-stop pricing matrix for every valid route segment
 * Independent return-direction pricing with automatic one-way fallback
 * Live fare and subtotal display before checkout
 * Server-side price and availability re-validation on add-to-cart (never trusts
   the browser)

**Booking & availability**

 * Real-time, direction-aware seat availability per date, route and segment
 * Automatic calendar graying-out of fully booked dates, per direction
 * Round-trip booking with automatic return-leg cart handling
 * Standalone reverse-direction (return-only) booking support

**WooCommerce integration**

 * Every shuttle booking becomes a real WooCommerce order
 * Works with your existing payment gateways, taxes and order emails
 * Shuttle products are managed automatically, with no manual product setup

**Admin & management**

 * Modern 4-step shuttle editor (Basic Info  Route  Pricing  Schedule) with AJAX
   autosave
 * Searchable, filterable, paginated shuttle list with instant AJAX filtering
 * Bookings dashboard with shuttle, route and date filters
 * One-click booking status changes (processing, completed, pending, on-hold, cancelled,
   refunded, failed) with no page reload
 * CSV export of all bookings
 * One-click demo data importer to explore the plugin instantly
 * Built-in environment status page (WordPress, WooCommerce and PHP checks)

**Developer-friendly**

 * Translation-ready (all strings use the `magepeople-shuttle-booking` text domain)
 * Clean action and filter hooks for extending settings

#### Shortcodes

**Shuttle search form:** `[mpsb_shuttle_search]`

Displays the full booking search form (route, pickup point, date, time, passengers,
drop-off stop/point) and the trip-review screen that follows it. Travel Pass purchasing
appears inside this same form automatically once weekly or monthly pass pricing 
is configured. There is no separate pass shortcode.

Attributes:

 * `shuttle_id` – lock the form to a single shuttle (used automatically on a single
   shuttle page). This also removes the shuttle-type tab bar.
 * `target_page` – URL the search form should submit to.
 * `form_title` – heading text above the form (default: “Book a Shuttle”).
 * `form_subtitle` – supporting text under the heading.
 * `passes` – controls the Travel Pass tab. Default `auto` shows it whenever pass
   pricing is on; `no` hides it on this form only.
 * `disable` – comma-separated shuttle-type slugs to remove from the tab bar on 
   this form. Accepts `shared-city-shuttle`, `private-shuttle`, `airport-transfer`.

The shuttle-type tab bar (Shared City Shuttle / Private Shuttle / Airport Transfer)
builds itself from the types that currently have published routes. A type with no
routes never gets a tab, and if only one type qualifies the bar is skipped. `disable`
only affects that one form and does not unpublish routes elsewhere. No attribute
sets the default tab, renames a tab or reorders tabs.

Examples:

    ```
    [mpsb_shuttle_search shuttle_id="123"]
    [mpsb_shuttle_search disable="private-shuttle,airport-transfer"]
    [mpsb_shuttle_search passes="no"]
    ```

**Shuttle catalog / list:** `[mpsb_shuttle_list]`

Displays a responsive grid or list of published shuttles with a built-in Grid/List
toggle.

Attributes:

 * `columns` – number of grid columns (default 3)
 * `posts_per_page` – number of shuttles to show (default -1 for all)
 * `category` – filter by vehicle category slug (e.g. `van`)
 * `type` – filter by shuttle type slug (e.g. `airport`)
 * `stop` – filter by stop slug or stop ID
 * `orderby` – `date` (default), `title`, `menu_order`, `rand`, `modified` or `ID`
 * `order` – `ASC` or `DESC` (default `DESC`)
 * `ids` – comma-separated shuttle IDs to show, in that order
 * `exclude` – comma-separated shuttle IDs to leave out

Example: `[mpsb_shuttle_list columns="3" posts_per_page="6" category="luxury-van"]`

**Customer bookings dashboard:** `[mpsb_my_bookings]`

Shows the signed-in customer’s Upcoming, Past, Cancelled and All bookings plus any
travel passes. The tabs are automatic (the dashboard opens on the first tab that
has bookings) and are not configurable.

Attribute: `title` – heading above the dashboard (default: “My bookings”).

**Guest booking lookup:** `[mpsb_find_booking]`

Lets a guest look up a booking using its reference and booking email.

Attribute: `title` – heading above the form (default: “Find my booking”).

**Route map:** `[mpsb_route_map]`

Displays a map of one saved shuttle route.

Attributes:

 * `shuttle_id` – the shuttle whose route to map (defaults to the current shuttle
   on its own page)
 * `route_id` – which of that shuttle’s saved routes to display

Example: `[mpsb_route_map shuttle_id="123" route_id="your-route"]`

#### Developer hooks & filters

 * `do_action( 'mpsb_before_add_cart_btn' )` – fires immediately before the add-
   to-cart button, useful for injecting custom content into the booking form.
 * `apply_filters( 'mpsb_filter_settings', $pages )` – register additional settings
   pages or sections in the plugin’s settings framework.

The plugin also integrates through standard WooCommerce hooks (`woocommerce_add_to_cart`,`
woocommerce_checkout_order_processed`, `woocommerce_order_status_changed` and others)
so booking records always stay in sync with the linked WooCommerce order.

#### Requirements

 * WordPress 5.8 or higher
 * PHP 7.4 or higher
 * WooCommerce (required – shuttle tickets are sold through the WooCommerce cart
   and checkout)

### External services

This plugin can connect to the third-party services listed below. None of them require
an account with MagePeople, and the plugin never sends your customers’ personal 
details or booking data to any of them.

#### Google Fonts

Loads the “Inter” and “Plus Jakarta Sans” web fonts that style the shuttle search
form and shuttle list on the front end, and the Shuttle list and Shuttle edit screens
in wp-admin. The stylesheet is requested from https://fonts.googleapis.com/css2 
by the visitor’s or administrator’s own browser, so that browser’s IP address and
user agent reach Google. No booking, order or account data is sent.

Provided by Google: [Terms of Service](https://policies.google.com/terms), [Privacy Policy](https://policies.google.com/privacy).

#### OpenStreetMap map tiles

Used by the route map (the `[mpsb_route_map]` shortcode and the route-map editor
in wp-admin) to draw the map background. Map images are requested from https://{
s}.tile.openstreetmap.org by the browser displaying the map, which passes that browser’s
IP address and the coordinates being viewed to the OpenStreetMap tile servers. The
map library (Leaflet) ships with the plugin and is not loaded from a CDN. The tile
URL is configurable if you prefer a different tile provider.

Provided by the OpenStreetMap Foundation: [Tile Usage Policy](https://operations.osmfoundation.org/policies/tiles/),
[Privacy Policy](https://osmfoundation.org/wiki/Privacy_Policy).

#### Nominatim (OpenStreetMap place search)

Used only in wp-admin, and only when an administrator types a place name into the
route-map editor’s search box, to turn it into map coordinates. The typed search
text is sent from your server to https://nominatim.openstreetmap.org/search. Nothing
is sent unless an administrator actively searches, and the endpoint can be changed
with the `mpsb_nominatim_search_endpoint` filter.

Provided by the OpenStreetMap Foundation: [Nominatim Usage Policy](https://operations.osmfoundation.org/policies/nominatim/),
[Privacy Policy](https://osmfoundation.org/wiki/Privacy_Policy).

The plugin’s shared settings and field-rendering framework can also connect to the
following services, depending on which field types a configuration uses:

#### Google Maps JavaScript API

Used to render an interactive map preview for “Google Map” type settings fields.
When such a field is displayed with a preview enabled, the plugin loads https://
maps.googleapis.com/maps/api/js using the API key configured for that field, and
the browser’s request for that script (including the key) is sent to Google. No 
user location or personal data is transmitted by the plugin itself.

Provided by Google: [Maps Platform Terms of Service](https://cloud.google.com/maps-platform/terms),
[Privacy Policy](https://policies.google.com/privacy).

#### Google reCAPTCHA

Used to render a reCAPTCHA (v2 checkbox or v3) challenge for “Google reCAPTCHA” 
type settings fields, to help protect forms from spam. When displayed, the plugin
loads https://www.google.com/recaptcha/api.js using the site key configured for 
that field. Google’s script may collect information about the visitor’s browser 
and interactions to assess whether the visitor is human, per Google’s own reCAPTCHA
terms.

Provided by Google: [reCAPTCHA Terms](https://policies.google.com/terms), [Privacy Policy](https://policies.google.com/privacy).

#### Gravatar

Used by the “User select” settings field type to show a preview image next to each
selected WordPress user, via WordPress core’s `get_avatar_url()`. This requests 
an avatar image from Gravatar.com based on the selected user’s email address, as
WordPress core does by default for any user avatar.

Provided by Automattic: [Terms of Service](https://automattic.com/tos/), [Privacy Policy](https://automattic.com/privacy/).

#### Appneck

Used to collect some telemetry data upon your confirmation, to troubleshoot problems
faster and make product improvements. Appneck does not gather any data by default;
the SDK only starts gathering basic telemetry data when you allow it via the admin
notice.

Provided by Appneck: [Privacy Policy](https://appneck.com/privacy-policy/).

#### Payments

Checkout and payment processing, including any communication with gateways such 
as Stripe or PayPal, is handled entirely by WooCommerce and the gateway’s own plugin,
not by MagePeople Shuttle Booking. Refer to the documentation of WooCommerce and
your chosen gateway for details of what data they transmit.

#### 1.0.0

Initial release of MagePeople Shuttle Booking.

## Screenshots

[⌊Shuttle search form with route, pickup, date, time and passengers⌉⌊Shuttle search
form with route, pickup, date, time and passengers⌉[

Shuttle search form with route, pickup, date, time and passengers

[⌊Multi-stop route with per-segment fare⌉⌊Multi-stop route with per-segment fare⌉[

Multi-stop route with per-segment fare

[⌊One-way and round-trip toggle with automatic return time⌉⌊One-way and round-trip
toggle with automatic return time⌉[

One-way and round-trip toggle with automatic return time

[⌊4-step shuttle editor in wp-admin⌉⌊4-step shuttle editor in wp-admin⌉[

4-step shuttle editor in wp-admin

[⌊Stop-to-stop pricing matrix⌉⌊Stop-to-stop pricing matrix⌉[

Stop-to-stop pricing matrix

[⌊Bookings dashboard with filters and one-click status changes⌉⌊Bookings dashboard
with filters and one-click status changes⌉[

Bookings dashboard with filters and one-click status changes

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

[[

## Installation

 1. Make sure WooCommerce is installed and active.
 2. In your WordPress dashboard go to **Plugins  Add New** and search for “MagePeople
    Shuttle Booking”.
 3. Click **Install Now**, then **Activate**.
 4. Import the one-click demo data to explore the plugin, or create your first shuttle
    with the 4-step editor (Basic Info  Route  Pricing  Schedule).
 5. Add the `[mpsb_shuttle_search]` shortcode to any page to show the booking form.
 6. Optional: add `[mpsb_shuttle_list]`, `[mpsb_my_bookings]` and `[mpsb_find_booking]`
    to give customers a catalog, a bookings dashboard and a guest lookup.

You can also upload the plugin ZIP via **Plugins  Add New  Upload Plugin**, or unzip
it into `/wp-content/plugins/` and activate it from the Plugins screen.

## FAQ

### Does this plugin need WooCommerce?

Yes. Every shuttle booking is sold through the WooCommerce cart and checkout and
becomes a real WooCommerce order.

### Which payment methods are supported?

Any payment gateway that works with your WooCommerce store, such as Stripe or PayPal.
Payments, taxes and order emails are handled entirely by WooCommerce and your gateway
plugin.

### Can I set a different price for each stop-to-stop segment?

Yes. The pricing matrix lets you price every valid origin  destination combination
on a route. The return direction can have its own prices, or automatically fall 
back to the one-way fare.

### How do round trips work?

Set a turnaround time once. The plugin calculates the return departure time from
the outbound arrival and adds a correctly priced return leg to the cart when the
customer books round trip.

### Will a full outbound trip block the return trip?

No. Seat availability is tracked separately for each direction, so a sold-out outbound
trip never blocks an available return trip.

### Can I use it for airport transfers and hotel shuttles?

Yes. It is built for airport shuttles, hotel and resort transfers, corporate and
campus shuttles, tour transfers and city-to-city routes.

### Can I limit which days a shuttle runs?

Yes. Set operating days per route and add multiple departure times. Only days the
shuttle actually operates are selectable, and fully booked dates are grayed out 
per direction.

### Can guests check their booking without an account?

Yes. Use `[mpsb_find_booking]` so guests can look up a booking with its reference
and booking email.

### Can I show only one type of shuttle on a page?

Yes. Use the `disable` attribute of `[mpsb_shuttle_search]` to hide Shared City 
Shuttle, Private Shuttle or Airport Transfer tabs, or use `shuttle_id` to lock the
form to one shuttle.

### Can I export my bookings?

Yes. The bookings dashboard has a CSV export of all bookings, plus filters by shuttle,
route and date.

### Is the plugin translation-ready?

Yes. All strings use the `magepeople-shuttle-booking` text domain.

### Where can I try it before installing?

Visit the live demo at [wpshuttlebooking.com](https://wpshuttlebooking.com).

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“MagePeople Shuttle Booking – Airport Shuttle, Transfer & Route Booking for WooCommerce”
is open source software. The following people have contributed to this plugin.

Contributors

 *   [ magepeopleteam ](https://profiles.wordpress.org/magepeopleteam/)

[Translate “MagePeople Shuttle Booking – Airport Shuttle, Transfer & Route Booking for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/magepeople-shuttle-booking)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/magepeople-shuttle-booking/),
check out the [SVN repository](https://plugins.svn.wordpress.org/magepeople-shuttle-booking/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/magepeople-shuttle-booking/)
by [RSS](https://plugins.trac.wordpress.org/log/magepeople-shuttle-booking/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.3.1

 * New: added the Appneck SDK for opt-in telemetry and update tracking. It does 
   not collect any data by default; it only starts after you confirm via the admin
   notice. See External services in this readme.

#### 1.0.0

 * Initial release.

## Meta

 *  Version **1.3.1**
 *  Last updated **6 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.9 or higher **
 *  Tested up to **7.0.6**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/magepeople-shuttle-booking/)
 * Tags
 * [airport transfer](https://vec.wordpress.org/plugins/tags/airport-transfer/)[shuttle booking](https://vec.wordpress.org/plugins/tags/shuttle-booking/)
   [transport booking](https://vec.wordpress.org/plugins/tags/transport-booking/)
   [woocommerce booking](https://vec.wordpress.org/plugins/tags/woocommerce-booking/)
 *  [Advanced View](https://vec.wordpress.org/plugins/magepeople-shuttle-booking/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/magepeople-shuttle-booking/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/magepeople-shuttle-booking/reviews/)

## Contributors

 *   [ magepeopleteam ](https://profiles.wordpress.org/magepeopleteam/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/magepeople-shuttle-booking/)