Instructions for filling out Excel file

General description

You can download a sample Excel file here. Uploadable formats: xls, xlsx, xlsm.

To upload routing data correctly, the Excel workbook must contain the following sheets:

  • Orders: Information about orders.

  • Vehicles: Information about vehicles/couriers.

  • Depot or Depots: Information about the depot point.

Optionally, the Excel workbook can contain the following sheets:

  • Incompatible_order_types: Information about mutually incompatible order types.

  • Location_groups: Order group settings.

  • Options: Routing options.

  • Routes: Data on predefined routes (routes of logistics coordinators or routes from past planning that need to be preserved in the current planning).

The Excel workbook can also contain sheets with other names and additional information for the user: this won't affect the upload.

To avoid upload errors, don't change the table header on the sheet (the first few rows with the field name and the technical name of the attribute). You can delete optional columns (or add other columns with reserved names), provided that there are no empty columns between the ones filled in.

Note.

Columns can be in any order.

Description of Excel sheets

Orders

This sheet contains information about orders. Strictly speaking, each row on this sheet is not an order but a location. Therefore:

  • If a simple delivery is made from a depot point, then each row corresponds to an order.

  • If a delivery is made from point A to point B, this order is split into 2 rows: one row corresponds to the pickup point and the other row corresponds to the delivery point.

  • If the start or end point of the route differs from the depot point, this point will be entered in a separate row on the sheet.

Note.

For the Orders sheet, you only need to fill in the following minimum set of fields (if you deliver from a depot):

  • Order number.

  • Coordinates and/or address of the order.

  • Time window of the order.

  • Volume and weight characteristics of the order (weight and/or volume and/or number of cargo units).

In the other fields, you can leave the default (or empty) values and it will work for the first run of the routing task.

Below, you can see the fields allowed on the Orders sheet.

Basic order information

Excel field group Attributes Comments on entering data Required field
Order number; additional order number id; ref We recommend specifying the order number in id (you can leave ref empty or fill it in the same as id). Learn more. Yes (one of the fields)
Latitude; longitude point.lat; point.lon Coordinates of the delivery location: latitude (point.lat), longitude (point.lon). Learn more. No, if you specify the order address (when you upload the data via the interface, you can geocode the address)
Client name; brief description of the order point; client address; order comments title; description; address; comments Information fields that are afterwards displayed in the planning interface. Learn more No (but if the order coordinates are not entered, then you must enter the address)
Client phone number phone Used only when exporting planning results to Track & Trace. No
Location type type Learn more Must be filled in for correct routing (technically, this field is optional)
Undelivery penalty penalty.drop We recommend leaving the default value (1,000,000) or entering nothing (in this case, the default value is used). Learn more Must be filled in for correct routing (technically, this field is optional)
Excel field group Attributes Comments on entering data Required field
Order number; additional order number id; ref We recommend specifying the order number in id (you can leave ref empty or fill it in the same as id). Learn more. Yes (one of the fields)
Latitude; longitude point.lat; point.lon Coordinates of the delivery location: latitude (point.lat), longitude (point.lon). Learn more. No, if you specify the order address (when you upload the data via the interface, you can geocode the address)
Client name; brief description of the order point; client address; order comments title; description; address; comments Information fields that are afterwards displayed in the planning interface. Learn more No (but if the order coordinates are not entered, then you must enter the address)
Client phone number phone Used only when exporting planning results to Track & Trace. No
Location type type Learn more Must be filled in for correct routing (technically, this field is optional)
Undelivery penalty penalty.drop We recommend leaving the default value (1,000,000) or entering nothing (in this case, the default value is used). Learn more Must be filled in for correct routing (technically, this field is optional)

Order characteristics

Excel field group Attributes Comments on entering data Required field
Weight (gross), kg; number of cargo units used; dimensions, m (Width, Depth, Height) shipment_size.weight_kg; shipment_size.units; shipment_size.volume.width_m; shipment_size.volume.depth_m; shipment_size.volume.height_m Volume and weight characteristics of the order. Learn more Must be filled in for correct routing (technically, this field is optional)
Volume, cbm shipment_size.volume_cbm The order volume in cubic meters. Learn more No
Custom units: name; number of units shipment_size.custom.N.name; shipment_size.custom.N.size Custom units for the order. Learn more No
Cargo type shipment_size.volume.type Possible values: bulk, rigid, fixed_bottom. Learn more. No
Alignment shipment_size.volume.align Possible values: all_axes, height. Learn more. No
Excel field group Attributes Comments on entering data Required field
Weight (gross), kg; number of cargo units used; dimensions, m (Width, Depth, Height) shipment_size.weight_kg; shipment_size.units; shipment_size.volume.width_m; shipment_size.volume.depth_m; shipment_size.volume.height_m Volume and weight characteristics of the order. Learn more Must be filled in for correct routing (technically, this field is optional)
Volume, cbm shipment_size.volume_cbm The order volume in cubic meters. Learn more No
Custom units: name; number of units shipment_size.custom.N.name; shipment_size.custom.N.size Custom units for the order. Learn more No
Cargo type shipment_size.volume.type Possible values: bulk, rigid, fixed_bottom. Learn more. No
Alignment shipment_size.volume.align Possible values: all_axes, height. Learn more. No

Delivery windows

Excel field group Attributes Comments on entering data Required field
Time window time_window If the time window is relative (that is, it's in the format 10:00 – 18:00), it is important to account for a shift of this time window relative to the planning date (which is specified when running the routing task). Read more here and here Yes (if time_windows aren't specified)
Multiple time windows time_windows.N.time_window Use if the window has “breaks” during the day or the windows are different on different days. Can't be used together with time_window. Learn more Yes (unless time_window is specified)
Flag of hard time window, TRUE/FALSE hard_window

TRUE: The time window can't be violated under any circumstances. FALSE: The time window can be violated (if this helps to allocate resources better). You may leave this field empty: in this case, the time window is soft (it may be violated). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Hard time window hard_time_window

If the main depot window is soft, you can set a hard time window around it. Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Penalties: per minute of time window violation; for violation of time window; for early delivery; per minute of early delivery; for late arrival; per minute of late arrival penalty.out_of_time.minute; penalty.out_of_time.fixed; penalty.early.fixed; penalty.early.minute; penalty.late.fixed; penalty.late.minute Penalties for violation of the order time window. We recommend that you leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Change this field only when it's clear how that would affect routing. You may need to change it in the following use cases: late arrivals are not allowed (but it's possible to arrive before the time window starts), or vice versa; time window violation is acceptable, if it helps to optimize resources. Learn more Must be filled in for correct routing (technically, this field is optional)
Excel field group Attributes Comments on entering data Required field
Time window time_window If the time window is relative (that is, it's in the format 10:00 – 18:00), it is important to account for a shift of this time window relative to the planning date (which is specified when running the routing task). Read more here and here Yes (if time_windows aren't specified)
Multiple time windows time_windows.N.time_window Use if the window has “breaks” during the day or the windows are different on different days. Can't be used together with time_window. Learn more Yes (unless time_window is specified)
Flag of hard time window, TRUE/FALSE hard_window

TRUE: The time window can't be violated under any circumstances. FALSE: The time window can be violated (if this helps to allocate resources better). You may leave this field empty: in this case, the time window is soft (it may be violated). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Hard time window hard_time_window

If the main depot window is soft, you can set a hard time window around it. Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Penalties: per minute of time window violation; for violation of time window; for early delivery; per minute of early delivery; for late arrival; per minute of late arrival penalty.out_of_time.minute; penalty.out_of_time.fixed; penalty.early.fixed; penalty.early.minute; penalty.late.fixed; penalty.late.minute Penalties for violation of the order time window. We recommend that you leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Change this field only when it's clear how that would affect routing. You may need to change it in the following use cases: late arrivals are not allowed (but it's possible to arrive before the time window starts), or vice versa; time window violation is acceptable, if it helps to optimize resources. Learn more Must be filled in for correct routing (technically, this field is optional)

Time limits

Excel field group Attributes Comments on entering data Required field
Time of pickup order delivery to the depot delivery_deadline The time before which a pickup order without an explicit delivery location must be delivered to any depot. Learn more No
Penalties: for violation of the pickup order delivery time to the depot; per minute of violation of the pickup order delivery time to the depot penalty.delivery_deadline.fixed; penalty.delivery_deadline.minute Penalties for late delivery of the order to the depot. We recommend that you leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Only edit these fields if it is important for your purpose. Learn more No
Time when the order is ready at the depot depot_ready_time Time when the order is ready for issue at the depot. Learn more No
Order depot pick up deadline depot_expiring_time The time before the order must be picked up from the depot. Learn more No
Limitation of the time the order can be in the vehicle

transit_time.limit_s

transit_time.hard_limit_s

A soft and hard limitation of the time the order can stay in the vehicle. Learn more No
Penalties: for the violation of the time the order can be in the vehicle; per minute of violation of the time the order can be in the vehicle

penalty.transit_time.fixed

penalty.transit_time.minute

