Integración Moodle ↔ Zoho CRM
Si vendes formación, tienes el mismo problema dos veces: el comercial vive en el CRM y el alumno vive en Moodle, y entre los dos hay alguien copiando datos a mano. Conectarlos bien elimina ese trabajo y, sobre todo, elimina los errores que nadie detecta hasta que un alumno se queda sin acceso.
Soy de los pocos que conocen bien los dos lados. En Moodle llevo más de cinco años, dos de ellos en Moodle HQ, y en Zoho CRM programo en Deluge a diario para Grupo IOE. Esa combinación es justo la que hace falta aquí: una integración de verdad no se resuelve sólo desde el CRM ni sólo desde el LMS.
La prueba está publicada: **local_ioe**, el plugin que centraliza los servicios web de Grupo IOE, está en el portafolio con capturas reales. Expone servicios web propios sobre la API externa de Moodle para que el CRM cree usuarios, matricule, consulte progreso y reciba de vuelta lo que necesita, con la validación y los permisos que Moodle exige.
Qué se automatiza normalmente: alta del alumno al cerrar la venta, matrícula en el curso o programa comprado, desmatriculación o suspensión al impagar, progreso y nota de vuelta al CRM para que el comercial vea el estado real sin entrar en Moodle, emisión de certificados y avisos de vencimiento.
Cómo lo hago: servicios web de Moodle (REST) con token por integración y capacidades mínimas, funciones Deluge en Zoho CRM disparadas por workflow o por botón, reintentos y registro de cada llamada para que un fallo se vea en lugar de perderse en silencio. Nada de scripts sueltos en un cron que nadie mantiene.
También cubro el caso inverso: si lo que necesitas es que Moodle consulte al CRM (validar una licencia, comprobar el estado de pago antes de dar acceso), se resuelve con la misma arquitectura desde el otro extremo.
Cuéntame qué mueve hoy tu equipo a mano entre Moodle y el CRM y te digo qué se puede automatizar y con qué esfuerzo.
Preguntas frecuentes
¿Cuánto cuesta un plugin Moodle a medida?
Los plugins a medida arrancan desde 500 €. El precio final depende del alcance: número de pantallas, integraciones con APIs externas, tests automáticos requeridos y nivel de mantenimiento posterior. Te paso un presupuesto cerrado en menos de 24 horas tras una llamada o un brief escrito.
¿Trabajas con Moodle 4 y Moodle 5?
Sí. Mantengo plugins compatibles con ambas ramas y planifico migraciones de la 3.x a la 4.x y de la 4.x a la 5.x. Si te interesa solo un informe de migración sin implementación, también lo ofrezco.
¿Puedes auditar mi Moodle y entregarme solo el informe?
Sí. Ofrezco auditorías "informe-only": rendimiento, seguridad, plugins, accesibilidad, GDPR y plan de mejora. Sin obligación de contratar la implementación.
¿Trabajas con instituciones fuera de España?
Sí. Facturo en EUR y USD, firmo contratos internacionales y trabajo con equipos en horarios CET o GMT. Tengo experiencia con clientes en Colombia, México, Estados Unidos y resto de la UE.
¿Firmas NDA?
Por defecto sí. Puedo firmar el NDA estándar del cliente o aportar uno propio basado en LO 3/2018 y RGPD.
¿Publicas mi plugin en moodle.org?
Solo si tú lo autorizas y el alcance es genérico (no específico a tu organización). Cuando lo hacemos, queda explícito en el contrato y conservas todos los derechos de marca y configuración interna.
¿Cómo gestionas la accesibilidad WCAG?
Cada plugin nuevo se entrega con un checklist WCAG 2.1 nivel AA cubierto: contraste, navegación por teclado, foco visible, texto alternativo, semántica HTML, compatibilidad con lectores de pantalla y respeto a prefers-reduced-motion.
¿Desarrollas CRMs a medida o solo configuras los que ya existen?
Las dos cosas. Construyo CRMs completos en Laravel cuando el proceso comercial no cabe en una herramienta de catálogo —embudo propio, presupuestos versionados, cobros escalonados, facturación y cuadros de mando— y también configuro, automatizo y mantengo CRMs de mercado como Zoho CRM. Antes de escribir código te digo con franqueza cuál de las dos vías te sale a cuenta.
¿Puedes administrar el CRM que ya tengo?
Sí. Administración completa: módulos y campos, roles y permisos finos, plantillas de correo, objetivos comerciales, automatizaciones y flujos de trabajo (en Zoho CRM, con Deluge), integraciones con tu ERP, tu Moodle o tu pasarela de pago, y migración de datos con deduplicado si vienes de otro sistema.
¿Cuánto cuesta y cuánto tarda un CRM a medida?
Depende del alcance real, y por eso nunca doy un número sin haber dibujado antes tu proceso comercial. Lo que sí es fijo es el método: un documento corto de alcance que apruebas antes de escribir código, presupuesto cerrado por bloques funcionales y entregas que puedes usar desde el primer mes en lugar de esperar meses a un «gran lanzamiento». Sin licencias por usuario: el coste es el desarrollo, no una cuota que crece con tu equipo.
¿De quién es el código y los datos del CRM?
Tuyos. El código vive en tu repositorio, los datos en tu servidor o en el hosting que elijas, y te entrego documentación y accesos para que otro equipo pueda continuar si algún día lo decides. Sin permanencia, sin licencias propietarias y sin lock-in — exactamente el mismo criterio que aplico con Moodle.
¿Te encargas también del hosting y la instalación?
Sí, si quieres. Instalo y configuro Moodle o tu aplicación en tu servidor, en cloud o en Docker, con HTTPS, copias de seguridad automáticas, cron, colas y un cortafuegos razonable. También puedo limitarme a dejarte la documentación de despliegue para que lo monte tu equipo o tu proveedor. Lo que no hago es revenderte hosting: contratas tú directamente y las claves son tuyas.
¿Ofreces mantenimiento continuo o solo proyectos cerrados?
Las dos modalidades. Hay proyectos con presupuesto cerrado y entrega, y hay clientes con una bolsa de horas mensual para actualizaciones de versión, parches de seguridad, incidencias y mejoras pequeñas. Cuando entrego un proyecto te digo con franqueza si necesita mantenimiento real o si puede vivir tranquilo unos meses.
¿Trabajas con SCORM, H5P y xAPI?
Sí. Moodle soporta SCORM 1.2/2004, H5P (integrado en el core desde la 3.9) y xAPI de serie, y trabajo con los tres: importación de paquetes existentes, diagnóstico de contenidos que no reportan bien la nota o la finalización, contenido interactivo con H5P y envío de sentencias xAPI a un LRS externo cuando hace falta analítica más allá de Moodle.