Skip to content

Address Standardization for Ecommerce Checkout

A bad shipping address caught at checkout costs a form re-submit. The same bad address caught after the order ships costs a failed delivery, a support ticket, and a refund.

Autofill, copy-paste, and manual typing all introduce inconsistencies — missing unit numbers, transposed fields, unrecognized abbreviations — that pass basic “is this field non-empty” validation but still aren’t deliverable.

Standardising the address at checkout confirms it parses into complete structured components while returning standardized expansions. This powers instant address suggestions, auto-expands abbreviations (StStreet, AveAvenue), and flags incomplete or nonsensical input immediately while the customer is still on the page.

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": "42 Wallaby Way, Sydney NSW 2000, Australia" }'
200 OK
{
"houseNumber": "42",
"road": "wallaby way",
"city": "sydney",
"state": "nsw",
"postcode": "2000",
"country": "AUS",
"expansions": [
"42 wallaby way sydney nsw 2000 australia",
"42 wallaby way sydney new south wales 2000 australia"
]
}
FieldWhy it matters here
expansionsCanonical string representations for address confirmation prompts and customer search suggestions.
houseNumber / roadMissing or unparsed values signal an incomplete address before checkout completes.
postcodeCross-check against city/state to catch typos before the order ships.
countryConfirms the address matches the selected shipping destination.