# Formularios

> El módulo de espacio Formularios. Cómo crear un espacio de un formulario o de varios, montar los campos en el editor (14 tipos, etapas, obligatorio, bloquear al perfil, vista previa), elegir quién rellena, proteger con contraseña, publicar por el enlace, recibir cada envío por correo, trabajar la lista de envíos con estado, filtros y CSV, guardar a quien envió como miembro y llevar los envíos a webhooks, HubSpot y RD Station.

El **formulario** recoge datos estructurados de quien es miembro y de quien todavía no lo es: la solicitud de demostración de tu sitio, la inscripción en un programa, la candidatura a una vacante, el registro de interés en un curso que todavía va a abrir. Cada envío llega por correo a los responsables y queda en una **lista de envíos**, uno a uno, con estado de atención, filtros y CSV, dentro de la comunidad, sin Google Forms ni Typeform.

**Formularios** es un [módulo de espacio](/conceitos/modulos), en la pestaña **Comunidad** de **Añadir Espacio**, con la descripción *"Recoge datos de miembros y visitantes, con lista de envíos"*. Todo formulario vive en un espacio de Formularios.

## Formulario o encuesta

| | [Encuesta](/espacos/pesquisas) | Formulario |
|---|---|---|
| Para qué | Medir opinión: NPS, satisfacción, clima | Recoger datos de contacto y solicitudes |
| Tipos de campo | Opción, escala, NPS y texto | Nombre, correo, teléfono, empresa, cargo, texto, opciones, número, fecha, enlace y consentimiento |
| Lo que ve el equipo | El resultado consolidado (gráficos, NPS), con anonimato opcional | Cada envío, uno a uno, con nombre y correo, y un estado de atención |
| Aviso | Invitación por correo al abrir | Un correo a los responsables con cada envío |
| Se convierte en miembro | No | Opcional: **Guardar como miembro** |

## Crear el espacio

1. En la barra lateral, **Añadir Espacio**, pestaña **Comunidad**, **Formularios**.
2. En **Cómo funciona el espacio**, elige:
   - **Un formulario**: *"El espacio es el propio formulario y se abre directamente en él."* El siguiente paso de la misma ventana pide el **Título del formulario** (y una **Introducción**, opcional); **Crear formulario** termina en su editor.
   - **Varios formularios**: *"Una lista: crea todos los formularios que quieras en este espacio."* El espacio se abre en la lista, con **Nuevo formulario**.
3. El formulario nace como **Borrador**: *"nadie lo ve hasta que lo publiques"*, ni por el enlace.

### Quién crea

Quien el espacio deja publicar: la opción **Quién puede publicar** del espacio (ver [Espacios](/conceitos/espacos)). El propietario y el administrador siempre pueden. En un espacio de **Varios formularios**, quien no está en la selección no ve **Nuevo formulario** (y la API responde 403). En un espacio de **Un formulario**, el formulario nace con el espacio, por quien lo creó.

Un miembro que crea un formulario lo gestiona como el equipo, con una diferencia: las opciones **Cualquiera con el enlace** y **Guardar como miembro** son **solo del equipo** (propietario, administrador, moderador y finanzas). El miembro no las ve en el editor, y la API lo rechaza con 403 si intenta activarlas.

## El editor

El editor ya es la pantalla que ve quien rellena: escribes el título y la introducción en su sitio, y cada campo aparece como va a aparecer.

- **Etapas.** El formulario se divide en etapas (secciones), cada una con título y descripción; quien rellena avanza con **Siguiente**. **Nueva etapa** crea otra; **Quitar etapa** quita la etapa y sus campos (los envíos ya recibidos conservan las respuestas). Hasta 20 etapas.
- **Campos.** **Añadir campo** o el **+** entre dos campos inserta en ese lugar. Hasta 100 campos por formulario. Arrastra para reordenar, o usa **Subir**, **Bajar** y **Mover a la etapa**.
- **Propiedades.** Haz clic en un campo para abrir el panel **Campo**: **Tipo**, **Obligatorio**, **Texto de ejemplo en el campo** y, en el número, **Mínimo** y **Máximo**. La etiqueta y el **Texto de ayuda** los escribes en el propio campo. **Duplicar** y **Quitar** están en el panel.
- **Guardar.** Arriba aparece *Cambios sin guardar* o *Todo guardado*; **Guardar** graba.
- **Vista previa.** **Vista previa** muestra el formulario **Como miembro** (con nombre, correo y teléfono de ejemplo sacados de un perfil) o **Como visitante**, sin guardar nada; al final, muestra el mensaje de agradecimiento o adónde iría la persona.

