Personalización

Ajusta tu experiencia

MGPanel Documentation

MGPanel is a all-in-one platform for creating and managing websites with a fully integrated CRM, keeping each brand or customer in their own workspace. From a single dashboard, you can design pages, manage sales and inventory, collaborate with your team, and support yourself on Emyi to receive contextual guidance in any module without interrupting your workflow.


Quick Access

Table of Contents

Datos

Todo en uno Web + CRM - Olvida las herramientas dispersas.

Ideal para: negocios que necesitan guardar en su sitio web información que no encaja en ningún otro módulo — reservas de clases, inscripciones a un taller, registros de mantenimiento, listas de espera — y que cada visitante pueda crear y consultar lo suyo.


1. ¿Qué es el módulo de Datos?

Datos te da una base de datos propia dentro de MGPanel. Si Funciones son tus endpoints, Datos es tu base de datos: guarda información desde tu sitio web y decide quién puede leerla o escribirla, sin contratar Firebase ni Supabase y sin montar un servidor.

  • Si diriges el negocio: puedes ofrecer áreas privadas a tus clientes sin depender de un programador para cada cambio.
  • Si programas el sitio: tienes una API lista y un SDK de JavaScript ya cargado en la página.
  • Si usas un agente de IA: puede consultar y crear registros por ti desde Claude, ChatGPT o Cursor.

Cuándo NO usar Datos

No guardes aquí clientes, productos, facturas, presupuestos, artículos del blog ni formularios: cada uno tiene su propio módulo, con su vista, su lógica y sus reportes. Datos es para lo que no existe como módulo.


2. Dónde encuentro el módulo

  • Ingresa al panel y ve a Sitio Web → Datos (/data).
  • Verás una tabla con tus colecciones, cuántos documentos tiene cada una, quién puede hacer qué y si están cifradas.
  • Las tarjetas de arriba resumen el total de colecciones, documentos, cuántas están cifradas y cuántas están abiertas en internet.

3. Conceptos en dos minutos

  • Colección: un conjunto de registros del mismo tipo. Por ejemplo reservas.
  • Documento: cada registro dentro de una colección. Por ejemplo una reserva concreta.
  • Campos filtrables: los campos por los que podrás buscar u ordenar. Se declaran al crear la colección (máximo 5). El resto del contenido se guarda igual, pero no se puede filtrar por él.
  • Reglas: qué puede hacer un visitante de tu sitio con esa colección. Se definen por operación.

4. Crear una colección (paso a paso)

4.1 Abre el formulario

  • Pulsa “Nueva colección” arriba a la derecha.
  • Ponle un nombre (lo verás en el panel) y un identificador en minúsculas y sin espacios: es el que usarás en el código, por ejemplo reservas.

4.2 Elige quién podrá usarla

En vez de configurar reglas una por una, elige un preset. Siempre puedes afinarlo después.

PresetQué permite
Privada totalNadie accede desde el sitio web. Solo tú, desde el panel o por API.
Área privada del clienteCada visitante con sesión crea, ve y edita solo lo suyo. Nadie borra.
BuzónCualquiera puede enviar, nadie puede leer desde el sitio.
Catálogo públicoCualquiera puede leer desde el sitio. Solo tú escribes.

Toda colección nace cerrada

Al crearse, ninguna operación está permitida desde el sitio web. El preset se aplica después, como un paso aparte y explícito. Es deliberado: así una colección nunca queda expuesta por olvido.

4.3 Elige el cifrado

  • Sin cifrar: el contenido se guarda tal cual.
  • Cifrado en el servidor (recomendado): protege el contenido si alguien obtuviera una copia de la base de datos. Tú lo sigues viendo con normalidad en el panel.

El cifrado no se puede cambiar una vez que la colección tiene documentos: los ya guardados quedarían ilegibles.

4.4 Declara los campos filtrables

Añade hasta cinco campos indicando su tipo (texto, número, sí/no o fecha). Solo por estos podrás filtrar y ordenar. Puedes cambiarlos después.


5. Usar la colección desde tu sitio web

Abre la colección y ve a la pestaña “Código para tu web”. Ahí tienes un fragmento listo para pegar en el JavaScript de tu sección: funciona tal cual, sin cambiar ninguna URL.

// Leer
const reservas = await mgData.list('reservas', {
  where: [{ field: 'estado', op: 'eq', value: 'activa' }]
});

// Crear
await mgData.create('reservas', {
  clase: 'Reformer 7am',
  fecha: '2026-09-26',
  estado: 'activa'
});

El objeto mgData ya está disponible en todas las páginas de tu sitio en cuanto activas el módulo. Sus métodos son:

  • mgData.list(coleccion, opciones) — lista registros, con filtros opcionales.
  • mgData.get(coleccion, id) — un registro concreto.
  • mgData.create(coleccion, datos) — crea un registro.
  • mgData.update(coleccion, id, datos) — reemplaza su contenido.
  • mgData.remove(coleccion, id) — lo elimina.
  • mgData.isSignedIn() — indica si el visitante tiene sesión iniciada.
  • mgData.watch(coleccion, callback) — relee cada pocos segundos y avisa cuando algo cambia.

5.1 Filtros disponibles

Solo se puede filtrar por los campos que declaraste. Los operadores admitidos son:

  • eq, ne — igual, distinto.
  • gt, gte, lt, lte — mayor y menor.
  • in, nin — está o no está en una lista.
  • exists — el campo existe.
  • starts_with — empieza por (solo en campos de texto).

