# `POST /v1/kyb/cases` — Open a business verification (KYB) case

Looks the company up in the Swiss commercial register (Zefix and the UID register) by UID, or by name when exactly one company has that name, lists its registered persons with their roles and signing authority, derives beneficial owner candidates (GmbH partners holding 25% or more), and screens the company and its persons against the sanctions and PEP lists. workflow_id names a published workflow with the Business Verification step; its other steps are what each person's verification runs. Charged once per case when the register found the company (pricing: business-verification). Needs kyb:write. Send Idempotency-Key to get the same case back on retries for 24 hours.

Parameters:
- `Idempotency-Key` (header, string)

Body:
- `uid` (string): Swiss UID, CHE-123.456.789 or CHE123456789.
- `name` (string): Company name; with a UID it is compared with the registered name (KYB_NAME_MISMATCH).
- `workflow_id` (string, required)
- `reference` (string): Your id for the company; echoed back.
- `persons` (array of object)
  - `registry_person_id` (string)
  - `email` (string)
  - `phone` (string)
  - `send_link` (any) One of `email`, `sms`.
- `language` (any): Language of legal form labels. One of `de`, `fr`, `it`, `en`.

Responses:
- 200: The case opened earlier with this Idempotency-Key.
- 201: The case, plus declaration_url (the applicant's declaration link, shown once).
- 400: Invalid input.
- 401: Missing, unknown or expired API key.
- 402: The balance does not cover the company check.
- 403: The key lacks the kyb:write scope, or its IP allowlist refuses the caller.
- 404: No such workflow in your organization.
- 409: Several companies have this name (ambiguous_company, with candidates), or the Idempotency-Key is in progress.
- 422: Invalid UID, or the workflow has no Business Verification step.
- 429: More than 60 business verification calls in a minute.
- 503: The commercial register is unavailable (registry_unavailable); nothing was charged.
