> For the complete documentation index, see [llms.txt](https://ovatheme.gitbook.io/brw/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ovatheme.gitbook.io/brw/create-a-product/rental-type-config/by-transportation.md).

# By Transportation

<figure><img src="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FrJmyFyIgdOU5SpZrNgLd%2FScreenshot%202026-06-19%20at%2016.53.10.png?alt=media&amp;token=eab0fd8c-578b-412c-b579-7939c5159272" alt=""><figcaption></figcaption></figure>

The **Rental by Transportation** type has no per-day or per-km base rate. Instead, pricing is defined as a **route price matrix**: each combination of Pick-up location and Drop-off location has its own fixed price and estimated travel time. The customer selects their route and the system looks up the price automatically.

{% hint style="info" icon="lightbulb-exclamation" %}
Locations used in the price matrix must first be created in **BRW Settings → Locations**. Without this setup, the location selectors in the matrix will be empty.
{% endhint %}

| Aspect                      | Rental by Day          | Rental by Transportation                   |
| --------------------------- | ---------------------- | ------------------------------------------ |
| Pricing model               | Price per day          | Fixed price per route (pick-up × drop-off) |
| Base price field            | `regular_price_day`    | Route matrix (`price_location[]`)          |
| GD / ST                     | ✓                      | — Not available                            |
| Daily pricing plan          | ✓                      | — Not available                            |
| Locations / Surcharge       | ✓ (optional extra fee) | — Replaced by route matrix                 |
| Pick-up / Drop-off location | ✓                      | ✓ (required for route selection)           |
| Drop-off date               | ✓                      | ✓                                          |
| Round-trip                  | ✓                      | ✓                                          |

## 1: Quick Start

{% stepper %}
{% step %}

### Add General fields

Read in [overview](/brw/create-a-product/overview.md)
{% endstep %}

{% step %}

### [Choose Rental Type](#id-2-choose-rental-type)

{% endstep %}

{% step %}

### [Pricing Settings](#id-3-pricing-settings)

{% endstep %}

{% step %}

### [Shared Fields](#id-4-shared-fields)

The following fields are shared across multiple rental types.
{% endstep %}

{% step %}

### [Common Fields](#id-5-common-fields)

The following fields are shared across all rental types.&#x20;
{% endstep %}

{% step %}

### [Customize Fields in Product Editing](#id-6-customize-fields-in-product-editing)

You can add/remove fields in product editing.
{% endstep %}

{% step %}

### Publish

Set a WooCommerce Regular Price for display purposes, then click **Publish**. The actual booking price is always calculated by BRW settings.
{% endstep %}
{% endstepper %}

## 2: Choose Rental Type

* Step 1: Add new product
* Step 2: Setup&#x20;
  * Product data: Rental
  * Rental Type: Transportation

<figure><img src="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2F6s2h6WdX1tRxwDBgEcKj%2FScreenshot%202026-06-22%20at%2016.17.18.png?alt=media&amp;token=808b1a96-0acd-4d86-9a2a-414e6913bbef" alt=""><figcaption></figcaption></figure>

## 3: Pricing Settings

### 3.1 Location Price Matrix <a class="button primary">price-locations</a>

Define the fixed price for each pick-up and drop-off location pair. This is the **only** pricing mechanism for the Transportation type — there is no per-day, per-hour, or per-km rate.

{% hint style="danger" %}
All locations used in this matrix must be created in **BRW Settings → Manage Locations** first. If locations are not found in settings, the dropdowns will be empty.
{% endhint %}

| Column            | Meta key             | Description                                                                                                                   |
| ----------------- | -------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| Pick-up location  | `pickup_location[]`  | Dropdown selecting the origin location from globally defined locations. The customer chooses their departure point.           |
| Drop-off location | `dropoff_location[]` | Dropdown selecting the destination location. Together with pick-up, this defines the route.                                   |
| Price             | `price_location[]`   | Fixed price for this specific pick-up → drop-off route. Shown automatically when the customer selects this route combination. |
| Time (minute)     | `location_time[]`    | Estimated travel time in minutes for this route. Displayed to the customer as informational text (e.g. "\~45 min").           |

{% hint style="info" %}
**How it works:** In the booking form, the customer selects their pick-up and drop-off locations from dropdowns. The plugin matches the selection against the matrix and displays the price. If no matching row is found, no price is shown.
{% endhint %}

{% hint style="success" %}
**Symmetry:** A route from A → B and B → A are treated as separate rows. If you want to offer both directions, add two rows: one for A→B and one for B→A (they can have different prices).
{% endhint %}

## 4: Shared Fields

Transportation type uses pick-up/drop-off locations for route selection (not for extra fees — that's replaced by the price matrix).

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="image">Cover image</th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Pick-up location</strong></td><td><em>Show/rename on booking form</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FE5QmNeaYbtj583QhhFVg%2Flocation.png?alt=media&amp;token=c26e399f-afa0-4e89-b43a-31c2fbb821ab">location.png</a></td><td><a href="/brw/create-a-product/shared-fields/location/pick-up-location.md">Pick-up Location</a></td></tr><tr><td><strong>Drop-off location</strong></td><td><em>Show/rename on booking form</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FIgvUaa0e4eBUJwSWctDc%2Fdrop-off.png?alt=media&amp;token=ae9a5104-072a-463d-a0f3-a1adeaaa210a">drop-off.png</a></td><td><a href="/brw/create-a-product/shared-fields/location/drop-off-location.md">Drop-off Location</a></td></tr><tr><td><strong>Round-trip</strong></td><td><em>Toggle + extra fee</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FsziJN9pVOG114t07WPnG%2Fround-trip.png?alt=media&amp;token=3d7ed259-2342-46fb-a0cc-23b3f4d7177e">round-trip.png</a></td><td><a href="/brw/create-a-product/shared-fields/location/round-trip.md">Round-trip</a></td></tr><tr><td><strong>Guests options</strong></td><td><em>show/hide guest</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2Fzp9hD4p7APLXBG7AQNDE%2Fcake.png?alt=media&amp;token=28b10c9d-3897-4dde-a5a0-bcfd35818ab3">cake.png</a></td><td><a href="/brw/create-a-product/shared-fields/guests/guest-option.md">Guest option</a></td></tr><tr><td><strong>Guests fields</strong></td><td><em>Form fields + min/max</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FSghSiWEVGFG4kkmH73j0%2Fguest-list.png?alt=media&amp;token=98f112fc-4a52-483d-9fb2-811772f32bf6">guest-list.png</a></td><td><a href="/brw/create-a-product/shared-fields/guests/guests-pricing-and-limits.md">Guests (pricing &amp; limits)</a></td></tr><tr><td><strong>Pick-up date</strong></td><td><em>Time slots, label, defautls</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FhimLDbxBkqW67IwuLHcA%2Fstart-date.png?alt=media&amp;token=5a66382b-cbb8-4841-9f92-0a9f653b2c87">start-date.png</a></td><td><a href="/brw/create-a-product/shared-fields/booking-dates/pick-up-date.md">Pick-up date</a></td></tr><tr><td><strong>Drop-off date</strong></td><td><em>Show/rename on booking form</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FHZB58ceyMxbJawVs3DUS%2Fend-of-year.png?alt=media&amp;token=fd8451a9-c6b6-433b-9ff6-6039f9ab3722">end-of-year.png</a></td><td><a href="/brw/create-a-product/shared-fields/booking-dates/drop-off-date.md">Drop-off date</a></td></tr><tr><td><strong>Booking Conditions</strong></td><td><em>Min/max days, preparation, advance</em></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FSqvnedaUILFZRR7KVeKv%2Fschedule.png?alt=media&amp;token=fc50535b-0cb7-4081-ab1a-d154f1b786cd">schedule.png</a></td><td><a href="/brw/create-a-product/shared-fields/booking-conditions.md">Booking Conditions</a></td></tr></tbody></table>

## 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.

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td><strong>Availability</strong></td><td><em>Allowed dates, disabled dates, iCal</em></td><td><a href="/brw/common-fields/availability.md">Availability</a></td><td><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FHZB58ceyMxbJawVs3DUS%2Fend-of-year.png?alt=media&amp;token=fd8451a9-c6b6-433b-9ff6-6039f9ab3722">end-of-year.png</a></td></tr><tr><td><strong>Services &#x26; Resources</strong></td><td><em>Add-on pricing with /Day or /Order</em></td><td><a href="/brw/common-fields/services-and-resources.md">Services &amp; Resources</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2Faaowe5OV6TECZOYyW1lC%2Fconfiguration.png?alt=media&amp;token=5ed2998a-3bba-42a0-b41a-38c0dc91f04b">configuration.png</a></td></tr><tr><td><strong>Deposit</strong></td><td><em>Fixed or percentage upfront payment</em></td><td><a href="/brw/common-fields/deposit-and-insurance/deposit.md">Deposit</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FoUxbTJH7SOcUJRbMqMnJ%2Fupload.png?alt=media&amp;token=5fadf598-d7e8-4c12-bc26-c19b42a1131c">upload.png</a></td></tr><tr><td><strong>Insurance</strong></td><td><em>Fixed fee added to every booking</em></td><td><a href="/brw/common-fields/deposit-and-insurance.md">Deposit &amp; Insurance</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FFNlMKp9kbkGG0u1jjN8e%2Finsurance.png?alt=media&amp;token=9aaa2b8e-a6e3-46d6-9f71-354390651a12">insurance.png</a></td></tr><tr><td><strong>Inventory &#x26; Quantity</strong></td><td><em>Stock count, named vehicles</em></td><td><a href="/brw/common-fields/inventory-and-quantity.md">Inventory &amp; Quantity</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FILbKMkGoOfwvdbjQE12f%2Fstock-rotation.png?alt=media&amp;token=169c6174-3a41-4b7b-bbb8-25482473558c">stock-rotation.png</a></td></tr><tr><td><strong>Booking Form</strong></td><td><em>Custom checkout fields</em></td><td><a href="/brw/common-fields/booking-form.md">Booking Form</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FFXS96CDy8zn0GDDQA6Di%2Fcontact-form.png?alt=media&amp;token=6f9dde63-12f0-4605-a3d0-a161ccc32c6b">contact-form.png</a></td></tr><tr><td><strong>Map / Place</strong></td><td><em>Maps pin on product page</em></td><td><a href="/brw/common-fields/display-and-layout/map-place.md">Map / Place</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2Fhpsva9YNet3BAONHVeVe%2Fmap.png?alt=media&amp;token=66b4fcb8-9002-42ef-bf68-18c83b22e9cf">map.png</a></td></tr><tr><td><strong>Display &#x26; Layout</strong></td><td><em>Price format, template, extra tab</em></td><td><a href="/brw/common-fields/display-and-layout.md">Display &amp; Layout</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FoIzHgd10O3ZJmyeLJZTN%2Fwebsite-design.png?alt=media&amp;token=4a4a1407-c804-4620-8747-dff829ad145b">website-design.png</a></td></tr><tr><td><strong>Product Content</strong></td><td><em>Specifications, features list</em></td><td><a href="/brw/common-fields/product-content.md">Product Content</a></td><td data-object-fit="contain"><a href="https://4082525133-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fa2OkFafBNY1uvQO4naAL%2Fuploads%2FbsaXxA9qTU90hwKE9DPr%2Fcopy-writing.png?alt=media&amp;token=93dcdd65-5a49-47b3-8d9d-e2097a64d5b2">copy-writing.png</a></td></tr></tbody></table>

## 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](/brw/customize-rental-type.md)