### Los 14 tipos de campo

| Tipo | Qué comprueba |
|---|---|
| **Nombre** | Texto; viene del perfil para un miembro con sesión |
| **Correo electrónico** | Una dirección válida; viene del perfil |
| **Teléfono** | Con el país, en formato internacional; viene del perfil |
| **Empresa** | Texto |
| **Cargo** | Texto |
| **Texto corto** | Hasta 200 caracteres |
| **Texto largo** | Hasta 5.000 caracteres |
| **Opción única** | Una de las opciones (de 2 a 50) |
| **Opción múltiple** | Una o más opciones (de 2 a 50) |
| **Número** | Un número, dentro del mínimo y el máximo, si los hay |
| **Fecha** | Una fecha válida |
| **Enlace (URL)** | Una dirección que empieza por `http://` o `https://` |
| **Documento (CPF o pasaporte)** | CPF con los dígitos verificadores, o pasaporte y otro documento como texto (de 3 a 40 caracteres); el equipo ve el número completo |
| **Consentimiento (privacidad)** | La casilla de aceptación, siempre obligatoria |

Nombre, correo, teléfono, empresa y cargo entran una sola vez cada uno por formulario: son los que forman el contacto (en la lista, en la búsqueda, en los correos y en **Guardar como miembro**).

### Bloquear al perfil

En los campos **Nombre**, **Correo electrónico** y **Teléfono**, el miembro con sesión iniciada encuentra ya el valor de su perfil. Con **Bloquear al perfil** activado (*"Para un miembro con sesión, el valor viene del perfil y no se edita"*), no puede cambiar el valor en el formulario, y el campo muestra *"Viene de tu perfil."* Desactivado, el valor viene rellenado y la persona puede cambiarlo. Para el visitante, el campo es normal.

## Configuración

**Configuración**, arriba en el editor, abre cuatro pestañas. Se aplican al guardar el formulario.

### Quién rellena

| Opción | Qué hace |
|---|---|
| **Miembros con acceso al espacio** | *"Lo rellenan en la app o por el enlace, con sesión."* El envío queda vinculado al miembro |
| **Cualquiera con el enlace** | *"Sin sesión, con verificación antirrobot y consentimiento obligatorio."* Solo la activa el equipo |
| **Guardar como miembro** | Cada envío invita a la persona a la comunidad, con una etiqueta con el nombre del formulario (ver abajo). Requiere un campo de correo obligatorio. Solo la activa el equipo |
| **Contraseña de acceso** | *"Quien abre el enlace escribe la contraseña antes de ver el formulario. No es la contraseña de una cuenta."* Mínimo de 6 caracteres; para cambiarla, escribe la nueva (en blanco, se mantiene la actual) |
| **Política de privacidad (enlace)** | Aparece en el consentimiento. Sin ella, valen los [términos de uso de Memberfy](/conceitos/termos-de-uso) |

Marca al menos una de las dos primeras. Un formulario abierto a visitantes siempre tiene el campo **Consentimiento (privacidad)**: el editor lo añade solo y no deja quitarlo.

### Después del envío

- **Mostrar un mensaje**: el **Mensaje de agradecimiento** en la misma pantalla. Si no escribes uno, aparece *"Recibimos tu envío. ¡Gracias! Tus respuestas llegaron al equipo."*
- **Llevar a un sitio**: la persona va al **Enlace de destino**, que tiene que empezar por `https://`.

### Plazo y límite

- **Cerrar el**: la fecha y la hora en que el formulario se cierra solo, en la zona horaria de la comunidad (la sigla aparece al lado). Sin fecha, queda abierto hasta que lo cierres. **Quitar el plazo** la borra.
- **Límite de envíos**: *"Al llegar al límite, el formulario se cierra solo."* El límite se comprueba en el propio envío: dos envíos a la vez nunca lo superan. Sin número, **Sin límite**.

### Avisos

- **Responsables**: quien recibe un correo con cada envío y ve la lista de envíos, hasta 20 personas (búscalas por el nombre). Quien crea el formulario entra como responsable.
- **Confirmación a quien envió**: activada por defecto, envía el correo *"Recibimos tu envío"* a la dirección del campo de correo (para el miembro con sesión, el correo de la cuenta). El texto es fijo: dice solo que la comunidad recibió el envío, con el color de la comunidad, sin repetir las respuestas.