6. Ejemplo completo: reservas de clases

Un estudio quiere que sus alumnos reserven clases desde la web y que cada uno vea solo las suyas.

  1. Crea la colección reservas con el preset Área privada del cliente y cifrado en el servidor.
  2. Declara los campos filtrables: fecha (fecha), clase (texto) y estado (texto).
  3. Crea una página nueva —por ejemplo mis-clases— y marca “Requiere inicio de sesión” en sus ajustes.
  4. Pega el código de abajo en el JavaScript de la sección.
// Muestra las reservas del alumno y permite crear una nueva
async function pintarReservas() {
  const reservas = await mgData.list('reservas');
  document.getElementById('mis-reservas').innerHTML = reservas
    .map(r => '<li>' + r.data.clase + ' — ' + r.data.fecha + '</li>')
    .join('');
}

document.getElementById('form-reserva').addEventListener('submit', async (e) => {
  e.preventDefault();
  await mgData.create('reservas', {
    clase: document.getElementById('clase').value,
    fecha: document.getElementById('fecha').value,
    estado: 'activa'
  });
  pintarReservas();
});

pintarReservas();

El alumno se registra desde /login de tu sitio. No hace falta que configures nada más: la sesión del sitio le da identidad automáticamente, y cada alumno verá únicamente sus propias reservas.


7. Seguridad

  • Toda colección nace cerrada: ninguna operación está permitida desde el sitio hasta que tú la abras.
  • “Solo su dueño” es real: cuando una regla es de tipo dueño, pedir el registro de otro visitante no devuelve un error de permiso — devuelve que no existe. Nadie puede leer lo del vecino.
  • El panel avisa en rojo antes de guardar si una operación va a quedar abierta en internet, y marca esas colecciones en el listado.
  • Solo tu dominio: las llamadas desde el sitio de otra cuenta se rechazan, aunque sea otro sitio hecho en MGPanel.
  • Los datos de sistema los pone el servidor: el dueño de un registro y sus fechas no se pueden falsear desde el navegador.

Antes de poner algo en “Cualquiera (público)”

Esa opción deja la operación abierta a cualquier persona que entre en tu sitio, sin ninguna credencial. Úsala solo para contenido que publicarías igualmente, como un catálogo. Para todo lo demás, “Con sesión iniciada” o “Solo su dueño”.


8. Límites de tu plan

LímitePlan GratisPlan Avanzado
Colecciones325
Documentos2.00050.000
Tamaño por documento256 KB256 KB
Campos filtrables por colección55

Puedes consultar tu consumo actual en las tarjetas de la parte superior del módulo.


9. Conectar con un agente de IA

Datos está disponible por MCP: Claude, ChatGPT, Cursor o Gemini pueden crear colecciones, consultar registros y añadirlos por ti.

  • Ve a Configuración → API y crea una llave con el permiso Datos marcado.
  • Conéctala a tu agente como explica la guía de API y conexión con agentes de IA.
  • Con esa llave, el agente ve todos los registros, también los de cada visitante: las reglas gobiernan tu sitio web, no el panel.

10. Buenas prácticas

  • Empieza cerrado: deja la colección privada, prueba desde el panel y abre solo lo que necesites.
  • Declara pocos campos filtrables: solo aquellos por los que de verdad vas a buscar.
  • Usa el módulo nativo cuando exista: si lo que guardas son clientes o productos, su módulo te dará mucho más.
  • Cifra lo sensible: si guardas datos personales, deja el cifrado en el servidor activado.

11. Ayuda y soporte

  • Pregunta a Emyi dentro del panel para resolver dudas rápidas sobre el módulo.
  • Escribe a [email protected] si algo no funciona como esperas.

📌 Resumen express:

  1. Entra a Sitio Web → Datos y pulsa “Nueva colección”.
  2. Elige un preset: Área privada del cliente es el más común.
  3. Declara los campos por los que vas a filtrar.
  4. Copia el código de la pestaña “Código para tu web” y pégalo en tu página.
  5. Si la página debe ser privada, márcala con “Requiere inicio de sesión”.

COMPARTIR

FAQs

MGPanel is a platform for creating and managing websites with integrated CRM. It's meant for business owners, marketing teams, and developers who need to work with multiple accounts from a single dashboard.

An account is the project or business (website + CRM). A user is the person who accesses the dashboard. The same user can have access to multiple accounts with different roles.

From the Users module you can invite by email and assign a role (Owner, Administrator, Developer or Editor). Each role defines what you can view and modify within the account.

Changes are published from the Edit Web module. If you have auto-publish turned on, they're reflected when you save. If not, you'll need to request or confirm the post based on your account settings.

Yes. MGPanel is multi-account: you can create and manage multiple accounts and switch between them from the Accounts module without mixing data.

Create the form in the Forms module and then use its shortcode within a page of the Website module. The form is automatically rendered on the site.

Products are created in Inventory and used in Invoices or Estimates. For payment methods, activate a gateway from Integrations and fill in the required credentials.

Use the preview from the editor or open the site's public URL. If it doesn't appear, check the publishing status and clear your browser's cache.

You can ask emyi from the dashboard or open a ticket in Help → Report a bug. Include screenshots and the account name to speed up support.

MGPanel maintains snapshots and backups based on your account settings. Review Settings to see the status of backups and versioning.