Penalty for the violation of the soft limitation of the time the order can be in the vehicle. Learn more No
Excel field group Attributes Comments on entering data Required field
Time of pickup order delivery to the depot delivery_deadline The time before which a pickup order without an explicit delivery location must be delivered to any depot. Learn more No
Penalties: for violation of the pickup order delivery time to the depot; per minute of violation of the pickup order delivery time to the depot penalty.delivery_deadline.fixed; penalty.delivery_deadline.minute Penalties for late delivery of the order to the depot. We recommend that you leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Only edit these fields if it is important for your purpose. Learn more No
Time when the order is ready at the depot depot_ready_time Time when the order is ready for issue at the depot. Learn more No
Order depot pick up deadline depot_expiring_time The time before the order must be picked up from the depot. Learn more No
Limitation of the time the order can be in the vehicle

transit_time.limit_s

transit_time.hard_limit_s

A soft and hard limitation of the time the order can stay in the vehicle. Learn more No
Penalties: for the violation of the time the order can be in the vehicle; per minute of violation of the time the order can be in the vehicle

penalty.transit_time.fixed

penalty.transit_time.minute

Penalty for the violation of the soft limitation of the time the order can be in the vehicle. Learn more No

Handling time

Excel field group Attributes Comments on entering data Required field
Time for reloading order in a cross-dock, s

crossdock_service_duration_s

Specified for orders delivered via cross docking. Learn more No
Time spent on loading the order at the depot depot_duration_s For orders with the "delivery" type, this is the time when the order is loaded at the depot. Learn more No
Time for parking, s

parking_service_duration_s

Specified if the courier parks the vehicle and then delivers several orders nearby on foot. Learn more No
Service time per location, s; service time per order, s shared_service_duration_s; service_duration_s The time that the vehicle\courier will spend at the order location (in seconds). Learn more here and here Must be filled in for correct routing (technically, this field is optional)
Excel field group Attributes Comments on entering data Required field
Time for reloading order in a cross-dock, s

crossdock_service_duration_s

Specified for orders delivered via cross docking. Learn more No
Time spent on loading the order at the depot depot_duration_s For orders with the "delivery" type, this is the time when the order is loaded at the depot. Learn more No
Time for parking, s

parking_service_duration_s

Specified if the courier parks the vehicle and then delivers several orders nearby on foot. Learn more No
Service time per location, s; service time per order, s shared_service_duration_s; service_duration_s The time that the vehicle\courier will spend at the order location (in seconds). Learn more here and here Must be filled in for correct routing (technically, this field is optional)

Combining and splitting orders

Excel field group Attributes Comments on entering data Required field
Can be merged into multi-order, TRUE/FALSE can_be_merged By default, TRUE (the order can be combined into a multi-order). Learn more here and here No
Split can_be_split If FALSE (default): The order can only be delivered in its entirety. If TRUE: The order can be delivered in parts. Learn more No
Maximum number of parts to split into max_split_parts The maximum number of parts that an order can be split into. Learn more No
Divider, proportion; divider, kilos; divider, unit; divider, cubic meters quant; quant.weight_kg; quant.units; quant.volume_cbm Sets the size of the minimum split part in proportions, kilograms, cargo units, cubic meters. Learn more No
Fill the entire vehicle split_parts_must_fill_whole_vehicle If TRUE: The part split from the order must fill the entire vehicle. Default value: FALSE. Learn more No
Fixed penalty for not delivering part of the order; penalty for not delivering part of the order penalty.drop.fixed; penalty.drop.scaled If the order is split into parts, you can set a fixed part of the penalty and a variable one that depends on the size (percentage) of the unassigned part of the order. Learn more Must be filled in for correct routing (technically, this field is optional)
Excel field group Attributes Comments on entering data Required field
Can be merged into multi-order, TRUE/FALSE can_be_merged By default, TRUE (the order can be combined into a multi-order). Learn more here and here No
Split can_be_split If FALSE (default): The order can only be delivered in its entirety. If TRUE: The order can be delivered in parts. Learn more No
Maximum number of parts to split into max_split_parts The maximum number of parts that an order can be split into. Learn more No
Divider, proportion; divider, kilos; divider, unit; divider, cubic meters quant; quant.weight_kg; quant.units; quant.volume_cbm Sets the size of the minimum split part in proportions, kilograms, cargo units, cubic meters. Learn more No
Fill the entire vehicle split_parts_must_fill_whole_vehicle If TRUE: The part split from the order must fill the entire vehicle. Default value: FALSE. Learn more No
Fixed penalty for not delivering part of the order; penalty for not delivering part of the order penalty.drop.fixed; penalty.drop.scaled If the order is split into parts, you can set a fixed part of the penalty and a variable one that depends on the size (percentage) of the unassigned part of the order. Learn more Must be filled in for correct routing (technically, this field is optional)

Assigning an order to a depot or other locations

Excel field group Attributes Comments on entering data Required field
Depot inventory availability depot_id Depots that the order can be picked from. You can specify multiple depots for one order, separated by commas. Learn more No
Destination (for orders with the pickup type) delivery_to Used only for use cases with the "pickup" orders. This field is only filled out for orders with the "pickup" type. In this field, specify the "id" of the associated order with the "delivery" type. The "id" entered in "delivery_to" must be unique for each pickup order. Learn more No
Delivery to any point (for orders with the pickup type) delivery_to_any Used only for use cases with the "pickup" orders. This field is only filled out for orders with the "pickup" type. In this field, specify the "id" of the associated order with the "drop off" type. Please note that the identifier defined in "delivery_to_any" must be the same for different pickup orders. No
Pick up from any of the specified points pickup_from_any Specified only for orders with the "delivery" type. It's used in scenarios when cargo for delivery can be picked up from any number of points. Learn more No
Mandatory pickup order delivery to the depot in the current route pickup_must_reach_depot If this option is enabled, the pickup order must be delivered to the depot in the current route. Learn more No
Can be delivered through cross docking

crossdock_mode

Accepts one of the following values: allow (default), deny, mandatory. Learn more No
Can be dropped in a cross-dock, TRUE/FALSE

may_drop_in_crossdock

Can only be set for pickup orders. If TRUE (by default), then the order can be dropped in cross docking, and if FALSE, it can only be dropped at a regular depot. Learn more No
Excel field group Attributes Comments on entering data Required field
Depot inventory availability depot_id Depots that the order can be picked from. You can specify multiple depots for one order, separated by commas. Learn more No
Destination (for orders with the pickup type) delivery_to Used only for use cases with the "pickup" orders. This field is only filled out for orders with the "pickup" type. In this field, specify the "id" of the associated order with the "delivery" type. The "id" entered in "delivery_to" must be unique for each pickup order. Learn more No
Delivery to any point (for orders with the pickup type) delivery_to_any Used only for use cases with the "pickup" orders. This field is only filled out for orders with the "pickup" type. In this field, specify the "id" of the associated order with the "drop off" type. Please note that the identifier defined in "delivery_to_any" must be the same for different pickup orders. No
Pick up from any of the specified points pickup_from_any Specified only for orders with the "delivery" type. It's used in scenarios when cargo for delivery can be picked up from any number of points. Learn more No
Mandatory pickup order delivery to the depot in the current route pickup_must_reach_depot If this option is enabled, the pickup order must be delivered to the depot in the current route. Learn more No
Can be delivered through cross docking

crossdock_mode

Accepts one of the following values: allow (default), deny, mandatory. Learn more No
Can be dropped in a cross-dock, TRUE/FALSE

may_drop_in_crossdock

Can only be set for pickup orders. If TRUE (by default), then the order can be dropped in cross docking, and if FALSE, it can only be dropped at a regular depot. Learn more No

Distribution and compatibility of orders

Excel field group Attributes Comments on entering data Required field
Type of compatibility with other orders load_types Parameters of compatibility between the orders. You can specify multiple comma-separated values of "load_types" for an order. Load_types can include any string explaining the required order property in a user-friendly way. The "Load_types" parameter is case-sensitive. If you enter "load_types", fill out the incompatible order types on the sheet Incompatible_order_types. You can't assign incompatible order types when you plan a single run for a single vehicle or courier. Learn more No
Optional vehicle requirements: tag name; tag weight optional_tags.N.tag; optional_tags.N.value Tags for optional requirements. Learn more No
Vehicle requirements required_tags Order and vehicle compatibility parameters. You can specify multiple comma-separated tags for one order. A tag is any string that identifies the necessary properties of the vehicle/courier clearly for the user. Only the vehicle that has all the tags specified for the order can be selected for such an order. Tags are case-sensitive. Learn more No
Excel field group Attributes Comments on entering data Required field
Type of compatibility with other orders load_types Parameters of compatibility between the orders. You can specify multiple comma-separated values of "load_types" for an order. Load_types can include any string explaining the required order property in a user-friendly way. The "Load_types" parameter is case-sensitive. If you enter "load_types", fill out the incompatible order types on the sheet Incompatible_order_types. You can't assign incompatible order types when you plan a single run for a single vehicle or courier. Learn more No
Optional vehicle requirements: tag name; tag weight optional_tags.N.tag; optional_tags.N.value Tags for optional requirements. Learn more No
Vehicle requirements required_tags Order and vehicle compatibility parameters. You can specify multiple comma-separated tags for one order. A tag is any string that identifies the necessary properties of the vehicle/courier clearly for the user. Only the vehicle that has all the tags specified for the order can be selected for such an order. Tags are case-sensitive. Learn more No

