Taxi Booking & Fare Calculator for WordPress documentation

Version 1.1.0 · Updated November 13, 2026

From install to your first quote takes about fifteen minutes. Questions? Contact support with your order number.

Requirements

  • WordPress 5.6 or newer (tested with WordPress 7.1), PHP 7.4 or newer.
  • Your server must be able to make outgoing HTTPS requests to Google and to www.webxdevelopments.com.
  • A Google Cloud project with billing turned on.

Install and activate

  1. Download taxi-reservation-1.1.0.zip from Account → Downloads.
  2. In WordPress, go to Plugins → Add New Plugin → Upload Plugin, choose the ZIP, click Install Now, then Activate. A Taxi Reservation menu appears.
  3. On this site, open Account → Licenses, click Show license key and copy it.
  4. In WordPress, go to Taxi Reservation → License & Updates, paste the key and click Activate / replace key.

License activated

Create a Google API key

  1. In the Google Cloud console, choose a project with billing enabled.
  2. Under APIs & Services → Library, enable Places API (New) and Routes API.
  3. Under Credentials, create an API key and restrict it:
    • Application restrictions: IP addresses. Add your web server's public IP address (your host can tell you).
    • API restrictions: Places API (New) and Routes API.

Don't use a website (HTTP referrer) restriction: the plugin calls Google from your server, so Google would refuse every request.

Settings

Go to Taxi Reservation → Settings.

Settings

SettingWhat it does
Google Maps API keyThe server key you created.
Currency and symbolShown on every fare.
Tax %Added to the fare subtotal and shown as its own line.
Driver allowanceDefault allowance, used when a car doesn't set its own.
Night charge and hoursExtra charge when the pickup time falls in the night window.
Default tollEstimated tolls added to each trip.
Minimum fareThe lowest fare any trip can cost.
Round-trip multiplierHow distance is charged for a return trip.
NotificationsEmail the customer, the admin, or both, for each booking.
TermsText shown under the fare.

Add your cars

Go to Taxi Reservation → Cars → Add New. Give the car a name and featured image, add gallery photos, then fill in Pricing:

Car pricing

  • Per-km price: charged for every kilometre after the base distance.
  • Base fare and Base km: the base fare covers the first base kilometres. For example, $6 for the first 3 km.
  • Minimum fare, Driver allowance, Night charge: leave empty to use the defaults from Settings.
  • Extra charges: any named flat charges, such as "Airport fee $15".

Example: a 27.3 km trip in a car with a $6 base fare for 3 km, $2.20 per km and a $15 airport fee, with 13% tax: $6 + (24.3 km × $2.20 = $53.46) + $15 = $74.46, plus $9.68 tax = $84.14.

Tour packages

Under Taxi Reservation → Packages, add fixed-price trips with a duration, vehicle type, inclusions and a day-by-day itinerary.

Put the booking form on your site

Add a shortcode to any page:

ShortcodeShows
[taxi_fare_calculator]Booking form and fare calculator
[taxi_fare_calculator title="Get a quote" car="12"]Same, with your own title and a car preselected (use the car's ID)
[taxi_cars columns="3"]Your cars and their rates
[taxi_packages columns="3"]Your tour packages

How customers book

  1. Type a pickup address and choose a suggestion, then the drop-off.
  2. Choose one-way or round trip, the date and time, and a car.
  3. Click Calculate Fare to see the distance, time and breakdown.
  4. Click Book This Trip, enter name, phone and email, and submit. They get a booking reference, and the emails go out.

A fare quote

Bookings

Taxi Reservation (the dashboard) shows your bookings with totals and revenue, and lists each booking with its reference, trip, car, fare and the customer's contact details. New bookings arrive as Pending; contact the customer by phone or email to confirm the trip.

REST API

RequestReturns
GET /wp-json/taxi/v1/carsPublished cars with their pricing
GET /wp-json/taxi/v1/packagesPublished tour packages
POST /wp-json/taxi/v1/estimate with car_id, pickup, drop, trip_typeA fare estimate. Pickup and drop can be addresses or lat,lng.

Rate limits

To protect your Google bill, each visitor (by IP address) can make up to 120 address searches and 60 place lookups per 10 minutes, 30 fare quotes per 10 minutes, and 5 bookings per hour. Change these with the taxi_reservation_rate_limit filter, or return 0 to turn one off:

add_filter( 'taxi_reservation_rate_limit', function ( $limit, $action ) {
    return 'booking' === $action ? 10 : $limit;
}, 10, 2 );

If your site is behind a proxy or CDN, use the taxi_reservation_rate_limit_ip filter to return the visitor's real IP from your proxy's trusted header.

Troubleshooting

"Google Maps rejected the request." The key is wrong, an API isn't enabled, billing is off, or the key has a website restriction. Use an IP address restriction instead.

"No driving route could be found." Google found no road route between the two places, for example across a sea. Check the addresses.

"Too many requests." A rate limit was reached. Wait ten minutes, or raise the limit with the filter above.

Emails don't arrive. WordPress needs a working mail setup. Install an SMTP plugin and send a test email.

Changelog

1.1.0

  • Google Places API (New) and Routes API, required for Google Cloud projects created since March 2025.
  • Per-visitor rate limits on address search, fare quotes and bookings.
  • License activation and one-click updates.
  • Renamed to Taxi Booking & Fare Calculator.

1.0.0

  • Initial release.