# Crear cliente

`POST /api/v1/billing/clientes`

Crea un cliente (receptor frecuente) en el catálogo de la empresa. El
RUT debe ser valido y único dentro de la empresa.

> **Beta privada**: las escrituras vía API key están en beta privada
> (solicitar acceso: hola@simplo.cl); las API keys hoy operan en modo
> lectura.

- Autenticación: header `X-Api-Key: sk_simplo_...` (o `Authorization: Bearer <jwt>` para sesiones de la plataforma).
- operationId: `createCliente` — contrato completo en https://docs.simplo.cl/openapi.yaml
- Versión HTML: https://docs.simplo.cl/api/operations/createcliente/

## Request body (application/json)

Schema: `CreateClienteRequest`

| Campo | Tipo | Requerido | Descripción |
| --- | --- | --- | --- |
| `rut` | string | sí | RUT del cliente con dígito verificador |
| `razon_social` | string | sí |  |
| `giro` | string | no |  |
| `direccion` | string | no |  |
| `comuna` | string | no |  |
| `ciudad` | string | no |  |
| `email` | string (email) | no |  |
| `telefono` | string | no |  |
| `contacto` | string | no |  |

## Ejemplo (curl)

```sh
curl -X POST "https://api.simplo.cl/api/v1/billing/clientes" \
  -H "X-Api-Key: $SIMPLO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "rut": "76543210-K",
    "razon_social": "Empresa Ejemplo SpA"
  }'
```

## Respuestas

### 201 — Cliente creado

Schema: `ClienteResponse`

| Campo | Tipo | Requerido | Descripción |
| --- | --- | --- | --- |
| `id` | string (uuid) | no |  |
| `rut` | string | no |  |
| `razon_social` | string | no |  |
| `giro` | string | no |  |
| `direccion` | string | no |  |
| `comuna` | string | no |  |
| `ciudad` | string | no |  |
| `email` | string | no |  |
| `telefono` | string | no |  |
| `contacto` | string | no |  |
| `notas` | string | no |  |
| `created_at` | string (date-time) | no |  |
| `updated_at` | string (date-time) | no |  |

### 400 — Datos inválidos (RUT inválido, razon_social vacía)

Schema: `ErrorResponse`

### 401 — Token o API key inválido o ausente

Schema: `ErrorResponse`

### 409 — Cliente con este RUT ya existe para la empresa

Schema: `ErrorResponse`