Other order characteristics

Excel field group Attributes Comments on entering data Required field
Location availability for vehicle with trailer

allow_trailers

Default value: FALSE. Learn more No
Order of reception and delivery in_lifo_order Default value: FALSE. You can use it for pickup/delivery order pairs when the sequence of loading and unloading is important. Learn more No
Order priority sequence_order The order of completing orders on a route. Learn more No
IDs of companies allowed to monitor the order

shared_with_company_ids

Company IDs are comma-separated. Learn more No
Proximity algorithms allowed, TRUE/FALSE

use_in_proximity

The possibility to disable route density options for the order. TRUE by default (density options are enabled). Learn more No
Excel field group Attributes Comments on entering data Required field
Location availability for vehicle with trailer

allow_trailers

Default value: FALSE. Learn more No
Order of reception and delivery in_lifo_order Default value: FALSE. You can use it for pickup/delivery order pairs when the sequence of loading and unloading is important. Learn more No
Order priority sequence_order The order of completing orders on a route. Learn more No
IDs of companies allowed to monitor the order

shared_with_company_ids

Company IDs are comma-separated. Learn more No
Proximity algorithms allowed, TRUE/FALSE

use_in_proximity

The possibility to disable route density options for the order. TRUE by default (density options are enabled). Learn more No

Vehicles

This sheet contains information about available resources (vehicles or couriers). You don't need to enter specific vehicles or names. You can enter abstract resources and assign specific vehicles or couriers to the resulting routes separately and outside of the routing service.

Make sure that you correctly specified all the resources that are available at the time of planning:

  • If these are your own vehicles or couriers, list them taking into account planned unavailability for routes or shifts.

  • If these are hired vehicles or couriers and you don't know how many of them there are in advance, specify how many are usually involved for the given amount of orders. If the types vary, specify the maximum number of involved vehicles for each type. For example, you use hired vehicles with a 1.5-ton and 3-ton capacity, and each time you may use up to 10 vehicles but don't know the number of vehicles of each type in advance. In this case, you can enter 10 identical rows for 1.5-ton vehicles and 10 identical rows for 3-ton vehicles.

Note.

In the Vehicles sheet, fill out the following minimum of fields:

  • Number of the vehicle or courier.

  • Capacity of the vehicle or courier.

  • Working hours.

In the other fields, you can leave the default (or empty) values and it will work for the first run of the routing task.

Below, you can see the fields allowed on the Vehicles sheet.

Basic information about the courier or vehicle

Excel field group Attributes Comments on entering data Required field
Courier ID; vehicle name or number id; ref We recommend that you specify the vehicle or courier number in "ref" (you can leave "id" blank). The "id" value must be unique for the entire sheet ("ref" may be non-unique). If "id" is blank, then when you upload the data from Excel and send the task for routing, "id" is set to 0, 1, 2… The "id" field is also important for exporting the planning results to Track & Trace. It's used as the courier's username in the mobile app. Learn more Yes (one of the fields)
GPS tracker number imei The number of the vehicle's GPS tracker. Used only when exporting the planning results in Track & Trace. Learn more No
Maximum number of runs max_runs The maximum number of runs during all the specified shifts. By default, 1. In the algorithm, a run is a departure from the depot and delivery of orders before returning to the depot (in this case, if the vehicle returns to a point with the coordinates of the depot, that's not counted as a run). Learn more No
Courier's phone number phone The phone number is used to keep contact with the courier in Track & Trace. Learn more No
Transportation method routing_mode Filled out only if the vehicles or couriers can use different methods of travel (for example, a car or public transit). If the transportation method is the same for everyone, you don't need to fill out this field. When you start a routing task, you can select the method of travel to be used by everyone. Learn more No
Excel field group Attributes Comments on entering data Required field
Courier ID; vehicle name or number id; ref We recommend that you specify the vehicle or courier number in "ref" (you can leave "id" blank). The "id" value must be unique for the entire sheet ("ref" may be non-unique). If "id" is blank, then when you upload the data from Excel and send the task for routing, "id" is set to 0, 1, 2… The "id" field is also important for exporting the planning results to Track & Trace. It's used as the courier's username in the mobile app. Learn more Yes (one of the fields)
GPS tracker number imei The number of the vehicle's GPS tracker. Used only when exporting the planning results in Track & Trace. Learn more No
Maximum number of runs max_runs The maximum number of runs during all the specified shifts. By default, 1. In the algorithm, a run is a departure from the depot and delivery of orders before returning to the depot (in this case, if the vehicle returns to a point with the coordinates of the depot, that's not counted as a run). Learn more No
Courier's phone number phone The phone number is used to keep contact with the courier in Track & Trace. Learn more No
Transportation method routing_mode Filled out only if the vehicles or couriers can use different methods of travel (for example, a car or public transit). If the transportation method is the same for everyone, you don't need to fill out this field. When you start a routing task, you can select the method of travel to be used by everyone. Learn more No

Courier or vehicle characteristics

Excel field group Attributes Comments on entering data Required field
Load capacity, kg; maximum load, weight %; number of available cargo units; maximum load, % of cargo units; size of cargo space for a cargo unit, m (Width, Depth, Height); maximum load, % of capacity capacity.weight_kg; capacity.limits.weight_perc; capacity.units; capacity.limits.units_perc; capacity.volume.width_m; capacity.volume.depth_m; capacity.volume.height_m; capacity.limits.volume_perc Parameters of the vehicle/courier capacity. capacity.weight_kg: load capacity in kg; capacity.units: capacity in cargo units. Volume capacity is calculated as the product of capacity.volume.width_m, capacity.volume.depth_m, capacity.volume.height_m. Therefore, you can specify the volume capacity in one of those fields, entering 1 in the other fields. Besides the nominal capacity, we recommend that you use the "limits" parameters to enter possible overloads or planned underloads of the vehicles (especially if you use those values to build routes manually or in other programs). Learn more Must be filled in for correct routing (technically, this field is optional)
Custom capacity units: name; number of units capacity.custom.N.name; capacity.custom.N.size The vehicle capacity according in custom units of measurement. Learn more No
Vehicle specifications: width, height, length, max weight in tons, max weight in kg specs.width; specs.height; specs.length; specs.max_weight; specs.max_weight_kg Vehicle characteristics are used to determine whether a vehicle can travel on roads with restrictions. Learn more No
Minimum order weight for a vehicle min_stop_weight The minimum total weight that a vehicle can deliver to one location. Learn more No
Penalty for violating the minimum total weight; penalty for each kg of total weight less than minimum penalty.min_stop_weight.fixed; penalty.min_stop_weight.kg The minimum order weight for a vehicle is a soft restriction. The algorithm takes into account the penalty for violating the minimum total weight of all orders at one location (1000 by default) and the penalty for each missing kilogram in the total weight of orders delivered to one location (50 by default). Learn more No
Excel field group Attributes Comments on entering data Required field
Load capacity, kg; maximum load, weight %; number of available cargo units; maximum load, % of cargo units; size of cargo space for a cargo unit, m (Width, Depth, Height); maximum load, % of capacity capacity.weight_kg; capacity.limits.weight_perc; capacity.units; capacity.limits.units_perc; capacity.volume.width_m; capacity.volume.depth_m; capacity.volume.height_m; capacity.limits.volume_perc Parameters of the vehicle/courier capacity. capacity.weight_kg: load capacity in kg; capacity.units: capacity in cargo units. Volume capacity is calculated as the product of capacity.volume.width_m, capacity.volume.depth_m, capacity.volume.height_m. Therefore, you can specify the volume capacity in one of those fields, entering 1 in the other fields. Besides the nominal capacity, we recommend that you use the "limits" parameters to enter possible overloads or planned underloads of the vehicles (especially if you use those values to build routes manually or in other programs). Learn more Must be filled in for correct routing (technically, this field is optional)
Custom capacity units: name; number of units capacity.custom.N.name; capacity.custom.N.size The vehicle capacity according in custom units of measurement. Learn more No
Vehicle specifications: width, height, length, max weight in tons, max weight in kg specs.width; specs.height; specs.length; specs.max_weight; specs.max_weight_kg Vehicle characteristics are used to determine whether a vehicle can travel on roads with restrictions. Learn more No
Minimum order weight for a vehicle min_stop_weight The minimum total weight that a vehicle can deliver to one location. Learn more No
Penalty for violating the minimum total weight; penalty for each kg of total weight less than minimum penalty.min_stop_weight.fixed; penalty.min_stop_weight.kg The minimum order weight for a vehicle is a soft restriction. The algorithm takes into account the penalty for violating the minimum total weight of all orders at one location (1000 by default) and the penalty for each missing kilogram in the total weight of orders delivered to one location (50 by default). Learn more No

Assigning to a depot

Excel field group Attributes Comments on entering data Required field
Allowed to visit multiple depots in one route allow_different_depots_in_route FALSE is the default value. The courier can only visit the depot where the route starts. If TRUE, the courier can visit multiple depots on the same route. Learn more No
Allowed to visit cross-docks

crossdock_mode

Accepts one of the following values: allow (default), deny, mandatory. Learn more No
Depots that the courier can visit depot_id You can specify multiple depots for one courier, separated by commas. Learn more No
Start point of route; visit depot after route start, TRUE/FALSE start_at; visit_depot_at_start Parameters of the starting point for vehicles\couriers before the route start. By default, everyone starts from the depot location. You can specify a different starting point and indicate the requirement to return to the depot after departure from the starting location. Learn more No
Return to depot at the end of the shift, TRUE/FALSE; end point of route return_to_depot; finish_at Parameters for the return of a vehicle or courier after the route is completed (1. to the depot, 2. to an arbitrary point, 3. first to the depot, then to an arbitrary point). By default, "return_to_depot" = true (it means that the vehicle returns to the depot). If you leave the field empty, the default value is used. Learn more No
Depots to start from starting_depot_id Depots where the courier can start the route. You can specify multiple depots for one courier, separated by commas. Learn more No
Depots for additional loading middle_depot_id Depots that a courier can visit while traveling along the route to reload delivery order or unload pickup orders. You can specify multiple depots for one courier, separated by commas. Learn more. No
Maximum number of depots for additional loading in one route max_middle_depots The maximum number of intermediate depots that a courier can visit while on the route. Learn more No
Depots to end the route at ending_depot_id Depots where the courier can end the route. You can specify multiple depots for one courier, separated by commas. Learn more No
Excel field group Attributes Comments on entering data Required field
Allowed to visit multiple depots in one route allow_different_depots_in_route FALSE is the default value. The courier can only visit the depot where the route starts. If TRUE, the courier can visit multiple depots on the same route. Learn more No
Allowed to visit cross-docks

crossdock_mode

Accepts one of the following values: allow (default), deny, mandatory. Learn more No
Depots that the courier can visit depot_id You can specify multiple depots for one courier, separated by commas. Learn more No
Start point of route; visit depot after route start, TRUE/FALSE start_at; visit_depot_at_start Parameters of the starting point for vehicles\couriers before the route start. By default, everyone starts from the depot location. You can specify a different starting point and indicate the requirement to return to the depot after departure from the starting location. Learn more No
Return to depot at the end of the shift, TRUE/FALSE; end point of route return_to_depot; finish_at Parameters for the return of a vehicle or courier after the route is completed (1. to the depot, 2. to an arbitrary point, 3. first to the depot, then to an arbitrary point). By default, "return_to_depot" = true (it means that the vehicle returns to the depot). If you leave the field empty, the default value is used. Learn more No
Depots to start from starting_depot_id Depots where the courier can start the route. You can specify multiple depots for one courier, separated by commas. Learn more No
Depots for additional loading middle_depot_id Depots that a courier can visit while traveling along the route to reload delivery order or unload pickup orders. You can specify multiple depots for one courier, separated by commas. Learn more. No
Maximum number of depots for additional loading in one route max_middle_depots The maximum number of intermediate depots that a courier can visit while on the route. Learn more No
Depots to end the route at ending_depot_id Depots where the courier can end the route. You can specify multiple depots for one courier, separated by commas. Learn more No

Time limits

Excel field group Attributes Comments on entering data Required field
Loading time, depending on the vehicle, s depot_extra_service_duration_s The time needed for loading in addition to the depot's general handling time. Learn more No
Time of the first order visited first_visited_location_started_at Optionally, you can specify the start time for the first order in the "first_visited_location_started_at" field. Use it in case of additional planning and when you want to lock part of the route (or the whole route) in a particular sequence. No
Deliver as soon as possible: need to start early; penalty for the average time of arrival after the time window penalty.arrival_after_start.as_soon_as_possible; penalty.arrival_after_start.average_h The fields are used together and specify the need to deliver all orders as early as possible. Learn more No
Excel field group Attributes Comments on entering data Required field
Loading time, depending on the vehicle, s depot_extra_service_duration_s The time needed for loading in addition to the depot's general handling time. Learn more No
Time of the first order visited first_visited_location_started_at Optionally, you can specify the start time for the first order in the "first_visited_location_started_at" field. Use it in case of additional planning and when you want to lock part of the route (or the whole route) in a particular sequence. No
Deliver as soon as possible: need to start early; penalty for the average time of arrival after the time window penalty.arrival_after_start.as_soon_as_possible; penalty.arrival_after_start.average_h The fields are used together and specify the need to deliver all orders as early as possible. Learn more No

Distribution by zone and compatibility

Excel field group Attributes Comments on entering data Required field
Vehicle properties; incompatible vehicle properties tags, excluded_tags Parameters for order and vehicle compatibility. For a single vehicle, you can specify multiple tags, the tags are separated by commas. A tag is any string that identifies the necessary properties of the vehicle/courier clearly for the user. Only the vehicle having all the tags specified for the order can be selected for the order. The tags are case-sensitive. Use "excluded_tags" when you have too many vehicles or tags and it's easier to use the "opt-out" method (that is, to specify the properties that the vehicles don't have). Learn more No
Allowed geofences allowed_zones Geofences where the vehicle/courier can complete orders. Learn more No
Prohibited geofences forbidden_zones Geofences where the vehicle/courier can't complete orders. Learn more No
Optional geofences optional_zones.N.zone; optional_zones.N.value Geofences that carry bonuses or penalties for vehicles/couriers. Learn more No
Incompatible geofences incompatible_zones Geofences that can't be in the same courier run. Learn more No
Excel field group Attributes Comments on entering data Required field
Vehicle properties; incompatible vehicle properties tags, excluded_tags Parameters for order and vehicle compatibility. For a single vehicle, you can specify multiple tags, the tags are separated by commas. A tag is any string that identifies the necessary properties of the vehicle/courier clearly for the user. Only the vehicle having all the tags specified for the order can be selected for the order. The tags are case-sensitive. Use "excluded_tags" when you have too many vehicles or tags and it's easier to use the "opt-out" method (that is, to specify the properties that the vehicles don't have). Learn more No
Allowed geofences allowed_zones Geofences where the vehicle/courier can complete orders. Learn more No
Prohibited geofences forbidden_zones Geofences where the vehicle/courier can't complete orders. Learn more No
Optional geofences optional_zones.N.zone; optional_zones.N.value Geofences that carry bonuses or penalties for vehicles/couriers. Learn more No
Incompatible geofences incompatible_zones Geofences that can't be in the same courier run. Learn more No