## Publicar, cerrar y eliminar

| Estado | Qué pasa |
|---|---|
| **Borrador** | Visible solo para quien lo gestiona; el enlace no abre |
| **Abierto** | El enlace abre y el formulario recibe envíos; los miembros con acceso al espacio lo ven en la lista |
| **Cerrado** | El enlace muestra *"Formulario cerrado. Este formulario ya no acepta envíos."* |

- **Publicar** pide al menos un campo además del consentimiento. Si el formulario acepta miembros, la publicación hecha por el equipo avisa por correo a quien tiene acceso al espacio, una vez, 10 minutos después, en la categoría **Formularios** (ver [Correos de esta comunidad](/notificacoes/emails-desta-comunidade)). La publicación hecha por un miembro no envía correo.
- **Cerrar** deja de aceptar envíos; los recibidos siguen en la lista. **Reabrir** lo abre de nuevo (con el plazo vencido o el límite alcanzado, cámbialos antes).
- **Eliminar** deja el enlace sin funcionar y el formulario sale de la lista. Los envíos siguen guardados para el propietario.
- Se puede editar el formulario en cualquier estado. Cada envío guarda una copia de lo que se envió, con la etiqueta del campo en ese momento.

## El enlace público

**Copiar enlace**, en el editor, copia la dirección del formulario, en el dominio de la comunidad: `clube.memberfy.net/f/…`. El código del enlace es largo y no se puede adivinar.

- **Un miembro con sesión** lo rellena por el enlace o por la lista del espacio, sin verificación antirrobot.
- **Un visitante** (con **Cualquiera con el enlace** activado) lo rellena sin cuenta. Antes de enviar, el navegador resuelve una verificación antirrobot, invisible la mayoría de las veces; también hay un límite de envíos por dirección de internet cada 10 minutos. Si se supera, la pantalla pide esperar.
- En un formulario solo para miembros, quien no ha iniciado sesión ve *"Inicia sesión para rellenarlo. Este formulario es solo para miembros de la comunidad."*
- **Con contraseña**, la pantalla pide la **Contraseña de acceso** antes de mostrar los campos. Fallar varias veces bloquea nuevos intentos durante unos minutos, y tras muchas contraseñas erróneas en el mismo formulario en 1 hora, quien lo abre pasa por una verificación anti-robot antes de volver a intentarlo; el formulario no se bloquea. Si el acceso caduca mientras la persona rellena, escribe la contraseña de nuevo y las respuestas siguen ahí.

Los errores aparecen en el propio campo: *"Rellena este campo."*, *"Escribe un correo válido."*, *"Marca el consentimiento para enviar."*, *"El mínimo es …"*.

### Insertar en tu sitio

El botón **Insertar**, junto a **Copiar enlace**, abre dos códigos para pegar en el HTML de tu sitio, donde debe aparecer el formulario:

- **Script (recomendado)**: la altura se ajusta sola, sin barra de desplazamiento.
- **iframe**: para sitios que no aceptan scripts; la altura es fija (ajusta el `height` si hace falta).

Los dos usan el dominio del enlace público del formulario (el dominio propio de la comunidad, cuando tiene uno). Insertado, el formulario aparece compacto, con los colores de la comunidad; los enlaces se abren en una pestaña nueva, y la redirección después del envío lleva la página donde está insertado. En un formulario solo para miembros, el inicio de sesión se abre en una pestaña nueva. Lo demás funciona como por el enlace: verificación anti-robot, contraseña de acceso, límites y **Guardar como miembro**.

El idioma del formulario insertado sigue el `data-lang` del script (por ejemplo, `data-lang="es-ES"`; en el enlace, `?lang=`) y, sin él, el idioma de la comunidad, nunca el del navegador de quien visita. La ventana **Insertar** ya rellena el `data-lang` con el idioma de la comunidad.

## Consentimiento (privacidad)

Cuando el formulario acepta visitantes, la comunidad pasa a recoger datos de quien no es miembro y es la responsable del tratamiento de esos datos. Por eso:

- el campo **Consentimiento (privacidad)** es obligatorio y no se quita; el texto por defecto es *"Acepto el uso de estos datos para que el equipo se ponga en contacto conmigo."*, y puedes reescribirlo;
- al lado aparece el enlace de la **Política de privacidad** que indicaste (sin ella, los términos de uso de Memberfy) y el aviso *"Tus datos van al equipo de …"*;
- cada envío guarda la prueba del consentimiento: el texto aceptado, el enlace de la política y la fecha y la hora. El envío aparece con **Consentimiento: Sí**, *"Aceptado el …"*.

