# Campos personalizados

> Los datos extra del registro de los miembros (empresa, cargo, ciudad, tipo de entrada) - tipos, obligatorio, quién ve y quién edita, la petición de completar el registro al entrar y la variable en las campañas.

Los **campos personalizados** son los datos que la comunidad quiere guardar de cada miembro además del nombre, el correo y el teléfono: empresa, cargo, ciudad, fecha de nacimiento, tipo de entrada. El equipo crea los campos una vez; los valores aparecen en la ficha de cada miembro, en el perfil de la propia persona y en las campañas de correo.

## Para qué sirve

| Comunidad | Campos |
|---|---|
| Asociación | *Empresa*, *Cargo*, *Número de asociado* |
| Evento | *Tipo de entrada* (selección), *Ciudad* |
| Escuela | *Clase*, *Fecha de matrícula* |
| Coworking | *Planta*, *Tiene plaza de garaje* (sí/no) |

## Cómo funciona

### Los tipos

| Tipo | Para qué | Ejemplo |
|---|---|---|
| **Texto** | Cualquier texto corto | Empresa |
| **Número** | Un número | Número de asociado |
| **Fecha** | Una fecha | Fecha de nacimiento |
| **Selección** | Una opción de una lista (al menos dos) | Tipo de entrada: VIP, Presencial, Online |
| **Sí/no** | Una respuesta de sí o no | Tiene plaza de garaje |

El tipo **no cambia** cuando algún miembro ya tiene un valor rellenado: *"El tipo no cambia una vez que hay valores cargados."*

### Obligatorio

Un campo **Obligatorio** tiene que rellenarlo todo el mundo. Quien no tenga el valor (miembro antiguo, importado o nuevo) ve, en su **próximo acceso** a la comunidad, la ventana **Completa tu registro** (*"{nombre de la comunidad} pide esta información para que puedas seguir."*) y solo sigue después de rellenarla y hacer clic en **Guardar y continuar**. Quien lo prefiera puede **Salir**.

La [importación por planilla](/membros/importar-membros) nunca bloquea una fila por un campo obligatorio vacío; la persona lo completa en su primer acceso.

### Quién ve y quién edita

| Quién | Ve | Edita los valores |
|---|:-:|:-:|
| Propietario, administrador y moderador | De todos | De todos |
| Finanzas | De todos | Solo los suyos |
| El propio miembro | Los suyos | Los suyos |
| Otro miembro | — | — |

Crear, editar, reordenar y borrar **campos** corresponde al propietario y al administrador. El moderador y finanzas ven la pestaña solo para consulta: *"Puedes ver los campos, pero solo owner y admin los crean, editan o borran."*

Los campos no aparecen en el perfil público: otro miembro no ve la empresa ni el cargo de nadie.

> [!TIP]
> La propia pantalla lo recuerda: *"No pidas datos sensibles (salud, religión, documentos) sin necesidad."*

### Dónde aparecen los valores

- **Ficha del miembro** (equipo): en **Administración › Miembros**, al editar a la persona, la sección **Información adicional**, con **Guardar información**. Para quien entró por importación, ahí también aparece *"Origen: importación por planilla el …"*.
- **Mi Cuenta** (el propio miembro): la tarjeta **Información adicional**, *"Campos que la comunidad pide en el registro."*
- **Campañas de correo:** cada campo se convierte en una variable (abajo).

### En las campañas

Cada campo se convierte en la variable `{{campo_<clave>}}`, donde la clave es el nombre del campo sin acentos, en minúsculas y con `_` en lugar de los espacios: el campo *Empresa* se convierte en `{{campo_empresa}}`, *Tipo de entrada* en `{{campo_tipo_de_entrada}}`. También vale `{{field_<clave>}}`. La clave nace con el campo y no cambia, aunque el nombre cambie después.

En el editor, **Insertar variable** muestra los campos en el grupo **Campos de la comunidad**, con el nombre correcto. El valor sale formateado para quien lo recibe: la fecha en el idioma de la persona, el sí/no traducido, la selección por la opción. Para quien no tiene el valor, usa el texto de reserva: `{{campo_empresa|tu empresa}}`. Consulta [Variables por destinatario](/notificacoes/campanhas-de-email#variables-por-destinatario).

### Borrar un campo

El campo desaparece de la pestaña, de la ficha, del perfil y de las variables de campaña. Los valores ya rellenados **se conservan**. Una campaña que todavía use la variable de un campo borrado se rechaza al guardar o enviar.

## Paso a paso

*Rol: propietario o administrador.*

1. **Administración › Miembros**, pestaña **Campos personalizados**, botón **Nuevo campo**.
2. **Nombre del campo** (ej.: *Empresa*) y **Tipo**. En una **Selección**, escribe las **Opciones** (**Agregar opción** para una más).
3. Marca **Obligatorio** si todo el mundo tiene que rellenarlo.
4. **Guardar**. Usa **Subir** y **Bajar** para cambiar el orden en que los campos aparecen en la ficha y en el perfil.

Para rellenar el valor de alguien: **Administración › Miembros**, edita a la persona y usa **Información adicional**.

## Ejemplos

**Asociación que pide la empresa.** El administrador crea *Empresa* (Texto, obligatorio). En su próximo acceso, cada asociado ve **Completa tu registro** y la rellena. La campaña del congreso empieza con *"{{nome}}, ¿{{campo_empresa|tu empresa}} ya tiene su plaza?"*.

**Evento que importa el tipo de entrada.** En la [importación](/membros/importar-membros), la columna *Tipo de entrada* va a **+ Nuevo campo personalizado**; Memberfy sugiere **Selección**, porque los valores se repiten. Después, el equipo ve en la ficha de cada persona si es VIP, Presencial u Online.

## Errores frecuentes y cómo resolverlos

| Mensaje | Qué hacer |
|---|---|
| *Ponle un nombre al campo.* | Rellena el **Nombre del campo** |
| *Una selección necesita al menos dos opciones.* | Añade otra opción |
| *Completa {campo}.* | El campo es obligatorio y no puede quedar vacío |
| *Solo lectura: owner, admin y moderador editan estos valores.* | Finanzas solo ve los valores de los demás |
| El tipo no aparece para cambiarlo | Ya hay valores rellenados; crea un campo nuevo |

## Preguntas frecuentes

**¿El miembro ve los campos de los demás?**
No. Cada miembro ve solo los suyos; el equipo ve los de todos.

**¿Puedo filtrar el público de una campaña por un campo?**
Todavía no. Por ahora, usa [Etiquetas](/membros/tags) o [Grupos](/membros/grupos-e-organograma) para separar a las personas.

## Con el asistente

`list_member_fields`, `create_member_field`, `update_member_field`, `reorder_member_fields`, `delete_member_field` (pide confirmación) y `update_member_field_values`. Consulta [Herramientas · Miembros](/mcp/ferramentas-membros#campos-personalizados).

## En la API

`GET` y `POST /api/member-fields`, `PATCH` y `DELETE /api/member-fields/{id}`, `PUT /api/member-fields/order` y `PUT /api/profiles/{profileId}/fields`. Los valores vienen en `fields` de `GET /api/profiles/{id}`, solo para el equipo y el propio miembro. Consulta [Member Fields](/api/referencia/member-fields) en la Referencia de la API.

## Relacionados

- [Importar miembros desde una planilla](/membros/importar-membros)
- [Gestionar miembros](/membros/gerenciar-membros)
- [Campañas de correo](/notificacoes/campanhas-de-email)
