Skip to content

Address Standardization for Shipping & Logistics

Carriers validate addresses against their own strict formatting rules. An address that’s perfectly understandable to a human but inconsistently formatted can be rejected at label generation or misrouted in transit.

Customers type addresses however they like — "Apt 4B", "Unit 4B", "#4B" are all the same unit, but only one of those might match a carrier’s expected format. Multiply that across every field and every country, and failed or delayed deliveries follow.

Standardising splits the address into the discrete fields carriers expect — house number, street, unit, city, postcode — while providing canonical expansions where thoroughfare and unit abbreviations are fully resolved ("apt""apartment"). This enables carrier-ready label formatting and eliminates delivery exceptions.

POST /v1/address/normalize
curl -X POST "https://api.goodvat.com/v1/address/normalize" \
-H "Authorization: Bearer $GOODVAT_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "query": "221b baker street apt 4b london nw1 6xe uk" }'
200 OK
{
"houseNumber": "221b",
"road": "baker street",
"unit": "apt 4b",
"postcode": "nw1 6xe",
"city": "london",
"country": "GBR",
"expansions": [
"221b baker street apartment 4b london nw1 6xe uk",
"221b baker street apartment 4b london nw1 6xe united kingdom"
]
}
FieldWhy it matters here
expansionsCanonical expanded strings used for carrier API payloads and address-verification validation gates.
houseNumber / roadCore street address line carriers require.
unitIsolated so it can be placed on its own label line per carrier convention.
postcodeDrives carrier routing and delivery-zone sorting.
countryDetermines which carrier and national format rules apply.