# NCompass Advanced Retail: Routing and Planning

> Version: NCompass v11.15+  
> Purpose: This guide explains how to configure and use Routing and Planning in NCompass Advanced Retail.

## Contents

- [Introduction](#introduction)
- [Configuration](#configuration)
  - [Google API Key](#google-api-key)
  - [Routing Wizard](#routing-wizard)
  - [Engineer Settings](#engineer-settings)
  - [Changing Routing Settings](#changing-routing-settings)
  - [Automatic Text Messages](#automatic-text-messages)
- [Routing & Planning](#routing--planning)
  - [Automatic Routing Explanation](#automatic-routing-explanation)
  - [Access via Two Week Planner](#access-via-two-week-planner)
  - [Access via Scheduled Calls](#access-via-scheduled-calls)
  - [Routing Options](#routing-options)
  - [Suggested Routes](#suggested-routes)
  - [Manually Route Calls](#manually-route-calls)
  - [Move Calls from Other Engineers](#move-calls-from-other-engineers)
  - [Add Field Calls Ready to be Booked](#add-field-calls-ready-to-be-booked)
  - [Saving a Route](#saving-a-route)
- [Additional Planning Tools](#additional-planning-tools)
  - [Flag Tags](#flag-tags)
  - [Weight](#weight)
  - [Fleet Tracking](#fleet-tracking)
  - [Planned Route vs Actual Route](#planned-route-vs-actual-route)
  - [Map GPS Location and Current Call](#map-gps-location-and-current-call)
  - [GPS History](#gps-history)

---

## Introduction

The **Routing** module helps optimise field calls into the most efficient order, reducing travel time and distance.

In the latest release, NCompass uses Google’s upgraded **Routing API** to improve routing accuracy and optimisation, including support for **Northern Ireland** and the **Republic of Ireland**.

The module can automatically organise and time calls, making it easier to notify customers of their estimated appointment window. It can also route calls automatically and, when used with the points-based system, lock an engineer’s day once travel time pushes them beyond their working hours. This adds protection against overbooking.

---

## Configuration

Before using the Routing module in NCompass, complete the initial setup.

### Google API Key

Follow the internal guide for setting up your Google API key:

[**Setting up Google API ... | Calculus Knowledge Base**](https://kb.findesolutions.com/books/general-it/page/setting-up-google-api-for-routing-and-mapping)

> **Note:** This may already be configured if you use **NCompass Mobile** or have previously used routing in NCompass.

### Routing Wizard

Go to:

**Tool > Licencing and Quick Configuration**

On the **Routing** line, select **Click for wizard**.

#### Step 1: API Key

- Enter the API key obtained in the previous step.
- Click **Save & Next >**

#### Step 2: Engineer Timings and Locations

For each engineer you want to route, set:

- **Start Time** (`HH:MM`)
- **Start Postcode**
- Tick **Enabled**

Optional:

- Highlight engineers you want to limit by working hours.
- Enter the number of **minutes worked** for each day at the bottom of the window.
- Click **Update Selected**

> **Note:** You can edit these settings later for each engineer individually after completing the wizard.

Click **Save & Next >**

#### Step 3: Padding, Rounding, and PM Calls

Configure field call padding for the customer appointment window:

- **Start**: Add this many minutes to the start of the call
- **End**: Add this many minutes to the end of the call
- **Base Duration**: Add this many minutes to the duration of the call

Configure **rounding times**:

Google’s Routing API may return exact times such as **9:57 AM**. Use the rounding setting to round these times to your preferred option.

Configure **afternoon calls** to either:

- Start immediately after the AM calls
- Start after lunch, with a delay if needed

Click **Save & Next >**

#### Step 4: Automatic Routing

> **Recommended:** Speak to the implementation team before enabling automatic routing.

Automatic routing will route **every enabled engineer**, on **every day** where a new call is booked or an existing call is amended.

> **Important:** This may increase usage against your Google account if you exceed your monthly call allowance.

If you want to enable automatic routing:

- Set **NCompass automatically update routes** to **Yes**
- Choose a **Default Standard Route**:
  - **Fastest** *(recommended)*
  - **Furthest Call First**
  - **Furthest Call Last**
- Set **Finalize Route X Days Before** to lock field calls from amendment and route calls on the configured day/time
- Set **Lock Field Calls After Routing** if field calls should be locked once manual routing is completed

Click **Finish**

### Engineer Settings

After completing the wizard, you can update engineer-level routing details.

### Changing Routing Settings

Go to:

**Salesperson & Engineers > Edit**

#### Engineer tab

Update:

- **Default Start Time**
- **Default Start Postcode**

#### Routing tab

Update:

- **Total duration of working hours per day**

### Automatic Text Messages

To configure customer SMS notifications with estimated field call windows:

Go to:

**Salesperson & Engineers > Edit**

In the **Engineer** tab, configure:

- **Auto SMS Times Today**  
  Sends messages to all customers with a mobile number for field calls booked for **today**.  
  Example: `07:00` on the morning of the call.

- **Auto SMS Times Tomorrow**  
  Sends messages to all customers with a mobile number for field calls booked for **tomorrow**.  
  Example: `18:00` on the evening before the call.

> **Note:** These settings must be configured for each engineer individually.

---

## Routing & Planning

### Automatic Routing Explanation

NCompass can automatically route each enabled engineer for every day they have calls booked, if this has been configured in the routing wizard.

Whenever an engineer’s diary changes, that engineer and date are added to a **re-routing queue**. Once processed, NCompass recalculates the total duration of the day.

If the new total exceeds the engineer’s working hours, NCompass prevents any further calls from being booked for that engineer on that date.

This allows estimated travel time to be considered when preventing overbooking.

### Access via Two Week Planner

Go to:

**Field Calls > Two Week Planner**

Then:

- Right-click the engineer and day you want to route

### Access via Scheduled Calls

You can also access routing from **Scheduled Calls**:

- Open **Scheduled Calls** from the **Quick Links** bar or the **Field Calls** menu
- Select the **Engineer** and **Date**
- Click **Engineer >**

### Routing Options

Available options include:

- **Show engineer locations**  
  Opens the live map showing engineer locations and booked calls.

- **Show Current Route**  
  Opens the Route Planner in **view-only** mode.

- **Suggest Fastest Route**  
  Opens the Route Planner with the optimum route.

- **Edit Current Route**  
  Opens the Route Planner with editing tools.

### Suggested Routes

Use the **Suggest** buttons on the right-hand side of the window to re-route calls using Google’s API.

#### Suggest Fastest Route

Optimises the calls in the order Google determines is best.

#### Suggest Other Route

Additional routing options:

- **Fastest Route Starting with Furthest Call**  
  Makes the furthest call the first stop.

- **Fastest Route Starting with Selected Call**  
  Highlight a call in the grid to make it the first stop.

- **Fastest Route Ending with Furthest Call**  
  Makes the furthest call the final stop.

- **Fastest Route Ending with Selected Call**  
  Highlight a call in the grid to make it the final stop.

> **Note:** NCompass will use the system defaults (such as first call / last call) if these have already been set on the field calls.

### Manually Route Calls

To manually re-order calls:

- Use the grid at the bottom of the window
- Click and drag calls into the order you want
- A blue line shows where the call will be dropped
- After reordering, click **Update Map**

NCompass will then calculate the estimated travel time and distance for your manual route.

### Move Calls from Other Engineers

You can overlay field calls booked on the same day for other engineers.

To do this:

- Tick **Show calls booked for other engineer(s)**
- Optionally choose a group of engineers to display
- Click **Update Map**

This shows **purple pins** on the map for calls booked to other engineers.

Click a pin to view:

- Postcode
- Weight of call
- Who the call is booked for
- Flag tags

Additional actions:

- Click **Field Call ...** to open the full field call details
- Click **Book to this Engineer** to move the call to the engineer currently being planned

The route will then refresh to include the newly added call.

### Add Field Calls Ready to be Booked

You can also overlay sales that are in stock and ready for delivery booking.

To do this:

- Tick **Show sales ready for delivery to be booked**
- Click **Update Map**

This shows **green pins** on the map for calls ready to be booked.

Click a pin to view:

- Postcode
- Weight of call
- Who the call is booked for
- Flag tags

> From **v11.16 onwards**, this planning information is displayed directly on the pin details.

Additional actions:

- Click **Field Call ...** to open the full field call details
- Click **Book to this Engineer** to assign the call to the engineer currently being planned

The route will then refresh to include the newly added call.

### Saving a Route

Click **Round Times & Save Route** to save the route against the engineer/day and apply times to each call using the padding settings defined in the wizard.

> **Note:** If configured, NCompass will lock the route at this point so no new calls can be booked.

---

## Additional Planning Tools

### Flag Tags

Flag tags can be configured against **Skills** so a character is displayed when a skill is assigned to an item on the field call.

This is useful for highlighting calls involving:

- Large or heavy items
- Specific installation types (for example built-in or gas)

Go to:

**Administration > Item Groups and Engineer Skills**

Then:

- Click **Edit** on a skill
- Enter a character in **Flag Tag**
- Click **Save**

Example:

If a skill such as **Large Item Delivery** has a flag tag of **L**, any call containing an item with that skill will display **L**:

- On the planning grid
- On the map pinpoints

### Weight

If van weight restriction is being used:

- Pins display the **weight** of each call
- The route planner displays:
  - **Total weight** for each booked call
  - **Total van weight**

If you want to enable this on your system, contact the **Calculus Implementation Team**.

### Fleet Tracking

These features require **NCompass Mobile**.

If you want to learn more about the delivery app, contact the team for a demonstration.

### Planned Route vs Actual Route

Use **Route Plan Enquiry** to compare planned distance and duration against actual travel distance and duration.

Go to:

**Field Calls > Route Plan Enquiry**

You can:

- Apply filters for engineers and dates
- Sort by any column, such as the largest time overrun
- Click **Show Route** to overlay expected vs actual route on a map
- Click **Details** to view more information for the selected row

### Map GPS Location and Current Call

The **Current Call** feature shows where the engineer is and how long the current call marked as **Travelling** will take from their current position.

From the **Scheduled Calls** screen:

- Click the engineer you want to review
- Click **Engineer >**
- Click **Map GPS Location and Current Call...**

A window will display:

- The engineer’s current GPS location
- The distance to the customer property
- The estimated travel time

### GPS History

NCompass stores GPS history for each engineer for each day they are using **NCompass Mobile**.

This lets you:

- View routes taken throughout the day
- Track engineers in real time while travelling

Go to:

**Field Calls > Show GPS History**

Then:

- Click the engineer you want to view
- Change the date or date range if needed (defaults to today)
- Click **Show Locations**

---

## Engineer Route Limits and Overbooking Protection

Route limits cap the length of an engineer's working day by the **planned duration of the route** - travel time plus the time spent on each call - rather than by a simple count of calls or points. Once the planned day reaches the limit, NCompass stops offering that engineer for further calls on that date.

### Setting the Limits

Go to:

**Administration > Salespersons > Edit > Routing tab**

In the **Route Limits** section, enter the maximum number of minutes for each day of the week, **Monday to Sunday**. Leave a day blank if that day should not be limited.

> **Note:** Limits are held per engineer, so a van doing long-distance work and a van doing local drops can have different working days.

### How the Limit Is Applied

- When a route is planned for an engineer and date, the limits in force at that moment are **copied onto that day's route plan**. The day is then judged against the copied value, so later changes to the engineer's standard limits do not move the goalposts on days that have already been planned.
- When NCompass looks for available engineers, it excludes any engineer whose planned route duration plus the **Route Limit Offset** already meets or exceeds the limit for that day.
- A call added while the day is still under the limit is accepted in full, even if it then takes the day past the limit. This is intentional: a day planned to 7h50 against an 8h limit will accept another call and may then plan to 8h45. The limit prevents the **next** booking rather than truncating the one being made.

### Route Limit Offset

Go to:

**Tools > Configuration > Field Calls**

Set **Route Limit Offset Minutes** to the buffer you want to hold back. When checking availability, NCompass requires the engineer to have at least this many free minutes on the day before another call can be booked. The default is `0`, meaning no buffer.

### Overriding the Limit for a Single Day

Because the limit is copied onto the day's route plan, a one-off change is made **against the route, not against the engineer**. Open the route for that engineer and date and amend the maximum duration there.

Change the engineer's **Routing tab** values only when you want to alter the standard working day for all future dates.

### Finding Days That Are Over the Limit

- In **Field Calls > Route Plan Enquiry**, tick **Only Planned Time Over Route Limit** to list only the engineer/day combinations whose planned route exceeds the limit recorded against that plan. The remaining filters (engineer, date range) can be combined with it.
- In the **Two Week Planner**, days planned beyond the limit are shown in the overbooked warning colour, alongside days over their points or weight allowance.

---

## Automatic Route Updates, Finalising and Locking

### Keeping Routes Up to Date Automatically

With **Route Calls Automatically** set to **Yes** (see the [Routing Wizard](#routing-wizard)), NCompass keeps each engineer's route in step with their diary instead of waiting for someone to re-plan it by hand.

Whenever the contents of an engineer's day change, that engineer and date are added to the re-routing queue. The changes that trigger this are:

- A call added to the day
- A call removed from the day, or moved to another engineer
- A change to an existing call - its date, its timing, or the items and points on it

A background sweep works through the queue and re-plans each affected engineer and date. The recalculated total duration is what the diary displays and what the availability and route limit checks then use.

> **Important:** Each re-plan calls Google's Routing API, so automatic routing increases usage against your Google account. Discuss expected volumes with the implementation team before enabling it.

### Finalising a Route

Two settings under **Tools > Configuration > Field Calls** decide when a day stops being re-planned automatically:

- **Route Calls Automatically - Finalize Route X Days Before** - how many days ahead of the delivery date the route is finalised
- **Route Calls Automatically - Finalize Route Time of Day** - the time on that day at which the final route is run, in `HH:mm` format

At that point NCompass runs a **final route** for every enabled engineer for the date in question. After the final route has run, that day's route is no longer updated automatically, so the running order given to the engineer and the times quoted to customers stay put.

Leave both settings unset if you do not want routes to be finalised automatically.

### Locking Field Calls After Routing

Locking a field call fixes its schedule - the call can no longer be edited or rescheduled from the field call window. Use it to stop staff moving calls after the day has been planned and customers have been told their time window.

Go to:

**Tools > Configuration > Field Calls**

Set **Lock Field Calls after routing** to **Yes**. The default is **No**.

With the setting on, saving a route from Scheduled Calls locks every field call on that route. Which routes lock calls, and which do not, follows the same principle:

| Route type | Locks the calls on it? |
| --- | --- |
| Manual routing - a route planned and saved by a user | Yes |
| The final route, run at the configured finalise point | Yes |
| Automatic re-planning between now and the final route | No |

Automatic re-planning deliberately does **not** lock calls: if it did, the first automatic route of the day would close the diary and no further calls could be booked.

> **Note:** If a locked call has to be changed, it must be released on the field call window before its schedule can be edited. Expect to see locked calls whenever this setting is on and a day has been routed - it is the setting working, not a fault.

---

## Routing Coverage: Great Britain, Northern Ireland and Ireland

NCompass plans routes over the **road network**, using actual driving distance and time between calls rather than the straight-line distance between postcodes.

This matters most where the nearest call as the crow flies is not the nearest call to drive to:

- Towns with one-way systems and restricted turns
- Addresses either side of a river, estuary or firth
- Sparse rural road networks, where two calls a few miles apart can be a long drive round

Coverage includes:

- **Great Britain** postcodes
- **Northern Ireland** postcodes (BT)
- **Republic of Ireland** addresses, using Eircodes
- **Cross-border routes**, in both directions - Northern Ireland to and from the Republic of Ireland, and the UK mainland to and from the Republic of Ireland

> **Note:** A call can only be plotted and routed if its postcode is complete and recognised. An incomplete or mistyped postcode - or an Irish address with no Eircode - will leave the call off the map and out of the planned route, so check the customer address first when a call will not plot.