2. Crear un campo personalizado
Admin → Campos personalizados → Nuevo.

Datos generales
- Modelo destino (target): desplegable con los modelos del core (Cliente, Producto,
Factura de cliente, Pedido…).
- Clave: identificador único del campo dentro del target. Sin espacios (usa
talla_zapato, no talla zapato).
- Etiqueta: texto visible junto al campo en la ficha.
- Grupo (pestaña): nombre de la pestaña. Vacío = pestaña "Campos personalizados".
- Tipo: ver la tabla de tipos más abajo.
- Orden: posición del campo dentro de su pestaña (menor = antes).
- Activo: si está desmarcado, el campo no se muestra.
- Obligatorio: bloquea el guardado de la pestaña si se deja vacío.
- Filtrable en listado: añade un filtro por este campo en el listado del target
(ver sección 5).
Tipos de campo
| Tipo | Se muestra como | Notas |
|---------------|-----------------|-------|
| text | Caja de texto | Reglas de longitud / patrón. |
| textarea | Área de texto | Texto largo. |
| number | Numérico | Reglas de valor mínimo / máximo. |
| date | Selector de fecha | |
| boolean | Casilla | Sí / no. |
| select | Desplegable | Opciones desde catálogo, lista en línea o relación. |
| multiselect | Selección múltiple | Igual que select pero admite varios valores. |
| relation | Desplegable de registros | Apunta a otro modelo del core (ver sección 4). |
| file | Subida de fichero | Uno o varios adjuntos (Máximo de ficheros). |
| photo | Subida de imagen | Solo imágenes. |
Reglas de validación (pestaña Validación)
Según el tipo: longitud mínima/máxima, valor mínimo/máximo y patrón (expresión
regular sin delimitadores, p. ej. ^[0-9]{9}$). La validación es de servidor y
bloqueante: si algo no cumple, no se guarda nada de esa pestaña y se muestran los errores.