> ## Documentation Index
> Fetch the complete documentation index at: https://woku.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Forms

> Aprende a configurar un Form: campos, ajustes y verificación de respuestas

Un **Form** se compone de tres bloques: el **nombre**, los **campos** y los **ajustes**.

## Nombre

Es la identificación interna del formulario. Te sirve para reconocerlo en el listado y para que el cliente sepa de qué se trata cuando lo abra. Sé breve y específico: "Inscripción Capacitación Excel" o "Datos de facturación".

## Campos

Cada Form tiene una lista ordenada de campos. Para cada uno defines:

* **Tipo** de dato que se va a capturar.
* **Etiqueta** que verá el cliente.
* Si es **obligatorio** u opcional.
* **Placeholder** (texto guía dentro del campo, opcional).
* **Opciones**, cuando el tipo lo requiere (select y multiselect).
* **Orden** dentro del formulario.

### Tipos de campo disponibles

| Tipo          | Para qué sirve                                 |
| ------------- | ---------------------------------------------- |
| `text`        | Texto libre corto.                             |
| `number`      | Cantidad, monto, identificador numérico.       |
| `date`        | Fecha (selector de calendario).                |
| `email`       | Correo electrónico, con validación de formato. |
| `phone`       | Número de teléfono.                            |
| `select`      | Una opción de una lista.                       |
| `multiselect` | Varias opciones de una lista.                  |

Los tipos `select` y `multiselect` requieren que definas las opciones de la lista.

### Orden y obligatoriedad

El orden determina cómo se presenta el formulario al cliente. La obligatoriedad bloquea el envío si el campo está vacío. Procura mantener pocos campos obligatorios para no asustar al cliente, y deja como opcional todo lo que no sea estrictamente necesario.

## Ajustes

Los tres ajustes del formulario definen cómo se comporta:

### Respuestas anónimas

Si está activado, el cliente puede enviar el formulario sin entregar ningún dato de contacto. Si está desactivado, el formulario exige que el cliente se identifique según el identificador elegido.

### Identificador del cliente

Define cómo se identifica al cliente cuando no responde de forma anónima. Puede ser:

* **Email**: se le pide su correo y se le envía un email de verificación.
* **Teléfono**: se le pide su número de teléfono.

Por defecto, es email.

### Una respuesta por cliente

Si está activado, un mismo cliente no puede enviar dos respuestas al formulario. Útil para inscripciones, registros únicos o casos en los que necesitas evitar duplicados.

## Verificación de respuestas por email

Cuando el cliente responde con su correo, el formulario crea primero una **respuesta provisional** que se guarda por hasta 7 días, mientras el cliente verifica su email. Cuando verifica:

1. La respuesta se convierte en una **respuesta definitiva**.
2. Queda asociada al cliente y disponible en los reportes.
3. Si la verificación nunca ocurre, la respuesta provisional se elimina automáticamente a los 7 días.

```mermaid theme={null}
flowchart LR
    A[Cliente envía respuesta] --> B[Se crea provisional]
    B --> C[Email de verificación]
    C --> D{¿Verifica en 7 días?}
    D -->|Sí| E[Respuesta definitiva]
    D -->|No| F[Se elimina sola]
```

Si el formulario permite anónimo y el cliente responde sin email, la respuesta se guarda directamente como definitiva, sin paso de verificación.

## Estado del formulario

Un Form puede estar:

* **Activo**: recibe respuestas.
* **Inactivo**: no recibe respuestas nuevas. Las respuestas previas siguen disponibles.
* **Cerrado**: igual que inactivo, pero comunicado explícitamente al cliente.

## Compartir

Igual que un woku, un NPS o un Flow. Tres opciones:

* Código QR.
* Enlace.
* Envío masivo por correo.

## Respuestas

Las respuestas quedan disponibles en la vista del Form. Para cada respuesta verás los valores de cada campo, la fecha de envío y, cuando corresponda, el dato de contacto del cliente.

Puedes exportar todo a CSV para procesarlo en una hoja de cálculo o cargarlo a tu sistema.
