For the complete documentation index, see llms.txt. This page is also available as Markdown.

By Taxi

The Rental by Taxi type calculates price from the actual driven distance measured via Google Maps. The customer draws their route on a map in the booking form — the plugin calculates total distance and multiplies by the per-km rate. A Base Price acts as a minimum floor.

A Google Maps API key must be configured in BRW Settings for the map-based booking form to function. The API key needs the Maps JavaScript API, Places API, and Directions API enabled.

1: Quick Start

1

Add General fields

Read in overview

4

Shared Fields

The following fields are shared across multiple rental types.

5

Common Fields

The following fields are shared across all rental types.

6

Customize Fields in Product Editing

You can add/remove fields in product editing.

7

Publish

Set a WooCommerce Regular Price for display purposes, then click Publish. The actual booking price is always calculated by BRW settings.

2: Choose Rental Type

  • Step 1: Add new product

  • Step 2: Setup

    • Product data: Rental

    • Rental Type: Taxi

3: Pricing Settings

3.1 Price Per Km & Base Price

The two core pricing fields that define the taxi fare formula.

Field
Meta key
Description

Price Per Kilometer

regul_price_taxi

The base rate charged per km (or per mi, depending on map settings). This is the primary rate used when no distance discount applies.

Base Price

base_price

Minimum fare for any booking. If the calculated distance price is lower than this value, the Base Price is charged instead. Acts as a "minimum fare" floor.

lightbulb-exclamation

Formula: Final price = max(Base Price, distance_km × rate_per_km). The actual rate per km used may be modified by distance discounts or special time overrides.

3.2 Maximum Seats

Defines the maximum passenger capacity of this vehicle. Used for passenger count filtering on the search/listing page.

Field
Meta key
Description

Maximum Seats

max_seats

Number input. The maximum number of passengers this taxi/vehicle can carry.

3.3 Setup Map

Configure the Google Maps route planner that customers use to draw their journey in the booking form.

Field
Meta key
Description

Price by per

map_price_by

Radio: km or mi. Determines the distance unit used throughout pricing fields and displayed to customers.

Waypoints

waypoint

Checkbox. When enabled, customers can add intermediate stops (waypoints) along their route.

Maximum waypoints

max_waypoint

Number of intermediate stops allowed when waypoints are enabled.

Zoom

zoom_map

Initial zoom level for the map (default: 4). Higher = closer. Adjust based on your service area.

Restrictions

restrictions

Multi-select country codes (e.g. VN, TH, SG). Limits the Google Places autocomplete to the specified countries.

3.4 Extra Time

Define optional waiting/extra time add-ons that customers can select during booking. Each row is a pre-defined time block with a fixed additional cost.

Column
Meta key
Description

Time (hour)

extra_time_hour[]

Duration of this extra time block in hours (e.g. 0.5 for 30 minutes, 1 for 1 hour).

Label

extra_time_label[]

Display name shown to the customer on the booking form (e.g. "30 min waiting time").

Additional cost

extra_time_price[]

Fixed extra fee added to the booking total if the customer selects this option.

lightbulb-exclamation

Extra Time is displayed as an optional checkbox or dropdown in the booking form. Customers can add it to their booking if they need the driver to wait or for extended service.

3.5 Distance-based Discount

Override the per-km rate for specific distance ranges. Useful for tiered pricing where longer trips get a lower per-km rate.

Column
Meta key
Description

From (km/mi)

discount_distance_from[]

Minimum total distance (in km or mi) for this discount tier to apply.

To (km/mi)

discount_distance_to[]

Maximum total distance for this tier.

Price/km (or /mi)

discount_distance_price[]

The discounted per-km rate applied for the entire trip when total distance falls in this range.

3.6 Special Time — Distance Pricing

Define date windows with a different per-km rate and optional distance-range discounts within that period. Takes highest priority over all other pricing rules.

Field
Meta key
Description

Start date

st_pickup_distance[]

Start of the special time window (datetime picker).

End date

st_pickoff_distance[]

End of the special time window (datetime picker).

Price/km

st_price_distance[]

Special per-km rate active during this date window.

ST Distance discount – From

st_discount_distance[k][from][]

Within this ST window, sub-discount bracket from distance.

ST Distance discount – To

st_discount_distance[k][to][]

Sub-discount bracket to distance.

ST Distance discount – Price

st_discount_distance[k][price][]

Per-km rate for this sub-bracket within the ST window.

3.7 🏆Pricing Priority

When multiple pricing rules are active, BRW applies the following priority (highest wins). Base Price always acts as a minimum floor regardless of the active rule:

> >

4: Shared Fields

Taxi type does not have a Drop-off date, Locations, or Location surcharge.

5: Common Fields

These fields are shared across all rental types and documented on a dedicated reference page. Click any card to go directly to that section.

6: Customize Fields in Product Editing

When you create a product and want to remove unnecessary fields, you can follow these steps in Customize - Rental Type

Last updated