POST · Products & purchasing
Validate order contact details without creating anything
Validate order contact details without creating anything
/api/v1/orders/validate-contact
Description
Returns {valid:true, normalized} or {valid:false, errors}. Run it before create_order to catch a bad phone / org-number / VAT number early. It places no order — use create_order for that and preview_order to price a cart.
Body
Send as application/json.
| Name | Type | Description |
|---|---|---|
entity_type
required
|
enum |
Whether the contact is a private individual or a company. One of individual, company.
|
name
required
|
string | The contact / company name. |
email
required
|
string | The contact email address. |
phone_number
required
|
string | The contact phone number; validated against the country as E.164. |
country
required
|
string |
Pattern ^[A-Za-z]{2}$.
|
street
required
|
string | Street address. |
postalcode
required
|
string | Postal code. |
city
required
|
string | City. |
organization_number
required
|
string | Organisation / registration number (always required; validated for Swedish contacts). |
company
|
string |
Company name — required when entity_type=company.
|
vat_number
|
string | VAT number, if any; validated when present. |
Responses
The specification does not describe this response body; the note in the rail says what to expect.
Every non-2xx response is an RFC 7807 problem with a stable
code.
Commonly returned errors
The codes this operation reaches on its own path: the auth stack, its own validation and
ownership checks, and the transport. Not a closed set — a shared code from the
full registry can still surface. Each links to the code’s own page,
the same URL its type dereferences to.