Finance

# Price modules explained

Choose and set up the right price module: fixed, per unit, time-based, rate table, lane, zone, percentage, formula, query, Excel and more.

Updated 5 October 2026

**Who can do this:** The pricing permission and the Financial platform feature.

A price module is one rate rule. Each module produces zero or more lines (quantity × price) for the order, trip or vehicle being priced. A price configuration adds up all its modules. You use the same modules in capacity contracts and in the default cost rates of your platform.

## Set up a module

1. In the price configuration form, click a **Price module** block under **Modules**, or click **Add price module**.
2. Choose the type in **Price module type** (see the table below).
3. Enter a **Name** (required).
4. Choose the level the module prices in **Select price context entity type**, for example trip.
5. Fill in the fields for the chosen type, including the **Amount** where shown.
6. Choose the category in **Select pricing category** (required). See [Pricing categories and cost elements](/en/help/pricing-categories).
7. Optional: add module-specific **VAT rules**. They take precedence over the VAT rules of the configuration.
8. Optional: switch on **Once per invoice** so the line appears only once on a combined invoice.
9. Optional: enter a **Description** or a **Custom description** for the invoice line.
10. Click **Save**. The block now shows the type, entity type and amount.

Use the duplicate icon on a block to copy a module, and the close button (×) to remove it.

## Module types

| Type                                               | Prices                                                                                                                                                                                  | Main fields                                                                                                                                                                              |
| -------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Fixed price**                                    | A fixed price per order, trip, vehicle or fleet vehicle.                                                                                                                                | **Amount**                                                                                                                                                                               |
| **Per unit**                                       | A price per kilometre or mile, or per consignment, goods line, item, action or transport equipment.                                                                                     | **Select unit options**, **Amount**                                                                                                                                                      |
| **Time-based**                                     | A price per period of time for the whole trip or for each action, for example per hour of waiting.                                                                                      | value and **Select schedule unit** (**Minutes** to **Years**), **Amount**                                                                                                                |
| **Rate table**                                     | A rate table: the column and row are chosen by distance, counts or visited locations.                                                                                                   | units for rows and columns, the cells; **Paste from Excel** fills the table from copied cells                                                                                            |
| **Route A to B**                                   | A price per move from location A to location B (a lane).                                                                                                                                | **Location from...**, **Location to...**, **Select granularity** (**Country**, **City**, **Postcode**, **Street**, **Exact**), **Other way around**, **Amount**                          |
| **Zone**                                           | A price per movement that ends in a zone of postcode ranges, for example a delivery area. Nothing is billed when no movement ends in the zone.                                          | the postcode ranges (**\+ Add postcode**), **Select movement level** (**Move Action** or **Consignment**), optionally **Zone origin (optional)** with **Select granularity**, **Amount** |
| **Percentage**                                     | A percentage of a value or of the modules before it, for surcharges and discounts.                                                                                                      | **Percentage** and the start value                                                                                                                                                       |
| **Price elements**                                 | The cost elements of one pricing category found on the trip, its consignments and stop locations.                                                                                       | **Select pricing category**, **Factor**                                                                                                                                                  |
| **Entity field**                                   | A number read from the priced item, used as quantity or as the price.                                                                                                                   | **Selector**, **Value is** (**Quantity (× amount per unit)** or **Price (value is the line price)**), **Factor**                                                                         |
| **Formula**                                        | A calculation over fields of the priced item and price variables.                                                                                                                       | **Formula**                                                                                                                                                                              |
| **Query (TQL)**                                    | A price that is the result of a query over your data, for example the number of pallets moved for the customer this month. Prices trips, vehicles, fleet vehicles and transport orders. | the query: record type, filters and fields, as in the [query builder](/en/help/reporting-query-builder)                                                                                  |
| **Variable adjustment**                            | A price that moves with a price variable, such as a diesel index, relative to a base level.                                                                                             | the price variable, **Base level**, **Per difference of**, **Change per step**                                                                                                           |
| **Excel calculation**                              | A price calculated by an Excel workbook you upload.                                                                                                                                     | **Document**, **Result cell**, **Factor**                                                                                                                                                |
| **Module group**                                   | A group of sub-modules whose lines are all billed.                                                                                                                                      | **Modules**                                                                                                                                                                              |
| **Highest module value** / **Lowest module value** | Only the sub-module with the highest or lowest total, for example "per km, but at least the fixed minimum".                                                                             | **Modules**                                                                                                                                                                              |
| **Subscription**                                   | A recurring price per driver, vehicle, fleet vehicle or transport equipment.                                                                                                            | **Amount**                                                                                                                                                                               |

### Query (TQL) modules

The query runs on your platform each time the item is priced, and the result becomes the price of one line. Without selected fields, the price is the number of rows found. With fields, the first field is added up over all rows. In a filter value you can refer to the priced item between double braces, for example `{{ customer.id }}`, so the query only counts that customer's records. A query that cannot run produces no line.

## Formulas and custom descriptions

In a **Formula**, refer to fields of the priced item between double braces, for example `{{ route.distance }} / 1000 * 1.2`. Refer to a price variable with a dollar sign followed by its variable name, for example `$diesel` for the variable `diesel`.

Leave **Custom description** empty to use the standard line text. Fill it in to compose your own, for example `Order {{orderId}}`.

Test a new configuration on one customer first: price a finished trip, check the lines and only then link the configuration to more customers.

## Related articles

* [Set up price configurations](/en/help/pricing)
* [Use variable price indexes](/en/help/variable-price-indexes)
* [Pricing categories and cost elements](/en/help/pricing-categories)
* [Set up capacity contracts with carriers](/en/help/capacity-contracts)

## Still need help?

Our support team is happy to answer any question about Transportial.

[Contact support](/en/contact)[Report an issue](/en/report-issue)

---
Canonical page: https://transportial.com/en/help/price-modules
