> For the complete documentation index, see [llms.txt](https://docs.fulfillmenttools.com/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.fulfillmenttools.com/documentation/by-pillar/advanced-order-routing/unroutable-orders.md).

# Unroutable orders

An unroutable order is a created order that can't be assigned to a facility for fulfillment.

{% hint style="info" %}
Unroutable orders can be monitored and manipulated in the [Order view of Backoffice](/documentation/backoffice/network-view/orders.md).
{% endhint %}

## Reasons for unroutable orders

There's a chance that the routing strategy could result in an order not being able to route due to:

* No facility can fulfill the requirements of a particular order
* Misconfiguration of the [routing strategy](/documentation/by-pillar/advanced-order-routing/routing-strategy.md)

Especially in the case of a [same day order](/documentation/by-pillar/store-operations/carrier-management/carrier-features-and-requirements.md#same-day-delivery), it's very likely that the order can't be routed at all because no facility is available to fulfill the consumer's request that day.

## Solving unroutable orders

You have the following options to deal with unroutable orders:

1. **Assign a new facility for fulfillment:** Assign an order to a specific facility by ignoring any configured fences. One scenario is to route a same day order to a given facility, change it to a standard delivery order, and fulfill it. It's possible to assign the entire order or a partial order. To do this, click the more icon on the order, and select **Assign facility**.
2. **Change consumer address:** Enable the user to handle situations where the shipment couldn't be delivered and to request a second attempt (with another address). To do this, click the more icon on the order, and select **Edit address**.
3. **Trigger a new routing decision:** Rerun the routing process to reevaluate whether a facility now exists that can fulfill the order. This will be helpful if a routing strategy misconfiguration has been corrected, and all orders should be processed as usual.
4. **Canceling an order:** Cancel all corresponding pick jobs of an order. It's possible to cancel the partial order or the whole order. To do this, click the more icon on the order, and select **Cancel order** from the menu.
5. **Reroute a specific order:** Trigger a reroute decision for the selected order. It's possible that the order is successfully routed, or that the routing attempt fails again and the order remains unroutable. To do this, click the more icon on the order, and select **Reroute order** from the menu.
6. **Reroute all unroutable orders:** Trigger a reroute decision for all orders. To do this, click the **Reroute all unroutable orders** button in the order view banner.

<figure><img src="/files/YcjQc5Zdo0vYwxb9KoPq" alt="" width="563"><figcaption></figcaption></figure>

## **Using a fallback facility**

A fallback facility can be defined if the user doesn't want to perform a manual process in case an order can't be routed. If a fallback facility is defined, orders are assigned to it if they receive the status of `NOT_ROUTABLE` in the routing plan. Such a facility might be a super-warehouse with nearly infinite capacity (or with fast replenishment).

A facility can be defined as a fallback facility only if its state is `ONLINE`. Once a facility is defined as a fallback, it can't be set to `SUSPENDED` or `OFFLINE`.

It's possible to define more than one facility as a fallback facility. The order that can't be routed initially is then routed to the fallback facility chosen by the [routing strategy](/documentation/by-pillar/advanced-order-routing/routing-strategy.md). For this routing, all fences are ignored, and only the active ratings are used to find the best facility.

You can set up a tenant-wide fallback facility via [API](#set-up-fallback-facility-via-api) or in [Backoffice](#set-up-fallback-facility-via-backoffice).

You can set up a fallback facility for every node in the routing strategy. If an order is unroutable, it will take the fallback facility of the node where it became unroutable. Let's look at an example:

* Our routing plan consists of 3 nodes, including the basic configuration, with a fallback facility set on the third node and in the basic configuration.
  * An order is made and passes through the routing plan until the third node, where it becomes unroutable. The fallback facility will be the one configured on the third node.
  * An order is made and passes through the routing plan until the second node, where it becomes unroutable. The fallback facility will be the one configured on the basic configuration.

### Set up fallback facility via Backoffice

To set up a fallback facility in Backoffice, go to **Orders**, then **Routing** and follow the steps below:

{% stepper %}
{% step %}
**Access the node settings**

Hover on the node in the routing strategy, then click the edit icon. This can be the basic configuration, or any other node.
{% endstep %}

{% step %}
**Add the fallback facility**

Select Fallback facility, then click the **Inactive** toggle, select the **Fallback facility**, input the number of hours and minutes for an automatic reroute to the fallback facility, then click **Save**.

<figure><img src="/files/fMd9WQfjpz4D12R2jooS" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

### Set up fallback facility via API

To set up a fallback facility via API, use the endpoint below:

{% tabs %}
{% tab title="Endpoint" %}

```http
PUT https://{YOUR-TENANT-NAME}.api.fulfillmenttools.com/api/routing/strategies/{strategyId}
```

{% endtab %}

{% tab title="Request" %}

```json
{
...
            "rootNode": {
                "id": "YOUR_NODE_ID",
                "active": true,
                "config": {
                ...
                    "fallbackFacility": {
                        "facilityRefs": [
                            "YOUR_FACILITY_ID"
                        ],
                        "active": true,
                        "fallbackAfterTime": "PT1H59M"
                    },
                ...
            }
...
}
```

{% endtab %}
{% endtabs %}

### Timeframe for routing to fallback facility

In the routing configuration, you can also set a timeframe after which an unroutable order is routed to its final destination.&#x20;

If the order falls within this timeframe, it will be displayed as **Unroutable** in Backoffice. Once the timeframe has passed, the order will be routed to the fallback facility, and the status will be updated in Backoffice.

If the timeframe is set to `0` (the default value), the order is directly routed to the fallback facility.

### Fallback facilities for short picks

When picking an order, a [short pick](/documentation/by-pillar/store-operations/picking.md#short-pick) can occur. In this case, fulfillmenttools tries to reroute the order to another facility.

However, if you set [`blacklistedassignedfacilties`](/documentation/by-pillar/advanced-order-routing/reroute.md#blocklisting-a-facility) to `true`, the order will stay in the last routed facility. If you also define a fallback facility,

Alternatively, you can define a fallback facility, so in the case of a short pick, the rest of the order will be sent to the fallback facility.


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fulfillmenttools.com/documentation/by-pillar/advanced-order-routing/unroutable-orders.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
