> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryoto.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Address and data correction

> Fix incomplete addresses, misspelled cities and phone numbers without a country code automatically, before routing, carriers or drivers see the order.

> [!NOTE]
>
> **Where to find it:** Settings → Advanced → Autocorrector — [Open in OTO ↗](https://app.tryoto.com/autocorrector)

Customers write addresses badly. They skip the district, misspell the city, paste a pin without a street, or give a phone number with no country code. In this region that is not a cosmetic problem — it is the main cause of failed first-attempt delivery. Address and data correction is the layer that repairs an order before routing, carriers or drivers ever see it.

> [!NOTE]
>
> **One screen, several functions**
>
> **Autocorrector Settings** holds thirteen toggles, and they do not all belong to the same part of the product. This page covers the ones that clean order data. The others are documented where they actually apply:
>
> Area, On Hold Product, Blacklist, Payment Method Confirmation, COD Order Confirmation and HS Code Corrector → [Pre-fulfillment checks](https://docs.tryoto.com/modules/omnichannel-oms/prefulfillment.md) · Use Brand Name as Sender on AWBs → [Order fulfillment](https://docs.tryoto.com/modules/omnichannel-oms/order-fulfillment.md) · Address Verification for COD Orders Only → [Customer Notification](https://docs.tryoto.com/modules/customer-notification/branded-pages.md).

## How correction fits in

Corrections run as orders arrive, whichever route they came in by — channel sync, manual entry, bulk upload or API — so by the time [Order routing](https://docs.tryoto.com/modules/omnichannel-oms/order-routing.md) evaluates a rule, the coordinates and city it reads are the corrected ones.

Two corrections need no setup at all. **City and district correction** and **phone number correction** are always on, for every order, and have no toggle — they are part of how OTO ingests an order rather than something you switch on. Everything else on this page is opt-in, and a toggle takes effect only after **Save**.

![Address correction pipeline from incoming order to routable order](https://mintcdn.com/oto/i18iHWUj0UsU2Wev/images/diagram-order-data-correction-light.png?fit=max\&auto=format\&n=i18iHWUj0UsU2Wev\&q=85\&s=676bda1750a3b2158b45ee199a56f3e1)

Whichever fragment of an address the customer supplied, correction fills in the rest. Distance is computed last, because it needs coordinates that the earlier steps produce.

![The upper half of Autocorrector Settings](https://mintcdn.com/oto/ft-bRlLvOnJkbVoC/images/correction-1-autocorrector-top.png?fit=max\&auto=format\&n=ft-bRlLvOnJkbVoC\&q=85\&s=28c7bd331ad61dc25232b8c562f65c9e)

Fig. 1 — Each toggle carries its own description, so the screen is self-documenting. The first four — Address From Latitude/Longitude, Coordinates, Area and Calculate Distance — are the data-quality group.

![The lower half of Autocorrector Settings](https://mintcdn.com/oto/YkJay8Y-1RDv8ciw/images/correction-2-autocorrector-bottom.png?fit=max\&auto=format\&n=YkJay8Y-1RDv8ciw\&q=85\&s=e80ccc2a2d6b7deefe98359591b21714)

Fig. 2 — The remaining toggles, ending with Order Confirmation SMS Delay Time (minutes) — a required field that belongs to COD Order Confirmation and controls how long OTO waits before sending the confirmation SMS. Zero sends immediately.

## Features

6 features in this function.

### Address geocoding

The **Coordinates** toggle. When an order arrives with a written address but no pin, OTO calculates the latitude and longitude from the address text automatically.

This is the quiet prerequisite for a lot of the platform. Without coordinates, **Closest Location** routing has nothing to measure, distance-based pricing can't be calculated, and the driver app has no point to navigate to.

### Reverse geocoding

The **Address From Latitude/Longitude** toggle, and the inverse case: the customer dropped a pin — from a map picker, a checkout widget, or a delivery app — but the written address is missing or wrong. OTO finds and replaces the address *and the city* from the coordinates given.

Note that this overwrites what the customer typed. That is usually right, because a pin is a stronger signal than free text, but it is worth knowing before you switch it on.

### Saudi National Address validation

Saudi Arabia's National Address gives every building a **short address code** — four letters and four numbers, such as `RRRD2929`. It is unambiguous in a way a street address in the region often isn't.

With **Auto-Populate Address from Short Code** enabled, a customer who supplies only that code gets the full address completed automatically, city included. The order form also takes a **Secondary Address Number** for the additional National Address digits.

![The address block on the Add Order form](https://mintcdn.com/oto/ft-bRlLvOnJkbVoC/images/ordersync-4-add-order-receiver.png?fit=max\&auto=format\&n=ft-bRlLvOnJkbVoC\&q=85\&s=6c91241a252899a02551f182ea2ea5ee)

Fig. 3 — The address fields mirror the National Address structure — Short Address Code, Building No, Street Name, Secondary Address Number, District — rather than one free-text line. Fill from Map covers the case where the customer can point but not describe.

![A short address code expanded into a full address](https://mintcdn.com/oto/ft-bRlLvOnJkbVoC/images/prefulfill-7-edit-order.png?fit=max\&auto=format\&n=ft-bRlLvOnJkbVoC\&q=85\&s=30253d34f94c73971e4a48794a30867a)

Fig. 4 — The customer supplied RHWA6448. OTO has filled the rest: building number 6448, Prince Faisal Ibn Saad Ibn Abdulrahman, secondary number 2930, Al Woroud district, Riyadh 12251 — and the Full Address Line reads as one complete address. Every one of those fields came from eight characters.

> [!TIP]
>
> **Worth asking for at checkout**
>
> If your storefront can collect a short address code, it is the single highest-leverage change you can make to delivery success rate in Saudi Arabia. One eight-character field replaces an entire address and resolves to exact coordinates — as the example above shows.

### City and district correction

City is the field that most often arrives wrong — misspelled, in the wrong language, or holding a district name instead. Correction reaches it from several directions: reverse geocoding replaces the city from coordinates, and short-code expansion supplies it from the National Address.

Cities can also be grouped for rule-writing. **Settings → Advanced → Areas → City Group** collects cities under one name — *Western Region*, *Tier 2 cities* — which can then be used as a single condition in shipping rules instead of listing cities one at a time.

> [!TIP]
>
> **Always on**
>
> City and district correction needs no configuration. It runs on every order, for every account, and has no toggle — which is why you won't find it on the Autocorrector page.

### Ignore missing receiver city

The opposite problem. Some carriers and some clients don't need a city at all — they work from coordinates, or from a short address code that already implies one. The **Ignore Missing Receiver City** toggle lets a shipment be created or edited without one, instead of blocking the order on a field nobody downstream is going to read.

Leave it off if city is how you route or price; turn it on where insisting on a city creates busywork without improving delivery.

### Driving-distance calculation

The **Calculate Distance** toggle computes the distance in kilometers between the pickup location and the destination. Crucially this is *driving* distance, not straight-line — which in cities separated by water, a ring road or a restricted zone is a completely different number.

It feeds three things: **Closest Location** in [Order routing](https://docs.tryoto.com/modules/omnichannel-oms/order-routing.md), distance-tier pricing in [Shipping Management](https://docs.tryoto.com/modules/shipping-management/overview.md), and the feasibility rules that decide whether your own fleet can serve an order at all.

### Phone number correction

Phone numbers arrive in every shape a customer can invent — with a leading zero, without a country code, with spaces or dashes, or in local format. OTO normalises them against the order's country so that carriers, SMS and WhatsApp all receive a number they can actually dial.

> [!TIP]
>
> **Always on**
>
> Like city correction, phone number correction is on by default for every order and has no setting to manage. Carriers, SMS and WhatsApp all receive a dialable number without anyone configuring anything.

## Limits and prerequisites

| Requirement | Detail |
| - | - |
| **Administrator access** | Autocorrector is under Settings and requires admin rights to change. |
| **Save to apply** | Toggles take effect only after **Save**, and apply to orders arriving from that point on — not retrospectively. The two always-on corrections are unaffected. |
| **Short codes** | The Saudi National Address short code applies in KSA. Other markets rely on geocoding from the written address. |
| **Distance needs coordinates** | Calculate Distance produces nothing useful unless Coordinates or a pin has given the order a position first. |
| **Reverse geocoding overwrites** | Address From Latitude/Longitude replaces the customer's written address and city. Leave it off if you need their original text preserved. |
| **Areas must exist** | The Area toggle needs polygons defined under Settings → Advanced → Areas — see [Pre-fulfillment checks](https://docs.tryoto.com/modules/omnichannel-oms/prefulfillment.md). |

## Related

* [Order sync](https://docs.tryoto.com/modules/omnichannel-oms/order-sync.md) — where the raw, uncorrected data arrives from.
* [Order routing](https://docs.tryoto.com/modules/omnichannel-oms/order-routing.md) — the main consumer of corrected coordinates and distance.
* [Pre-fulfillment checks](https://docs.tryoto.com/modules/omnichannel-oms/prefulfillment.md) — the other half of the Autocorrector screen.
* [Shipping automation](https://docs.tryoto.com/modules/shipping-management/shipping-automation.md) — uses city groups and distance when choosing a carrier.
* [Branded pages](https://docs.tryoto.com/modules/customer-notification/branded-pages.md) — the address verification page customers use to fix their own address.


## Related topics

- [Order routing across warehouses and stores](https://docs.tryoto.com/modules/omnichannel-oms/order-routing.md)
- [Omnichannel OMS](https://docs.tryoto.com/modules/omnichannel-oms/overview.md)
- [Shipping Management](https://docs.tryoto.com/modules/shipping-management/overview.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.