Cost and payouts

Excel field group Attributes Comments on entering data Required field
Cost of using a vehicle: per km; per location; per hour of work; for the fact of using a vehicle; per ton-kilometre; per run cost.km; cost.location; cost.hour; cost.fixed; cost.tonne_km; cost.run The cost of using the vehicle or courier for the algorithm (not a rate, but a reference point for the algorithm to select a particular routing option). The costs "cost.km" and "cost.hour" must not be equal to 0. If you don't know what values to enter in those fields, it's better to leave the default values (cost.fixed = 3000, cost.hour = 100, cost.km=8) or leave them empty (in this case, the default values are used). Learn more Yes
Formula for calculating the cost of using a vehicle cost or cost.route, cost.shift, cost.run A mathematical expression for calculating the cost of a route for the company. It is set for the route as a whole or separately for the route, shift, and run. Learn more No
Formula for calculating the courier's payout payout or payout.route, payout.shift, payout.run A mathematical expression for calculating the amount to be paid to the courier for the completed route. It is set for the route as a whole or separately for the route, shift, and run. Learn more No
Excel field group Attributes Comments on entering data Required field
Cost of using a vehicle: per km; per location; per hour of work; for the fact of using a vehicle; per ton-kilometre; per run cost.km; cost.location; cost.hour; cost.fixed; cost.tonne_km; cost.run The cost of using the vehicle or courier for the algorithm (not a rate, but a reference point for the algorithm to select a particular routing option). The costs "cost.km" and "cost.hour" must not be equal to 0. If you don't know what values to enter in those fields, it's better to leave the default values (cost.fixed = 3000, cost.hour = 100, cost.km=8) or leave them empty (in this case, the default values are used). Learn more Yes
Formula for calculating the cost of using a vehicle cost or cost.route, cost.shift, cost.run A mathematical expression for calculating the cost of a route for the company. It is set for the route as a whole or separately for the route, shift, and run. Learn more No
Formula for calculating the courier's payout payout or payout.route, payout.shift, payout.run A mathematical expression for calculating the amount to be paid to the courier for the completed route. It is set for the route as a whole or separately for the route, shift, and run. Learn more No

Restrictions for walking couriers or parts of the route

Excel field group Attributes Comments on entering data Required field
Maximum number of units that the walking courier can carry walking_courier.capacity.units Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Cost of walking delivery walking_courier.cost.km; walking_courier.cost.hour Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Maximum distance between two points of walking parts of the route, m; penalty for violating the restriction walking_courier.restrictions.max_walking_edge_distance_m.value; walking_courier.restrictions.max_walking_edge_distance_m.penalty Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Maximum walking distance in a parking session, m; penalty for violating the restriction walking_courier.restrictions.max_parking_walking_distance_m.value; walking_courier.restrictions.max_parking_walking_distance_m.penalty Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Maximum duration of a parking session, s; penalty for violating the restriction walking_courier.restrictions.max_parking_duration_s.value; walking_courier.restrictions.max_parking_duration_s.penalty Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Excel field group Attributes Comments on entering data Required field
Maximum number of units that the walking courier can carry walking_courier.capacity.units Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Cost of walking delivery walking_courier.cost.km; walking_courier.cost.hour Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Maximum distance between two points of walking parts of the route, m; penalty for violating the restriction walking_courier.restrictions.max_walking_edge_distance_m.value; walking_courier.restrictions.max_walking_edge_distance_m.penalty Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Maximum walking distance in a parking session, m; penalty for violating the restriction walking_courier.restrictions.max_parking_walking_distance_m.value; walking_courier.restrictions.max_parking_walking_distance_m.penalty Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No
Maximum duration of a parking session, s; penalty for violating the restriction walking_courier.restrictions.max_parking_duration_s.value; walking_courier.restrictions.max_parking_duration_s.penalty Used in delivery scenarios where the vehicle is parked before the walking part of the route. Learn more No