Los envíos quedan guardados hasta que alguien del equipo los elimine; no hay borrado automático.

## Los envíos

**Envíos**, en el editor (con el contador de **Envíos recibidos** y cuántos son nuevos), abre la lista. Cada fila trae la fecha, el origen (**Miembro** o **Visitante**), el nombre, el correo y el estado.

**Quién lo ve:** quien creó el formulario, el equipo (propietario, administrador, moderador y finanzas) y los responsables. Los demás miembros no abren la lista, el envío ni el CSV (403).

- **Estado**: **Nuevo** (*"Nadie ha hablado con esta persona todavía."*), **En contacto** y **Concluido**, en cualquier orden, en **Gestionar envío**.
- **Filtros**: estado, origen, período (**Desde** y **Hasta**) y la búsqueda *"Buscar por nombre, correo o respuesta"*.
- **El envío**: todas las respuestas, la fecha, el miembro (cuando tenía sesión), el resultado de **Guardar como miembro** y la prueba del consentimiento.
- **Exportar CSV**: los envíos del filtro actual, una columna por campo, con estado, origen y fechas en la zona horaria de la comunidad.
- **Eliminar** un envío lo quita de la lista y del CSV; los demás no cambian (y el límite de envíos no se reabre).

## Guardar como miembro

Con **Guardar como miembro** activado, cada envío se convierte en un contacto dentro de la comunidad:

| Quién envió | Qué pasa | Aparece en el envío como |
|---|---|---|
| Alguien que todavía no es miembro | Recibe la invitación por correo para entrar en la comunidad, con la etiqueta del formulario | *Invitado como miembro* |
| Alguien cuyo correo ya es de un miembro | Solo recibe la etiqueta; nada más cambia en el perfil | *Ya era miembro: recibió la etiqueta* |
| Un miembro con sesión | Solo recibe la etiqueta | *Ya era miembro: recibió la etiqueta* |
| Alguien, con la comunidad en el límite de miembros del plan | El envío se guarda, sin invitación | *No pasó a ser miembro (límite del plan)* |
| Alguien, con los límites diarios de invitaciones alcanzados (100 miembros nuevos por formulario, 3 por quien envía y el límite de correos de invitación) | El envío se guarda; no se crea a nadie y no sale ninguna invitación | *No pasó a ser miembro (límite de invitaciones)* |
| Alguien que pidió no recibir invitaciones de la comunidad | El envío se guarda, sin invitación | *Pidió no participar* |

- **La etiqueta** tiene el nombre del formulario y se crea sola con el primer envío (ver [Etiquetas](/membros/tags)).
- **Sin contraseña en el formulario.** El formulario nunca pide contraseña de cuenta: la persona entra por el correo de invitación, como cualquier invitado (ver [Invitar miembros](/membros/convidar-membros)).
- Con la opción desactivada, el envío queda solo en la lista del formulario.

## Correos

| Correo (asunto) | Cuándo | Quién lo recibe | ¿Se puede desactivar? |
|---|---|---|---|
| *Nuevo envío en …* | Con cada envío, con los campos principales y **Ver el envío** | Los responsables | Sí: la categoría **Formularios** |
| *… nuevos envíos en …* | Más de 20 envíos del mismo formulario en una hora: los siguientes llegan juntos, en un solo correo, una hora después | Los responsables | Sí: **Formularios** |
| *Recibimos tu envío: …* | Con cada envío, si **Confirmación a quien envió** está activada; texto fijo | El correo del envío | No: es la confirmación de lo que hizo la persona |
| Invitación para entrar | Con **Guardar como miembro**, para quien no es miembro | El correo del envío | No |
| Formulario nuevo | El equipo publica un formulario abierto a miembros | Quien tiene acceso al espacio | Sí: **Formularios** |

Una misma dirección recibe como máximo **un** correo (confirmación o invitación) por formulario cada 24 horas; los envíos siguientes se guardan sin correo nuevo. Todos los correos salen por la cola, en segundo plano.

## Límites

