---
title: "Update the emergency address and billing details, verifying a foreign VAT number against VIES"
method: PUT
path: "/v1/account/billing"
---

# Update the emergency address and billing details, verifying a foreign VAT number against VIES

`PUT /v1/account/billing`

## Request

- Base URL: `https://volai.cz`
- URL: `https://volai.cz/v1/account/billing`
- Auth: HTTP bearer

Saves the emergency address and billing details. `address`, when present, carries street, city and zip all at once - none can be sent alone. `company`, `ico` and `dic` are MERGED with what is already saved: a missing field is left UNCHANGED, only an explicit empty string (`""`) clears it (for `dic`, clearing also drops its VIES verification). A foreign EU VAT number is verified against the VIES registry; `vies` in the response is only filled in when the result carries a verified VAT number (freshly, or from a retained earlier verification). A domestic VAT number (`CZ...`) is not verified - it does not affect the rate.

## Request body

- object
  - `company` string: Company name on future tax documents. An empty string clears it.
  - `ico` string: Company registration number for billing; an empty string clears it.
  - `dic` string: VAT identification number for billing. Foreign EU numbers are checked against VIES before the tax regime is saved.
  - `address` object: Complete emergency and billing address. Omit to leave the address unchanged.
    - `street` string, required: Street and house number.
    - `city` string, required: City or municipality.
    - `zip` string, required: Postal code; whitespace is normalized.

## Response `200`

Updated billing details, address and any freshly verified VAT number

- object
  - `billing` object, nullable, required
    - `company` string, nullable, required
    - `ico` string, nullable, required
    - `dic` string, nullable, required
    - `dicCountry` string, nullable, required
    - `dicVerified` boolean, required
    - `dicName` string, nullable, required
  - `address` object, nullable, required
    - `street` string, required
    - `city` string, required
    - `zip` string, required
  - `vies` object, nullable, required
    - `dic` string, required
    - `country` string, required
    - `name` string

## Other responses

- `400`: Error codes: validation (request), invalid_address (request), invalid_ico (request), invalid_dic (request), foreign_vat_unsupported (account), vat_id_not_found (request).
- `401`: Error codes: unauthorized (request).
- `403`: Error codes: account_suspended (account).
- `404`: Error codes: user_not_found (account).
- `429`: Error codes: rate_limited (busy).
- `500`: Error codes: internal_error (service).
- `503`: Error codes: vat_registry_unavailable (service).

---

[API](https://skmtc.dev/volai/apis/volai-rest-api.md) · [All operations](https://skmtc.dev/volai/apis/volai-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/volai/apis/volai-rest-api/revisions/12029b05e2fa?raw)