Other characteristics of couriers and vehicles

Excel field group Attributes Comments on entering data Required field
Need to leave the planned route unchanged fixed_planned_route The need to leave the route from planned_route unchanged. Default value: FALSE. Learn more No
Service time coefficient service_duration_multiplier; shared_service_duration_multiplier The coefficient of acceleration/deceleration of the vehicles/couriers relative to the service time. We only recommend this option for more experienced users. Learn more No
Speed coefficient travel_time_multiplier The coefficient of acceleration/deceleration of the vehicle/courier relative to the speed calculated from statistics. We only recommend this option for more experienced users. Learn more No
Excel field group Attributes Comments on entering data Required field
Need to leave the planned route unchanged fixed_planned_route The need to leave the route from planned_route unchanged. Default value: FALSE. Learn more No
Service time coefficient service_duration_multiplier; shared_service_duration_multiplier The coefficient of acceleration/deceleration of the vehicles/couriers relative to the service time. We only recommend this option for more experienced users. Learn more No
Speed coefficient travel_time_multiplier The coefficient of acceleration/deceleration of the vehicle/courier relative to the speed calculated from statistics. We only recommend this option for more experienced users. Learn more No

Vehicle shifts and breaks

Multiple shifts can be specified for one vehicle/courier. The values are filled out one per row as follows: first, the field group with the shifts.0 prefix, then shifts.1, shifts.2, and so on. This number serves as the shift identifier for the route planning service.

Note.

At least one shift must be defined.

You can specify multiple breaks for one vehicle/courier. Values are entered one per row as follows: first, the field group with the rest_schedule.breaks.0 prefix, then rest_schedule.breaks.1, rest_schedule.breaks.2, and so on.

Shifts
Excel field group Attributes Comments on entering data Required field
Start and end time of the shift; hard time window of the shift shifts.N.time_window; shifts.N.hard_time_window