| Qué | Límite |
|---|---|
| Etapas por formulario | 20 |
| Campos por formulario | 100 |
| Opciones por campo de opción | De 2 a 50 |
| Texto corto · Texto largo | 200 · 5.000 caracteres |
| Responsables | 20 |
| Contraseña de acceso | De 6 a 100 caracteres |
| Contraseñas erróneas en el mismo formulario | Tras muchas en 1 hora, verificación anti-robot antes de volver a intentarlo |
| Miembros nuevos con **Guardar como miembro** | 100 por formulario y 3 por quien envía, por día, además del límite de correos de invitación |
| Envíos de visitantes por dirección de internet | 20 cada 10 minutos |
| Correos a quien envió | 1 por dirección, por formulario, cada 24 horas |
| Correos a los responsables | 20 por formulario cada hora; el resto en un resumen |

## Integraciones

Cada envío dispara el evento **`form.submitted`** (*"Se envió un formulario"*, familia **Formularios**): el formulario, el envío, el origen, el miembro (cuando tenía sesión), cada campo con la etiqueta y la respuesta, y el consentimiento. La dirección de internet de quien envió **nunca** va. Ver [Eventos de webhook](/api/eventos-de-webhook).

- **[Webhooks](/api/webhooks)** y [Zapier, Make y n8n](/integracoes/zapier-make-n8n): suscríbete a `form.submitted` o `form.*`.
- **[HubSpot](/integracoes/hubspot)**: crea el contacto con nombre, correo, teléfono, empresa, cargo y el consentimiento.
- **[RD Station](/integracoes/rd-station)**: registra la conversión *"Envió el formulario …"* y, con el consentimiento, la base legal.

Dos reglas protegen los contactos que ya tienes:

- **Un visitante nunca cambia un contacto existente.** Cualquiera puede escribir el correo de otra persona en un formulario abierto. Por eso, solo el envío de un miembro con sesión y el correo de su propio perfil toca un contacto que ya está en el CRM; el de un visitante se convierte en una nota en el contacto (HubSpot) o solo en la conversión (RD Station). Los detalles están en el artículo de cada app.
- **Quien ya activó HubSpot o RD Station tiene que marcar el evento.** Las instalaciones existentes no reciben `form.submitted` solas: abre la integración, marca **Se envió un formulario** y guarda. Una instalación nueva ya lo trae.

## Con el asistente

El asistente monta, publica y sigue formularios con 17 herramientas, con las mismas reglas de la app (quién crea, opciones solo del equipo, quién ve los envíos). Antes de publicar, llama a `publish_form` con `dry_run` y muestra cuántas personas reciben el aviso por correo y qué hace cada envío (con **Guardar como miembro**, la invitación); solo publica después de tu sí. Eliminar un formulario o un envío pide confirmación. El asistente solo marca el consentimiento al rellenar un formulario después de que hayas leído el texto y dicho que sí.

En Claude, la receta **Recolectar con un formulario** hace el camino entero. Ver [Herramientas · Miembros](/mcp/ferramentas-membros#formularios) y [Recetas](/mcp/receitas).

## En la API

Las rutas del equipo están en `/api/forms` (con el `X-CommunityId`), y las de quien rellena por el enlace en `/api/public/forms/{token}`. La lista completa, con ejemplos, está en la [Referencia de la API](/api/referencia), generada desde la propia API.

## Preguntas frecuentes

**¿Puedo poner el formulario en mi sitio?**
Sí: **Insertar**, junto a **Copiar enlace**, da los códigos para pegar en tu sitio. Ver [Insertar en tu sitio](#insertar-en-tu-sitio). También puedes poner la dirección `…/f/…` en un botón.

**¿Se puede recibir un archivo o cobrar en el formulario?**
No. Para cobrar, usa un [producto](/monetizacao/produtos); para recibir archivos, un espacio de [Soporte](/espacos/suporte) o de [Convocatoria de ponencias](/espacos/chamada-de-trabalhos).

**¿Quién ve los datos de un visitante?**
Quien creó el formulario, el equipo y los responsables. A la persona que lo rellenó se le avisa en la pantalla (*"Tus datos van al equipo de …"*).

**Eliminé el formulario. ¿Perdí los envíos?**
No: siguen guardados para el propietario, hasta que los elimine uno a uno.

## Relacionados

- [Encuestas](/espacos/pesquisas)
- [Crear y organizar espacios](/espacos/criar-e-organizar-espacos)
- [Etiquetas](/membros/tags)
- [Correos de esta comunidad](/notificacoes/emails-desta-comunidade)
- [HubSpot](/integracoes/hubspot) · [RD Station](/integracoes/rd-station)
