Switzerland VAT Number Format (CHE-123.456.789 MWST)

Mehrwertsteuer (MWST) number structure, regex & verified examples

Everything you need to know about Mehrwertsteuer (MWST) numbers in Switzerland — they follow the pattern CHE-NNN.NNN.NNN (+ MWST/TVA/IVA) (e.g. CHE-123.456.789 MWST), and can be verified against VIES. For the rates themselves, see Switzerland VAT rates.

European countryMWST — MehrwertsteuerCHF

VAT Number Format

Structure

CHE-NNN.NNN.NNN (+ MWST/TVA/IVA)

Example format

CHE-123.456.789 MWST

Regex

^CHE-?\d{3}\.?\d{3}\.?\d{3}[ ]?(MWST|TVA|IVA)?$

VAT numbers are not case-sensitive – lowercase input is automatically normalised. See how this format compares across all 27 EU countries.

Company and Tax Identifiers in Switzerland

What the registrar, the register and each identifier are called, in every official language and in English. These are names, not numbers.

Company registrar
  • German: Eidgenössisches Amt für das Handelsregister
  • French: Office fédéral du registre du commerce
  • English: Federal Commercial Registry Office
Company register
  • German: Handelsregister
  • French: registre du commerce
  • Italian: registro di commercio
  • English: commercial register
Register number
  • German: Unternehmens-Identifikationsnummer
  • French: numéro d'identification des entreprises
  • Italian: numero d'identificazione delle imprese
  • English: Unique Enterprise Identification Number
Tax ID
  • German: Unternehmens-Identifikationsnummer
  • French: numéro d'identification des entreprises
  • Italian: numero d'identificazione delle imprese
  • English: Unique Enterprise Identification Number
VAT ID
  • German: MWST-Nummer
  • French: numéro TVA
  • English: VAT number

Each name is checked against the registrar’s or tax authority’s own pages or legal text. The same names ship in eu-vat-rates-data.json and in GET /v1/rates.

Switzerland VAT rates via API

Get Switzerland VAT rates via API — free, no key

No API key required
Request
curl "https://api.vatnode.dev/v1/rates/CH"
Response200 OK
{
  "countryCode": "CH",
  "countryName": "Switzerland",
  "isEU": false,
  "vatName": "Mehrwertsteuer",
  "vatAbbr": "MWST",
  "currency": "CHF",
  "standardRate": 8.1,
  "reducedRates": [
    3.8,
    2.6
  ],
  "superReducedRate": null,
  "parkingRate": null,
  "vatNumberFormat": "CHE-NNN.NNN.NNN (+ MWST/TVA/IVA)",
  "vatNumberPattern": "^CHE-?\\d{3}\\.?\\d{3}\\.?\\d{3}[ ]?(MWST|TVA|IVA)?$",
  "identifiers": {
    "registryAuthorityName": {
      "de": "Eidgenössisches Amt für das Handelsregister",
      "fr": "Office fédéral du registre du commerce",
      "en": "Federal Commercial Registry Office"
    },
    "registryName": {
      "de": "Handelsregister",
      "fr": "registre du commerce",
      "it": "registro di commercio",
      "en": "commercial register"
    },
    "registryCodeName": {
      "de": "Unternehmens-Identifikationsnummer",
      "fr": "numéro d'identification des entreprises",
      "it": "numero d'identificazione delle imprese",
      "en": "Unique Enterprise Identification Number"
    },
    "taxIdName": {
      "de": "Unternehmens-Identifikationsnummer",
      "fr": "numéro d'identification des entreprises",
      "it": "numero d'identificazione delle imprese",
      "en": "Unique Enterprise Identification Number"
    },
    "vatIdName": {
      "de": "MWST-Nummer",
      "fr": "numéro TVA",
      "en": "VAT number"
    }
  },
  "updatedAt": "2026-11-13"
}

View full rates API reference →

Get Switzerland VAT rates via package — offline, no HTTP

eu-vat-rates-data
Request
# npm install eu-vat-rates-data
import { getRate } from 'eu-vat-rates-data'

const rate = getRate('CH')
console.log(rate.standard) // CH standard VAT rate
getRate() result200 OK
{
  "country": "Switzerland",
  "currency": "CHF",
  "eu_member": false,
  "vat_name": "Mehrwertsteuer",
  "vat_abbr": "MWST",
  "standard": 8.1,
  "reduced": [
    2.6,
    3.8
  ],
  "super_reduced": null,
  "parking": null,
  "format": "CHE-NNN.NNN.NNN (+ MWST/TVA/IVA)",
  "pattern": "^CHE-?\\d{3}\\.?\\d{3}\\.?\\d{3}[ ]?(MWST|TVA|IVA)?$",
  "identifiers": {
    "registry_authority_name": {
      "de": "Eidgenössisches Amt für das Handelsregister",
      "fr": "Office fédéral du registre du commerce",
      "en": "Federal Commercial Registry Office"
    },
    "registry_name": {
      "de": "Handelsregister",
      "fr": "registre du commerce",
      "it": "registro di commercio",
      "en": "commercial register"
    },
    "registry_code_name": {
      "de": "Unternehmens-Identifikationsnummer",
      "fr": "numéro d'identification des entreprises",
      "it": "numero d'identificazione delle imprese",
      "en": "Unique Enterprise Identification Number"
    },
    "tax_id_name": {
      "de": "Unternehmens-Identifikationsnummer",
      "fr": "numéro d'identification des entreprises",
      "it": "numero d'identificazione delle imprese",
      "en": "Unique Enterprise Identification Number"
    },
    "vat_id_name": {
      "de": "MWST-Nummer",
      "fr": "numéro TVA",
      "en": "VAT number"
    }
  }
}

View package on GitHub →

Frequently Asked Questions

What is the VAT number format in Switzerland?▾

VAT numbers in Switzerland follow the format: CHE-NNN.NNN.NNN (+ MWST/TVA/IVA). Example: CHE-123.456.789 MWST. VAT numbers are not case-sensitive – lowercase input is automatically normalised.

What is the VAT number regex pattern in Switzerland?▾

Use this regular expression to validate VAT numbers in Switzerland MWST number format locally:

^CHE-?\d{3}\.?\d{3}\.?\d{3}[ ]?(MWST|TVA|IVA)?$

Test against the uppercase number. Format validation catches typos locally.

What does MWST stand for in Switzerland?▾

MWST stands for Mehrwertsteuer — the Swiss name for Value Added Tax (VAT). It appears on Swiss invoices and tax documents.