Driver's availability time for routing. If the regular working hours for vehicles/couriers are, for example, 9:00 to 17:00 (with some overtime on occasion), it's better to specify the available working hours right away, for example, 9:00 to 17:30). When setting the time window for the shift, it's critical to keep account of the time at the beginning of the route and the time at the end of the route, because the algorithm considers this time to be included into the vehicle or courier's working hours. Likewise, if the vehicle/courier returns to the depot, this time is also taken into account in the working hours of the vehicle/courier (and should be reflected in the shift's time window). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

Yes
Hard time window, TRUE/FALSE shifts.N.hard_window

TRUE: The shift's time window can't be violated under any circumstances. FALSE: The shift's time window can be violated (if this helps to allocate resources better). You may leave this field empty: in this case, the time window is soft (it may be violated). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Maximum number of runs per shift shifts.N.max_runs The maximum number of runs that can be performed per shift. Learn more No
Time between shifts, s shifts.N.service_duration_s You should specify this time only when a vehicle has several consecutive shifts, even with overlapping time windows (for example, Shift 1: 9:00 to 14:00, Shift 2: 13:00 to 18:00. It means that Shift 1 may end before 14:00, but never later than that. Likewise, Shift 2 may not begin before 13:00, but may begin later). If you need to use both shifts for routing, this parameter is added between those two shifts. Learn more No
Penalties: per minute of shift window violation; for the violation of the shift window; per minute of early shift start; for early shift start; per minute of late shift end; for late shift end shifts.N.penalty.out_of_time. minute; shifts.N.penalty. out_of_time.fixed; shifts.N.penalty.early.minute; shifts.N.penalty.early.fixed; shifts.N.penalty.late.minute; shifts.N.penalty.late.fixed Penalties for violation of the order time window. We recommend that you leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Change this field only when it's clear how that would affect routing. Changes may be needed in the following scenarios: early start of the shift is not allowed (but late end of the shift is possible), or vice versa. Violation of the shift time window is acceptable if this results in better use of resources. A hard shift window and the Maximum shift duration. Learn more No
Maximum shift duration, s: soft restriction; hard restriction shifts.N.max_duration_s; shifts.N.hard_max_duration_s We recommend leaving it blank when you first start routing. Learn more No
Minimum number of stops per shift; penalty per each stop missing under the minimum number; penalty for not reaching the minimum number of stops shifts.N.minimal_stops; shifts.N.penalty. stop_lack.per_stop; shifts.N.penalty.stop_lack.fixed We recommend leaving it blank when you first start routing. You can make it mandatory for your own vehicles later. Learn more No
Maximum number of stops per shift; penalty per each stop in excess of the maximum number; penalty for exceeding the maximum number of stops shifts.N.maximal_stops; shifts.N.penalty.stop_excess. per_stop; shifts.N.penalty. stop_excess.fixed We recommend leaving it blank when you first start routing. You can later use it to limit the number of points on the route: for heavy vehicles (if you can't limit it by other parameters, for example, by service time ). You can also use it to set empirical limits on the number of points on the route (for example, if it's proven that the courier can't complete a route of more than a certain number of points without violations because of contingencies). Learn more No
Maximum mileage per shift, km; penalty for the fact that mileage exceeds maximum; penalty for each km of mileage in excess of maximum shifts.N.max_mileage_km, shifts.N.penalty. max_mileage.fixed; shifts.N.penalty. max_mileage.km Leave it blank when when you first start routing. You can use it to limit the mileage of vehicles or couriers per shift later. Learn more No
Balanced group ID shifts.N.balanced_group_id We recommend leaving it blank when you first start routing.If you need to get more uniform routes, you can fill out the balanced group s on the Options sheet and specify the ID of the balanced group in this field. Learn more No
Visited orders; time of the first order visited shifts.N.visited_locations In the "shifts.N.visited_locations" field, you can list the "id" of the orders that have already been assigned to this vehicle. The sequence is critical in this list. No
Excel field group Attributes Comments on entering data Required field
Start and end time of the shift; hard time window of the shift shifts.N.time_window; shifts.N.hard_time_window

Driver's availability time for routing. If the regular working hours for vehicles/couriers are, for example, 9:00 to 17:00 (with some overtime on occasion), it's better to specify the available working hours right away, for example, 9:00 to 17:30). When setting the time window for the shift, it's critical to keep account of the time at the beginning of the route and the time at the end of the route, because the algorithm considers this time to be included into the vehicle or courier's working hours. Likewise, if the vehicle/courier returns to the depot, this time is also taken into account in the working hours of the vehicle/courier (and should be reflected in the shift's time window). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

Yes
Hard time window, TRUE/FALSE shifts.N.hard_window

TRUE: The shift's time window can't be violated under any circumstances. FALSE: The shift's time window can be violated (if this helps to allocate resources better). You may leave this field empty: in this case, the time window is soft (it may be violated). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Maximum number of runs per shift shifts.N.max_runs The maximum number of runs that can be performed per shift. Learn more No
Time between shifts, s shifts.N.service_duration_s You should specify this time only when a vehicle has several consecutive shifts, even with overlapping time windows (for example, Shift 1: 9:00 to 14:00, Shift 2: 13:00 to 18:00. It means that Shift 1 may end before 14:00, but never later than that. Likewise, Shift 2 may not begin before 13:00, but may begin later). If you need to use both shifts for routing, this parameter is added between those two shifts. Learn more No
Penalties: per minute of shift window violation; for the violation of the shift window; per minute of early shift start; for early shift start; per minute of late shift end; for late shift end shifts.N.penalty.out_of_time. minute; shifts.N.penalty. out_of_time.fixed; shifts.N.penalty.early.minute; shifts.N.penalty.early.fixed; shifts.N.penalty.late.minute; shifts.N.penalty.late.fixed Penalties for violation of the order time window. We recommend that you leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Change this field only when it's clear how that would affect routing. Changes may be needed in the following scenarios: early start of the shift is not allowed (but late end of the shift is possible), or vice versa. Violation of the shift time window is acceptable if this results in better use of resources. A hard shift window and the Maximum shift duration. Learn more No
Maximum shift duration, s: soft restriction; hard restriction shifts.N.max_duration_s; shifts.N.hard_max_duration_s We recommend leaving it blank when you first start routing. Learn more No
Minimum number of stops per shift; penalty per each stop missing under the minimum number; penalty for not reaching the minimum number of stops shifts.N.minimal_stops; shifts.N.penalty. stop_lack.per_stop; shifts.N.penalty.stop_lack.fixed We recommend leaving it blank when you first start routing. You can make it mandatory for your own vehicles later. Learn more No
Maximum number of stops per shift; penalty per each stop in excess of the maximum number; penalty for exceeding the maximum number of stops shifts.N.maximal_stops; shifts.N.penalty.stop_excess. per_stop; shifts.N.penalty. stop_excess.fixed We recommend leaving it blank when you first start routing. You can later use it to limit the number of points on the route: for heavy vehicles (if you can't limit it by other parameters, for example, by service time ). You can also use it to set empirical limits on the number of points on the route (for example, if it's proven that the courier can't complete a route of more than a certain number of points without violations because of contingencies). Learn more No
Maximum mileage per shift, km; penalty for the fact that mileage exceeds maximum; penalty for each km of mileage in excess of maximum shifts.N.max_mileage_km, shifts.N.penalty. max_mileage.fixed; shifts.N.penalty. max_mileage.km Leave it blank when when you first start routing. You can use it to limit the mileage of vehicles or couriers per shift later. Learn more No
Balanced group ID shifts.N.balanced_group_id We recommend leaving it blank when you first start routing.If you need to get more uniform routes, you can fill out the balanced group s on the Options sheet and specify the ID of the balanced group in this field. Learn more No
Visited orders; time of the first order visited shifts.N.visited_locations In the "shifts.N.visited_locations" field, you can list the "id" of the orders that have already been assigned to this vehicle. The sequence is critical in this list. No
Breaks
Excel field group Attributes Comments on entering data Required field
Duration of the break, s rest_schedule.breaks.N. rest_duration_s Duration of the break (in seconds). Learn more No
Penalties: for an early break start, per minute of an early break start, for a late break start, per minute of a late break start rest_schedule.breaks.N. penalty.early.fixed; rest_schedule.breaks.N.penalty. early.minute; rest_schedule.breaks.N.penalty. late.fixed; rest_schedule.breaks.N.penalty. late.minute The break is a soft restriction: in some cases, it may start earlier or later than the range defined in the "work_time_range_till_rest" field. The algorithm takes penalties into account: "early", if a break started before the range; "late", if the break started later than the range. The higher are the penalties, the more severe is the restriction violation. We recommend that you use the default values (fixed = 1000, minute = 17) or empty values (then the default values are used). Learn more No
Working hours from the start of the route rest_schedule.breaks.N.work_time_range_from_start

Minimum and maximum working hours from the start of the route. It takes into account the travel time, waiting time, and handling time at order locations and at the depots.

Set as a time range in the relative format. Learn more

No
Working hours from the last break rest_schedule.breaks.N.work_time_range_till_rest

The minimum and maximum working hours from the last break (or from the start of the route if it's the first break). It takes into account the travel time, waiting time, and handling time at order locations and at the depots.

Set as a time range in the relative format. Learn more

No
Driving time and waiting time from the start of the route rest_schedule.breaks.N.travel_time_range

The minimum and maximum travel time and waiting time from the start of the route. Handling time is not taken into account.

Set as a time range in the relative format. Learn more

No
Driving time and waiting time from the previous order rest_schedule.breaks.N.continuous_travel_time_range

The minimum and maximum travel time and waiting time from the completion of the previous order. Handling time is not taken into account.

Set as a time range in the relative format. Learn more

No
Excel field group Attributes Comments on entering data Required field
Duration of the break, s rest_schedule.breaks.N. rest_duration_s Duration of the break (in seconds). Learn more No
Penalties: for an early break start, per minute of an early break start, for a late break start, per minute of a late break start rest_schedule.breaks.N. penalty.early.fixed; rest_schedule.breaks.N.penalty. early.minute; rest_schedule.breaks.N.penalty. late.fixed; rest_schedule.breaks.N.penalty. late.minute The break is a soft restriction: in some cases, it may start earlier or later than the range defined in the "work_time_range_till_rest" field. The algorithm takes penalties into account: "early", if a break started before the range; "late", if the break started later than the range. The higher are the penalties, the more severe is the restriction violation. We recommend that you use the default values (fixed = 1000, minute = 17) or empty values (then the default values are used). Learn more No
Working hours from the start of the route rest_schedule.breaks.N.work_time_range_from_start

Minimum and maximum working hours from the start of the route. It takes into account the travel time, waiting time, and handling time at order locations and at the depots.

Set as a time range in the relative format. Learn more

No
Working hours from the last break rest_schedule.breaks.N.work_time_range_till_rest

The minimum and maximum working hours from the last break (or from the start of the route if it's the first break). It takes into account the travel time, waiting time, and handling time at order locations and at the depots.

Set as a time range in the relative format. Learn more

No
Driving time and waiting time from the start of the route rest_schedule.breaks.N.travel_time_range

The minimum and maximum travel time and waiting time from the start of the route. Handling time is not taken into account.

Set as a time range in the relative format. Learn more

No
Driving time and waiting time from the previous order rest_schedule.breaks.N.continuous_travel_time_range

The minimum and maximum travel time and waiting time from the completion of the previous order. Handling time is not taken into account.

Set as a time range in the relative format. Learn more

No

Depot, Depots

The Depot sheet contains information about the depot that the shipment is going to be made from. Only one row is filled out on this sheet.

If you use multiple depots, you need the Depots sheet, where any number of depots can be specified.

You have to fill out at least one depot row. If the vehicles or couriers don't start from the depot and don't return to the depot at the end of the route (there's no location that they could be assigned to), you can specify the coordinates of any point as a depot, for example, the coordinates of the office or city center.

Depot and Depots sheets are mutually exclusive, so you can use only one of them.

Note.

On the Depot/Depots sheet, you only have to fill out the following fields:

  • Depot name (you can just enter “Depot”).

  • Depot coordinates or address.

  • Depot working hours (you can set the maximum time window: 00:00–23:59 for the current planning day or 00:00–1.23:59 for the current and next planning days).

In the other fields, you can leave the default (or empty) values and it will work for the first run of the routing task.

The table below describes the acceptable fields on the Depot/Depots sheet.

Basic depot information

Excel field group Attributes Comments on entering data Required field
Depot number id The depot "id" must not repeat any order "id" (it means that the order "id" and depot "id" must be unique). If "id" is blank, then when you upload the data from Excel and send the task for routing, "id" is set to 0. Learn more Yes
Depot name; depot title; depot description ref; title; description The depot's numeric or string ID to be displayed in the Planning interface; depot name; depot description. Learn more No
Latitude; longitude point.lat; point.lon Coordinates of the depot point: latitude (point.lat), longitude (point.lon). Learn more No, if you specify the depot address (when you upload data from the interface, you can geocode the address)
Depot address address Address for geocoding. Learn more No (but if the depot coordinates aren't entered, you must enter the address)
Excel field group Attributes Comments on entering data Required field
Depot number id The depot "id" must not repeat any order "id" (it means that the order "id" and depot "id" must be unique). If "id" is blank, then when you upload the data from Excel and send the task for routing, "id" is set to 0. Learn more Yes
Depot name; depot title; depot description ref; title; description The depot's numeric or string ID to be displayed in the Planning interface; depot name; depot description. Learn more No
Latitude; longitude point.lat; point.lon Coordinates of the depot point: latitude (point.lat), longitude (point.lon). Learn more No, if you specify the depot address (when you upload data from the interface, you can geocode the address)
Depot address address Address for geocoding. Learn more No (but if the depot coordinates aren't entered, you must enter the address)

Depot time windows

Excel field group Attributes Comments on entering data Required field
Depot working hours time_window If you don't have any special requirements for the time when vehicles should return to the depot or depot throughput, we recommend that you specify the broadest possible time window for the depot (for example, 00:00–23:59 for single-day planning or 00:00–1.23:59 for 2-day planning). Learn more Yes (if time_windows aren't specified)
Multiple time windows time_windows.N.time_window Use if the window has “breaks” during the day or the windows are different on different days. Can't be used together with time_window. Learn more Yes (unless time_window is specified)
Hard time window interval hard_time_window

If the main depot window is soft, you can set a hard time window around it. Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Hard time window, TRUE/FALSE hard_window

TRUE: The depot's time window can't be violated under any circumstances. FALSE: The depot's time window may be violated (if this helps to allocate resources better). You may leave this field empty: in this case, the time window is soft (it may be violated). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Time windows (soft and hard) for loading, additional loading, or unloading orders at the depot time_windows_loading.time_window; time_windows_loading.hard_time_window; time_windows_refilling.time_window; time_windows_refilling.hard_time_window; time_windows_unloading.time_window; time_windows_unloading.hard_time_window One window or an array of windows can be set for each window type. If a window of some type is not set, the general depot time window is used for the corresponding operation. Learn more No
Time before the start of each run until the order is ready at the depot, s preliminary_service_duration_s Specified if it's necessary to perform preliminary operations at the depot before the order is ready. Learn more No
Penalties for time window violations: per minute of violation of depot's time window; for the violation of depot's time window; for the violation of the depot's time window (early arrival); per minute of violation of the depot's time window (early arrival); for the violation of the depot's time window (late arrival); per minute of violation of the depot's time window (late arrival) penalty.out_of_time.minute; penalty.out_of_time.fixed; penalty.early.fixed; penalty.early.minute; penalty.late.fixed; penalty.late.minute Penalties for violation of the order time window. Leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Only edit these fields if it is important for your purpose. Learn more No
Excel field group Attributes Comments on entering data Required field
Depot working hours time_window If you don't have any special requirements for the time when vehicles should return to the depot or depot throughput, we recommend that you specify the broadest possible time window for the depot (for example, 00:00–23:59 for single-day planning or 00:00–1.23:59 for 2-day planning). Learn more Yes (if time_windows aren't specified)
Multiple time windows time_windows.N.time_window Use if the window has “breaks” during the day or the windows are different on different days. Can't be used together with time_window. Learn more Yes (unless time_window is specified)
Hard time window interval hard_time_window

If the main depot window is soft, you can set a hard time window around it. Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Hard time window, TRUE/FALSE hard_window

TRUE: The depot's time window can't be violated under any circumstances. FALSE: The depot's time window may be violated (if this helps to allocate resources better). You may leave this field empty: in this case, the time window is soft (it may be violated). Learn more

Please note: the hard_time_window and hard_window fields are mutually exclusive.

No
Time windows (soft and hard) for loading, additional loading, or unloading orders at the depot time_windows_loading.time_window; time_windows_loading.hard_time_window; time_windows_refilling.time_window; time_windows_refilling.hard_time_window; time_windows_unloading.time_window; time_windows_unloading.hard_time_window One window or an array of windows can be set for each window type. If a window of some type is not set, the general depot time window is used for the corresponding operation. Learn more No
Time before the start of each run until the order is ready at the depot, s preliminary_service_duration_s Specified if it's necessary to perform preliminary operations at the depot before the order is ready. Learn more No
Penalties for time window violations: per minute of violation of depot's time window; for the violation of depot's time window; for the violation of the depot's time window (early arrival); per minute of violation of the depot's time window (early arrival); for the violation of the depot's time window (late arrival); per minute of violation of the depot's time window (late arrival) penalty.out_of_time.minute; penalty.out_of_time.fixed; penalty.early.fixed; penalty.early.minute; penalty.late.fixed; penalty.late.minute Penalties for violation of the order time window. Leave the default values (fixed = 1000, minute = 17) or empty values (in this case, the default value is used). Only edit these fields if it is important for your purpose. Learn more No

Handling time at depot

Excel field group Attributes Comments on entering data Required field
Handling time at the start of the run, s; handling time at the end of the run, s service_duration_s; finish_service_duration_s When you fill it out, you have to take into account the time window of the shift. For example, if you only need to fill out the time that should only be added between the runs, you can do the following: 1. Use only service_duration_s. 2. Bring forward the start of the first shift by service_duration_s. For example: if drivers work from 9:00 to 17:00, allow for 30 minutes between the runs for loading. At the beginning of the route the vehicles are already loaded, and the drivers depart at 9:00. Hence, schedule a shift from 8:30 to 17:00 and set service_duration_s to 1800 (then the algorithm will assume that the working hours begin at 8:30, half an hour is allowed for loading, and departure is possible at 9:00. In the future, this half-hour will be added between runs). Learn more No
Time interval from unloading order at cross-dock till loading for next route, s crossdock_safety_waiting_duration_s Time buffer for cross docking: The minimum amount of time that must pass after unloading the order at the cross-dock and before this order can be picked up for delivery to the client. Learn more No
Excel field group Attributes Comments on entering data Required field
Handling time at the start of the run, s; handling time at the end of the run, s service_duration_s; finish_service_duration_s When you fill it out, you have to take into account the time window of the shift. For example, if you only need to fill out the time that should only be added between the runs, you can do the following: 1. Use only service_duration_s. 2. Bring forward the start of the first shift by service_duration_s. For example: if drivers work from 9:00 to 17:00, allow for 30 minutes between the runs for loading. At the beginning of the route the vehicles are already loaded, and the drivers depart at 9:00. Hence, schedule a shift from 8:30 to 17:00 and set service_duration_s to 1800 (then the algorithm will assume that the working hours begin at 8:30, half an hour is allowed for loading, and departure is possible at 9:00. In the future, this half-hour will be added between runs). Learn more No
Time interval from unloading order at cross-dock till loading for next route, s crossdock_safety_waiting_duration_s Time buffer for cross docking: The minimum amount of time that must pass after unloading the order at the cross-dock and before this order can be picked up for delivery to the client. Learn more No

Depot throughput capacity

Excel field group Attributes Comments on entering data Required field
Throughput, kg/hour; throughput, cargo units/hour throughput.kg_per_hour; throughput.units_per_hour We recommend leaving these fields blank for your first routing runs. Before using the throughput parameters, we recommend using flexible_start_time. In practice, it has the same effect as distributing the vehicle start time over time. Learn more No
Throughput, vehicles/hour

throughput.vehicle_count

or

throughput.vehicle_count.N.value; throughput.vehicle_count.N.time_window

This lets you take into account the number of available loading docks at a depot for loading or unloading (throughput.vehicle_count).

If the number of available docks depends on the time, you can set a different value for the throughput.vehicle_count.N.value parameter for throughput.vehicle_count.N.time_window time windows. Learn more

No
Penalties for the throughput violation: fixed penalty; per kilogram of excess throughput; for each cargo unit in excess of throughput; for each vehicle in excess of throughput penalty.throughput.fixed; penalty.throughput.kg; penalty.throughput.unit; penalty.throughput.vehicle We recommend leaving these fields blank for your first routing runs. Next, you can use the default values (penalty.throughput.fixed = 1000, penalty.throughput.kg = 50, penalty.throughput. unit = 100, penalty.throughput.vehicle = 100000) and adjust them based on the results. Learn more No
Staging throughput capacity, kg/hour

package_throughput.kg_per_hour

or

package_throughput.kg_per_hour.N.value; package_throughput.kg_per_hour.N.time_window

Sets the maximum weight that can be staged at the depot in one hour.

If the maximum weight depends on the time, you can set different values for time windows. Learn more

No
Staging throughput capacity, cargo units/hour

package_throughput.unit_per_hour

or

package_throughput.unit_per_hour.N.value; package_throughput.unit_per_hour.N.time_window

Sets the maximum number of cargo units that can be staged at the depot in one hour.

You can set different values for time windows. Learn more

No
Fixed penalty for staging throughput capacity violation; penalty per kilogram over staging throughput capacity; penalty for every cargo unit over the staging throughput capacity penalty.package_throughput.fixed; penalty.package_throughput.kg; penalty.package_throughput.unit We recommend leaving these fields blank for your first routing runs. Next, you can use the default values (penalty.package_throughput.fixed = 1000, penalty.package_throughput.kg = 50, penalty.package_throughput.unit = 100) and adjust them based on the results. No
Excel field group Attributes Comments on entering data Required field
Throughput, kg/hour; throughput, cargo units/hour throughput.kg_per_hour; throughput.units_per_hour We recommend leaving these fields blank for your first routing runs. Before using the throughput parameters, we recommend using flexible_start_time. In practice, it has the same effect as distributing the vehicle start time over time. Learn more No
Throughput, vehicles/hour

throughput.vehicle_count

or

throughput.vehicle_count.N.value; throughput.vehicle_count.N.time_window

This lets you take into account the number of available loading docks at a depot for loading or unloading (throughput.vehicle_count).

If the number of available docks depends on the time, you can set a different value for the throughput.vehicle_count.N.value parameter for throughput.vehicle_count.N.time_window time windows. Learn more

No
Penalties for the throughput violation: fixed penalty; per kilogram of excess throughput; for each cargo unit in excess of throughput; for each vehicle in excess of throughput penalty.throughput.fixed; penalty.throughput.kg; penalty.throughput.unit; penalty.throughput.vehicle We recommend leaving these fields blank for your first routing runs. Next, you can use the default values (penalty.throughput.fixed = 1000, penalty.throughput.kg = 50, penalty.throughput. unit = 100, penalty.throughput.vehicle = 100000) and adjust them based on the results. Learn more No
Staging throughput capacity, kg/hour

package_throughput.kg_per_hour

or

package_throughput.kg_per_hour.N.value; package_throughput.kg_per_hour.N.time_window

Sets the maximum weight that can be staged at the depot in one hour.

If the maximum weight depends on the time, you can set different values for time windows. Learn more

No
Staging throughput capacity, cargo units/hour

package_throughput.unit_per_hour

or

package_throughput.unit_per_hour.N.value; package_throughput.unit_per_hour.N.time_window

Sets the maximum number of cargo units that can be staged at the depot in one hour.

You can set different values for time windows. Learn more

No
Fixed penalty for staging throughput capacity violation; penalty per kilogram over staging throughput capacity; penalty for every cargo unit over the staging throughput capacity penalty.package_throughput.fixed; penalty.package_throughput.kg; penalty.package_throughput.unit We recommend leaving these fields blank for your first routing runs. Next, you can use the default values (penalty.package_throughput.fixed = 1000, penalty.package_throughput.kg = 50, penalty.package_throughput.unit = 100) and adjust them based on the results. No

Other depot settings

Excel field group Attributes Comments on entering data Required field
Flexible start time, TRUE/FALSE flexible_start_time Use this parameter if you need to get the required start time for the vehicle or courier. If the courier's working hours are counted from the shift start, you don't need to enable this parameter. Learn more No
Proximity algorithms allowed, TRUE/FALSE

use_in_proximity

Whether or not depot proximity is taken into account when grouping routes. Learn more No
Excel field group Attributes Comments on entering data Required field
Flexible start time, TRUE/FALSE flexible_start_time Use this parameter if you need to get the required start time for the vehicle or courier. If the courier's working hours are counted from the shift start, you don't need to enable this parameter. Learn more No
Proximity algorithms allowed, TRUE/FALSE

use_in_proximity

Whether or not depot proximity is taken into account when grouping routes. Learn more No

Incompatible_order_types

This sheet contains settings for incompatible order types. If you don't use order incompatibility (load_types field), you can leave this sheet blank.

There are only 2 columns on this sheet: in the type column, specify one load_types value. In the incompatible_load_types column, list incompatible load_types separated by commas. You only need to specify each pair of incompatible "load_types" once.

For example, if types 1, 2, 3, and 4 are incompatible, the following rows are enough:

type incompatible_load_types
1 2,3,4
2 3,4
3 4
type incompatible_load_types
1 2,3,4
2 3,4
3 4

Location_groups

This sheet contains settings for order groups. If you don't use order groups (the options.location_groups field), you may leave this sheet blank.

Excel field group Attributes Comments on entering data Required field
Name of order group title Name of the group. Does not affect scheduling, needed only for ease of use of multiple groups No
IDs of orders location_ids List of IDs of orders included in the group. Separated by commas. One order can only belong to 1 group Yes
Group can't be broken up solid Default value: FALSE. The TRUE value specifies that the group can't be broken up: orders in it must be delivered without other orders between them. Order sequence within the group isn't fixed. Learn more No
Group is indivisible dependent Default value: FALSE. The TRUE value specifies that the group cannot be divided: all orders in it must either be completed or (if at least one order can't be delivered) set to unallocated together. Learn more No
Excel field group Attributes Comments on entering data Required field
Name of order group title Name of the group. Does not affect scheduling, needed only for ease of use of multiple groups No
IDs of orders location_ids List of IDs of orders included in the group. Separated by commas. One order can only belong to 1 group Yes
Group can't be broken up solid Default value: FALSE. The TRUE value specifies that the group can't be broken up: orders in it must be delivered without other orders between them. Order sequence within the group isn't fixed. Learn more No
Group is indivisible dependent Default value: FALSE. The TRUE value specifies that the group cannot be divided: all orders in it must either be completed or (if at least one order can't be delivered) set to unallocated together. Learn more No

Options

This sheet contains routing options. Options are filled out one per row. For the first run of the routing, you may leave the values in this sheet blank.

The table below describes the acceptable fields on the Options sheet.

For late arrivals and undistributed orders

Excel field group Attributes Comments on entering data Required field
Maximum share of dropped orders max_drop_penalty_percentage Default value: 100. Learn more No
Fixed penalty for violation of maximum share of dropped orders; penalty for each extra percentage of the ratio of the total penalty for dropped orders to the maximum possible penalty.drop_penalty_percentage.fixed; penalty.drop_penalty_percentage.per_percent Penalties are only imposed when using the max_drop_penalty_percentage parameter. Learn more No
Penalty for non-delivery is proportional to the weight/volume of orders weighted_drop_penalty Default value: FALSE. Use TRUE in the scenarios where orders have significantly different weight/volume and you use vehicles of different capacities (and the number of vehicles is such that their utilization must be high to deliver all the orders). No
Penalize for a service that's later than the time window penalize_late_service Default value: FALSE. The TRUE value is recommended for increasing matches between service time and order windows. Learn more No
Excel field group Attributes Comments on entering data Required field
Maximum share of dropped orders max_drop_penalty_percentage Default value: 100. Learn more No
Fixed penalty for violation of maximum share of dropped orders; penalty for each extra percentage of the ratio of the total penalty for dropped orders to the maximum possible penalty.drop_penalty_percentage.fixed; penalty.drop_penalty_percentage.per_percent Penalties are only imposed when using the max_drop_penalty_percentage parameter. Learn more No
Penalty for non-delivery is proportional to the weight/volume of orders weighted_drop_penalty Default value: FALSE. Use TRUE in the scenarios where orders have significantly different weight/volume and you use vehicles of different capacities (and the number of vehicles is such that their utilization must be high to deliver all the orders). No
Penalize for a service that's later than the time window penalize_late_service Default value: FALSE. The TRUE value is recommended for increasing matches between service time and order windows. Learn more No

For multi-orders

Excel field group Attributes Comments on entering data Required field
Combine orders into multi-orders? merge_multiorders We recommend setting it to TRUE: in most cases, that's the expected use case. Learn more No
Merge service time for multi-orders wait_in_multiorders If FALSE, then the client_service_duration_s time is accounted separately for each order in a multi-order. If TRUE, the maximum value of the client_service_duration_s parameter is taken into account from all orders in the multi-order. Default value: TRUE. Learn more. No
Penalty for each multi-order address that had to be visited again; for each repeated arrival at the multi-order address; for each courier that visits the multi-order address again penalty.multiorders.per_extra_point; penalty.multiorders.per_extra_visit; penalty.multiorders.per_extra_vehicle Penalties for return visits to multi-order points. Learn more No
Excel field group Attributes Comments on entering data Required field
Combine orders into multi-orders? merge_multiorders We recommend setting it to TRUE: in most cases, that's the expected use case. Learn more No
Merge service time for multi-orders wait_in_multiorders If FALSE, then the client_service_duration_s time is accounted separately for each order in a multi-order. If TRUE, the maximum value of the client_service_duration_s parameter is taken into account from all orders in the multi-order. Default value: TRUE. Learn more. No
Penalty for each multi-order address that had to be visited again; for each repeated arrival at the multi-order address; for each courier that visits the multi-order address again penalty.multiorders.per_extra_point; penalty.multiorders.per_extra_visit; penalty.multiorders.per_extra_vehicle Penalties for return visits to multi-order points. Learn more No

For split orders

Excel field group Attributes Comments on entering data Required field
Maximum share of split orders, % max_split_orders_percentage This determines the maximum percentage of orders that can be split. The value can range from 0 to 100 (100 by default). Learn more No
Penalties: for deviation from the maximum share of split orders; for each excess percent of splitting penalty.split_orders_percentage.fixed; penalty.split_orders_percentage.per_percent Penalties are only imposed when using the max_split_orders_percentage parameter. Learn more No
Excel field group Attributes Comments on entering data Required field
Maximum share of split orders, % max_split_orders_percentage This determines the maximum percentage of orders that can be split. The value can range from 0 to 100 (100 by default). Learn more No
Penalties: for deviation from the maximum share of split orders; for each excess percent of splitting penalty.split_orders_percentage.fixed; penalty.split_orders_percentage.per_percent Penalties are only imposed when using the max_split_orders_percentage parameter. Learn more No

For depots

Excel field group Attributes Comments on entering data Required field
Loading when ready load_when_ready Defines the scenario of loading orders at the depot. FALSE by default, loading after all orders are ready. If the courier should start loading orders as they are ready, specify the TRUE value, the ready time location.depot_ready_time, and the loading time location.depot_duration_s. Learn more. No
Excel field group Attributes Comments on entering data Required field
Loading when ready load_when_ready Defines the scenario of loading orders at the depot. FALSE by default, loading after all orders are ready. If the courier should start loading orders as they are ready, specify the TRUE value, the ready time location.depot_ready_time, and the loading time location.depot_duration_s. Learn more. No

For other locations

Excel field group Attributes Comments on entering data Required field
Coordinates of the location that throughput is set for points_throughputs.N.point.lat; points_throughputs.N.point.lon We don't recommend using it on initial routing runs. Learn more No
Location throughput: kg per hour; unit per hour; vehicle per hour points_throughputs.N.throughput.kg_per_hour; points_throughputs.N.throughput.unit_per_hour; points_throughputs.N.throughput.vehicle_count We don't recommend using it on initial routing runs. Learn more No
Penalties for violation of location throughput capacity: fixed; for each kilogram in excess of location throughput capacity; for each cargo unit in excess of location throughput capacity; for each vehicle simultaneously loaded or unloaded at the location over the throughput capacity points_throughputs.N.penalty.throughput.fixed; points_throughputs.N.penalty.throughput.kg; points_throughputs.N.penalty.throughput.unit; points_throughputs.N.penalty.throughput.vehicle We recommend leaving these fields blank for your first routing runs. Next, you can use the default values (penalty.throughput.fixed = 1000, penalty.throughput.kg = 50, penalty.throughput. unit = 100, penalty.throughput.vehicle = 100000) and adjust them based on the results. No
Excel field group Attributes Comments on entering data Required field
Coordinates of the location that throughput is set for points_throughputs.N.point.lat; points_throughputs.N.point.lon We don't recommend using it on initial routing runs. Learn more No
Location throughput: kg per hour; unit per hour; vehicle per hour points_throughputs.N.throughput.kg_per_hour; points_throughputs.N.throughput.unit_per_hour; points_throughputs.N.throughput.vehicle_count We don't recommend using it on initial routing runs. Learn more No
Penalties for violation of location throughput capacity: fixed; for each kilogram in excess of location throughput capacity; for each cargo unit in excess of location throughput capacity; for each vehicle simultaneously loaded or unloaded at the location over the throughput capacity