Airtable
Airtable es la "fuente de verdad" del negocio: quién es alumno, qué tiene contratado, en qué estado está y con qué fechas. El Campus refleja lo que hay en Airtable, no al revés. Esta página reúne todo lo relacionado con Airtable en un solo sitio: cómo se conecta con el Campus, para qué se usa y qué hacer cuando algo no aparece.
La regla de oro
Si un alumno "no existe" en el Campus, o algo suyo no cuadra, lo primero es mirar Airtable. El Campus no inventa datos: los toma de ahí.
Cómo se conecta el Campus con Airtable
El Campus se entera de las ventas por dos caminos:
- Al momento, al dar de alta. Cuando el consultor rellena el formulario de alta, Make crea la venta y avisa al Campus en ese instante. El alumno suele tener su cuenta, su curso y su correo de bienvenida en unos segundos.
- Cada 10 minutos, siempre. Además, el Campus va a leer Airtable él solo, cada 10 minutos y a cualquier hora, y se trae lo que haya cambiado: altas que no llegaron al momento, cambios de estado, de fechas, de tutora… Es la red de seguridad.
Cómo llega Airtable al Campus
- Se marca la filaEn la ficha de Ventas, administración marca la casilla "is_campus". Eso dice: esta persona va al Campus.
- Llega al CampusAl crear la venta, Make avisa al Campus y entra al momento. Por si acaso, cada 10 minutos el Campus vuelve a leer Airtable (España y Latinoamérica) y se trae las filas marcadas que hayan cambiado.
- Se actualiza el CampusCrea o actualiza la matrícula del alumno con su estado y sus fechas. No hace falta ninguna automatización de Airtable.
Lo que decide si una venta entra en el Campus es la casilla «is_campus» de la fila de Ventas. Una vez marcada:
- La venta entra al momento o, como mucho, en 10 minutos.
- Si la fila cambia después (estado, fechas…), el Campus lo recoge en la siguiente lectura.
- Si no está marcada, el Campus no la ve, por muy completa que esté.
- «Tutor NEW» puede ir vacío. La venta entra igual y el alumno queda sin tutora hasta que alguien rellene el colaborador (uno o dos días; hasta tres con fin de semana). → Ver Sin tutora todavía.
Detalle técnico (para el equipo de desarrollo)
Las dos entradas usan la misma ingesta de matrículas (idempotente):
- Webhook
/api/webhooks/airtable, protegido por firma: lo llama Make al crear la venta desde el formulario de alta. - Sincronización periódica
/api/cron/airtable-sync, cada 10 minutos las 24 horas. Lee la tabla Ventas de las dos bases —España y Latinoamérica—, cada una con su propio cursor; por cada fila conis_campusejecuta la ingesta y archiva feedbacks desde el mismo snapshot (ver Finalizado archiva). Si la lectura de una base falla, la otra sigue y avanza y la corrida queda en rojo en Vercel. - Lectura en vivo de la ficha, bajo demanda cuando el equipo abre la ficha del alumno. No guarda nada.
Para qué usa el Campus Airtable
Airtable aparece en más sitios de los que parece. De Airtable, el Campus:
- Da de alta y matricula. De la tabla Ventas (España y Latinoamérica) salen la cuenta, los cursos, el estado, las fechas y la tutora de cada alumno. → Ver Acceso y tutoría.
- Archiva feedbacks. Si una venta pasa a Finalizado, o se marca una casilla de semana, el Campus cierra los feedbacks que tocan. → Ver Finalizado archiva.
- Marca las casillas de la semana (S1–S13) al responder la tutora. Es lo único que el Campus escribe en Airtable. → Ver Las casillas de la semana.
- Enseña la ficha al equipo. Al abrir la ficha de un alumno (en el chat o en la ficha del gestor y del admin), el Campus lee al momento sus datos de Ventas: nombre, nivel, programa y los comentarios de la llamada de alta. El alumno nunca los ve.
- Lleva a la tutora a la ficha buena. El botón «Ver ficha en Airtable» de la tutora abre la página de su programa en la interfaz de alumnos de Airtable.
- Copia el nivel (A1–C2) desde la ficha de Contactos, para Satisfacción.
- Reconoce las cuentas del equipo por la casilla «is_team» de cualquier venta. → Ver Cuentas del equipo.
- Da los cursos antiguos. Cada madrugada lee las ventas viejas de Kajabi (sin «is_campus») para dar los cursos que el alumno compró allí. → Ver Cursos antiguos.
- Crea las cuentas de demostración. Cada madrugada lee la tabla «Equipo» (consultores y Atención al Cliente). → Ver Cuenta de demostración.
- Lee las llamadas 1:1 hechas (casillas V1–V13 y «Videollamadas» de la venta). Las llamadas 1:1 están aparcadas ahora mismo. → Ver Agenda de llamadas 1:1.
Finalizado archiva los feedbacks abiertos
En cada lectura, el Campus mira el estado y las casillas de semana de la venta y cierra lo que ya no tiene sentido tener abierto:
- Venta en Finalizado → cierra todo lo abierto de ese alumno: lo pendiente, lo que está en revisión, lo respondido y también las semanas a medias. Solo respeta lo que la tutora devolvió para regrabar. Lo cerrado sale de la cola de la tutora.
- Casilla de una semana marcada → cierra solo lo ya respondido de esa semana. Nunca cierra algo pendiente ni a medio corregir.
Cerrar no borra nada: el alumno sigue viendo su respuesta como siempre.
Las casillas de la semana (S1–S13)
En la fila de Ventas de cada alumno hay trece casillas, S1 a S13, una por semana del programa. Las marca el Campus solo en el momento en que la tutora envía su respuesta: mira de qué Week es la semana (la posición del módulo dentro del curso, sin contar la bienvenida) y marca su casilla en la base que toca (España o Latinoamérica). Marcar dos veces no hace daño.
Solo se marca en los programas semanales (hoy Essential y PRO); Traveling, Daily, Pronunciation Boost y los cursos de prueba no tienen casilla. Si el alumno no tiene ficha de venta enlazada, o la semana no está entre 1 y 13 (Repaso, Sorpresa…), el Campus la omite y lo deja dicho.
Cómo se ve. Debajo de la respuesta enviada —en el detalle de la tutora y en el del gestor— aparece una línea de estado:
- ✅ «Semana N marcada en Airtable» → todo bien.
- ⚪ «No se marcó en Airtable: …» → omitida, con el motivo (el alumno no tiene ficha de venta enlazada, el curso no es de programa semanal, la semana no tiene casilla). No hay nada que arreglar si el motivo es esperable.
- 🔴 «No se pudo marcar la semana N en Airtable» → falló (Airtable no respondió, la ficha cambió…). Debajo hay un botón «Reintentar» que vuelve a marcarla al instante, y un «Detalle técnico» desplegable por si hay que pasárselo a tecnología. Pueden reintentar la tutora (en sus tickets o en los que cubre), el gestor y administración.
Dónde lo vigila el gestor. En Supervisar feedbacks, el filtro Airtable (Fallo al marcar · Omitida · Marcada) y un indicador rojo en la fila cuando falló; en la ficha del alumno, el bloque «Semanas marcadas en Airtable» resume qué casillas puso el Campus (sin datos no quiere decir ninguna: los tickets antiguos no tienen registro). Si en las últimas 24 horas hubo fallos reales (las omitidas no cuentan), gestores y administración reciben un correo diario («N marcas de semana fallidas en Airtable») con la lista para reintentar.
Devolver para regrabar no desmarca
Si la tutora devuelve grabaciones de una semana ya respondida, la casilla que se marcó se queda marcada; al responder de nuevo se vuelve a marcar (sin efecto). La casilla dice «esta semana recibió respuesta», no «está perfecta».
El acceso a Airtable: token y seguridad
Para leer Airtable, el Campus usa un token de acceso personal (Personal Access Token) de Airtable. Conviene saber dónde está y dónde no:
- No es una "app conectada" ni una integración de las que salen en el panel de la base. Es un token creado en el Builder Hub de Airtable (
airtable.com/create/tokens); por eso no aparece listado como aplicación en la base. - No está en el código. Vive solo como variable de entorno en Vercel (
AIRTABLE_API_KEY). Nunca se sube al repositorio. - Qué puede leer: las dos bases del CRM (España y Latinoamérica), incluida la tabla «Equipo» de la de España. En la ficha, el Campus pide solo los campos que necesita (nada financiero).
- La tarea programada se protege aparte con su propio secreto (
CRON_SECRET), para que nadie de fuera pueda dispararla.
Si hay que rotar el token
Si el token de Airtable se cambia o caduca, hay que actualizar AIRTABLE_API_KEY en Vercel. Mientras esté mal, las altas, la ficha, las casillas de semana, los cursos antiguos y las cuentas de demostración dejan de funcionar (el resto del Campus sigue igual). No se toca nada en el código.
Extensiones: Traveling, Daily y Pronunciation Boost
Hay tres cursos que no se venden como "Programa" sino como casillas en la misma fila de Ventas: Traveling, Daily y Pronunciation Boost. Van sobre la misma venta que el programa principal, así que comparten sus fechas: mismo inicio, mismo año de acceso.
- Casilla marcada → el Campus matricula al alumno también en ese curso, en la misma lectura en la que procesa su programa. No hace falta nada más.
- Casilla desmarcada después → el Campus le retira ese curso (queda como devolución); si se vuelve a marcar, lo recupera.
- Cualquier combinación vale: el Campus no comprueba si una extensión "pega" con un programa. Si alguien marca una por error, el alumno la ve y se corrige desmarcándola.
- Cada casilla tiene que estar conectada a un curso del Campus. Eso lo hace administración desde la ficha del curso, en el campo "Programa de Airtable", grupo Extensiones (ver Crear y ajustar un curso). Si una casilla está marcada pero no tiene curso conectado, la venta del programa se procesa igual y queda un aviso en la sincronización; el alumno simplemente no ve esa extensión hasta que se conecte.
Solo ventas nuevas
Las ventas anteriores a agosto de 2026 con extensiones marcadas no se han rematriculado hacia atrás. Si un alumno antiguo pregunta por su Traveling, hay que dárselo a mano o volver a procesar su fila.
No confundir con las "ampliaciones"
Una ampliación es alargar la fecha de fin de acceso de un alumno (se pone a mano en su ficha, ver Acceso y tutoría). Una extensión es uno de estos tres cursos extra. Son cosas distintas.
Automatizaciones de Make sobre Ventas
Además del Campus, hay automatizaciones de Make que leen y escriben la tabla Ventas. El Campus no las controla, pero cambian lo que el Campus ve. Cada una tiene su versión para España y otra para Latinoamérica.
«Alta Alumno»: la venta entra en Airtable
Cuando el consultor cierra una venta, rellena el formulario de alta (Tally). Make crea la fila en Ventas (y el pago, la factura, el contacto en ActiveCampaign…) con este estado:
- Fecha Inicio = hoy → la venta entra ya en Activo.
- Fecha Inicio otro día → entra en Pendiente, y la activa la automatización de abajo cuando llegue la fecha.
Al crear la venta, Make avisa al Campus al momento, así que el alumno no espera a la siguiente lectura de 10 minutos.
«Alta otra fecha»: de Pendiente a Activo el día de inicio
- Cuándo corre: cada hora (España de 6:00 a 23:00; Latinoamérica, todo el día).
- Qué fichas coge: las de Ventas en Pendiente con Fecha Inicio de hoy o anterior (también recupera fechas pasadas que se quedaron sin activar). No mira el tipo de pago: las altas gratuitas (Free) entran igual.
- Qué hace con cada una:
- Pasa el Estado Alumno a Activo. El Campus lo recoge en su siguiente lectura y abre el curso.
- En ActiveCampaign: crea o actualiza el contacto, guarda la fecha de inicio y le pone las etiquetas del programa (y las de Traveling o Daily si van marcadas). Ojo: una alta gratuita también recibe estas etiquetas.
- En Kajabi (España): da el acceso solo si la casilla «is_campus» NO está marcada. Los alumnos del Campus no reciben acceso a Kajabi.
- En Slack: si la Fecha Inicio ya había pasado, avisa en el canal del equipo.
«Fecha Inicio Editada»: cambio de grupo
Se dispara solo al cambiar la Fecha Inicio de una venta.
- Si la venta no tenía fecha (es la primera): solo calcula la Fecha Fin (inicio + 105 días).
- Si el alumno estaba en Activo y su fecha ya había pasado (se cambia de grupo para reiniciar): pasa la venta a Pendiente, recalcula la Fecha Fin, le quita el acceso a Kajabi (solo si no es del Campus), actualiza ActiveCampaign y le manda un correo: «ya hemos realizado el cambio de grupo… para reiniciar el curso el {fecha}». El día de la nueva fecha, «Alta otra fecha» lo vuelve a poner en Activo.
En el Campus, mientras tanto, el alumno ve su curso como «Próximamente» (solo la introducción) y su año de acceso vuelve a contar desde la nueva fecha.
«Pausa Programa»: pausar a un alumno
Se dispara desde Airtable al pausar una venta.
- Pone el Estado en Pausa y vacía la Fecha Inicio y la Fecha Fin.
- Avisa en Slack («Nueva Pausa de …»), actualiza ActiveCampaign, quita Kajabi (solo si no es del Campus) y le manda un correo al alumno: «hemos pausado tu curso… confírmanos la fecha para retomar».
En el Campus el curso queda «Sin acceso», sin borrar nada.
La tutora no se pierde en el Campus
Estas automatizaciones vacían Tutor NEW en Airtable, pero el Campus no le quita la tutora al alumno: conserva la que tenía hasta que en Airtable se ponga otra.
Si un alumno no aparece en el Campus
Antes de escalarlo, repasa esta lista (de arriba abajo):
- ¿Está la fila marcada para el Campus? Sin la casilla «is_campus» marcada, no entra.
- ¿El correo es exacto? El alumno entra con el correo de Airtable; una errata lo deja fuera. (Ver también Iniciar sesión y la FAQ.)
- ¿El estado lo permite? Solo Activo y Pendiente crean la cuenta. → Ver Acceso y tutoría.
- ¿Han pasado unos minutos? Si no entró al momento, la lectura de cada 10 minutos lo recoge.
- ¿Falta «Tutor NEW»? No bloquea el alta: el alumno entra sin tutora y la recibe en cuanto se rellene. Si no aparece, la causa es otra.
Dos casos que no salen de Ventas, así que no los busques ahí:
- Comprador de un libro. Se registra solo con el QR y no está en Airtable. Búscalo en Admin → Usuarios por su correo. → Ver El regalo del libro.
- Cuenta de demostración. Sale de la tabla «Equipo» y el Campus la crea cada madrugada, no al momento. → Ver Cuenta de demostración.
Si tras todo esto sigue sin aparecer, abre una incidencia con el correo del alumno y el enlace a su ficha de Airtable.
En resumen
- Airtable manda; el Campus refleja.
- Una venta entra al momento (aviso de Make al darla de alta) o, como mucho, en la lectura de cada 10 minutos.
- Lo que la deja entrar es la casilla «is_campus» de la fila.
- La ficha se lee al momento y es solo para el equipo.
- Lo único que el Campus escribe en Airtable son las casillas de la semana.
- El acceso va con un token guardado en Vercel, no en el código ni como app conectada.