> For the complete documentation index, see [llms.txt](https://docs.xorosoft.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xorosoft.com/other-products/xorodms/xorodms-delivery-management-system/route-scheduling-and-shipment-delivery.md).

# Route Scheduling and Shipment Delivery

#### Overview

The **Route Scheduling** and **Shipment Delivery** functionality in **XoroDMS** enables organizations to efficiently plan deliveries, automate shipment scheduling, and manage the complete delivery lifecycle from Sales Orders to final delivery.

Using configurable routes, organizations can define delivery schedules, automatically calculate shipment and delivery dates, create Shipment Deliveries directly from Sales Orders, support partial shipments, and manage deliveries throughout the fulfillment process. These capabilities help reduce manual planning, improve delivery accuracy, and provide greater visibility into logistics operations.

***

### Route Scheduling

The **Route** module allows administrators to configure delivery schedules that can be assigned to customers and automatically applied during Sales Order creation.

Each route can include one or more delivery days and an optional ship date offset, allowing XoroERP to calculate when an order should be shipped in order to meet its scheduled delivery date.

#### Route Configuration

Each Route supports the following scheduling options:

* **Delivery Day(s)** – Configure one or more days on which deliveries are performed for the selected route.
* **Ship Date Offset** – Specify the number of days before the delivery date that the shipment should be dispatched.
  * If no value is specified, the offset defaults to **0**.
* **Default Route Assignment** – Assign a default route to customers so it is automatically selected when creating new Sales Orders.

The **Route Centre** includes a **Day** column, providing visibility into the configured delivery schedule for every route.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FNf0fhsXlqdDdJSc7HSLJ%2Fimage.png?alt=media&amp;token=18b8b42a-c08c-4241-8c71-4889f879a98f" alt=""><figcaption></figcaption></figure>

***

### Automatic Route Scheduling

When a Sales Order is created, XoroERP automatically performs route scheduling based on the configured Route information.

The system automatically:

* Populates the customer's default Route.
* Determines the appropriate Delivery Date.
* Calculates the required Ship Date using:

  * Route
  * Delivery Day(s)
  * Ship Date Offset
  * Sales Order Date

  <figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FGZDSOQYr5CrJ3RwG92it%2Fimage.png?alt=media&amp;token=3faed709-f73c-455e-ab82-430f95c8937a" alt=""><figcaption></figcaption></figure>

If any of the following values change, the schedule is automatically recalculated:

* Customer
* Route
* Sales Order Date
* Delivery Date

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FNBj4SKnyZGQl1gQyczkI%2Fimage.png?alt=media&amp;token=fa073a5c-5f72-441d-9ad1-102596e90001" alt=""><figcaption></figcaption></figure>

This ensures shipment schedules remain accurate throughout the order lifecycle.

{% hint style="info" %}
**Note:** If **Delivery Manager** is disabled, Route selection remains optional and the Sales Order continues through the standard processing workflow
{% endhint %}

***

### Creating Shipment Deliveries

Shipment Deliveries can be created directly from Sales Order lines without requiring an invoice.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FFzLVNhTfKAwsakDvhMKx%2Fimage.png?alt=media&amp;token=4206e21d-a43d-48fe-92fa-755c6bf82eba" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FvNlBXfE5B1BEdasVYThK%2Fimage.png?alt=media&amp;token=4448c6bd-3a72-4d83-aaf2-14eaa1a72453" alt=""><figcaption></figcaption></figure>

This enables delivery planning to begin earlier while shipment processing continues independently.

#### Shipment Delivery Status

When creating a Shipment Delivery:

* If the selected Sales Order quantities have not yet been fully shipped, the Shipment Delivery is created in **Draft** status.
* Once the complete planned quantity has been shipped, the Shipment Delivery automatically changes to **Open** status.
* Only **Open** Shipment Deliveries can be processed through the **Delivery Manager**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FxxWuquk9gUS1Jj7vORIU%2Fimage.png?alt=media&amp;token=beec081c-8f65-48d7-930b-5c015b8041af" alt=""><figcaption></figcaption></figure>

***

### Managing Shipment Deliveries

Shipment Deliveries remain editable while they are still being planned.

Users can:

* Add eligible Sales Order lines.
* Remove Sales Order lines that have not yet been delivered.
* Modify the **Quantity to Deliver** for individual Shipment Delivery lines.

Shipment Deliveries can be edited only while they are in:

* Draft
* Open

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2F05xmFbULYCzIDLZDgL0e%2Fimage.png?alt=media&amp;token=cd6d4c11-a628-487f-b2b9-e6ae7bad63b8" alt=""><figcaption></figcaption></figure>

Shipment Deliveries or Shipment Delivery lines cannot be modified once they are:

* Delivered
* In Progress
* Void
* Cancelled

These restrictions help maintain the integrity of delivery records once fulfillment has begun.

***

### Partial Shipment Support

XoroDMS supports fulfilling Sales Orders through multiple shipments.

When partial shipments are performed:

* A Sales Order line can be shipped across multiple deliveries.
* Each shipment is linked to its corresponding Shipment Delivery.
* Each shipped quantity is associated with the appropriate Invoice.
* Duplicate shipment quantities are prevented.
* The total Shipment Delivery quantity always remains synchronized with the originating Sales Order quantity.

This provides complete traceability throughout the fulfillment process while supporting staged deliveries.

***

### Adding Sales Order Lines to Shipment Deliveries

Sales Order lines can be added to Shipment Deliveries directly from:

* **Sales Order Centre**
* **Create Sales Order** page

Users can either:

* Add selected Sales Order lines to an existing Shipment Delivery.
* Create a new Shipment Delivery using the selected Sales Order lines.

This allows deliveries to be consolidated without recreating Shipment Deliveries or navigating between multiple modules.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FyOwLKWw3SLfWrcZWbFIw%2Fimage.png?alt=media&amp;token=9da247f9-d1c3-4a2c-8c89-2527471fc37f" alt=""><figcaption></figcaption></figure>

***

### System Validations

To maintain data consistency throughout the delivery lifecycle, XoroDMS enforces the following validations:

* Shipment Deliveries with a **Delivered** status cannot be deleted.
* Sales Order lines can only be added to Shipment Deliveries with **Open**, **In Progress**, or **Partially Delivered** statuses.
* Only shipped Sales Order lines can be added to **In Progress** or **Partially Delivered** Shipment Deliveries.
* Void or Cancelled Sales Order lines cannot be added to any Shipment Delivery.
* Shipment quantities remain synchronized with the originating Sales Order, preventing duplicate or inconsistent fulfillment records.

These validations ensure delivery records remain accurate while providing flexibility during the planning and fulfillment stages.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.xorosoft.com/other-products/xorodms/xorodms-delivery-management-system/route-scheduling-and-shipment-delivery.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
