Nordlet

← Blog

Por qué fracasan las implementaciones de ERP y por qué una API cambia las probabilidades

Siete patrones de fracaso que se repiten en los proyectos de ERP, la contramedida para cada uno y un relato objetivo de cuáles de ellos elimina un núcleo contable con enfoque API-first.

Nordlet Team · · 11 min de lectura

Las implementaciones de ERP fracasan por una corta lista de razones que se repiten de un proyecto a otro: un alcance que no deja de crecer, personalizaciones que reemplazan el proceso estándar, datos que nadie limpió, nadie con la autoridad para decidir, un único fin de semana de transición (cutover) que no se puede deshacer, dependencia de la hoja de ruta de un solo proveedor y requisitos fiscales o de presentación descubiertos después de la puesta en marcha (go-live). Ninguno de estos es un problema tecnológico en el sentido estricto. Cada uno es una decisión tomada, o no tomada, antes de configurar la primera pantalla.

Este artículo repasa esas causas una por una junto con lo que se debe hacer en su lugar. A continuación, plantea un argumento específico y acotado: cuando el núcleo contable del sistema es una API con la que se integra su propio software, varias de estas causas se eliminan del proyecto en lugar de mitigarse, ya que el trabajo al que están asociadas deja de existir.

Las causas recurrentes

1. Alcance que se descubre en lugar de decidirse

Un proyecto contratado para "finanzas e inventario" absorbe aprobaciones de compras, costos de proyectos, un portal de clientes y una capa de informes porque cada uno de ellos es "prácticamente lo mismo". El presupuesto y la fecha se fijaron para el alcance original.

En su lugar: redacte primero la lista de aceptación. La lista de documentos, informes y presentaciones que deben salir correctamente del nuevo sistema durante un mes cerrado es el alcance. Cualquier cosa que no esté en ella es un segundo proyecto.

2. Personalización que recrea el sistema antiguo

La frase más cara en un proyecto de ERP es "el sistema nuevo tiene que hacerlo de la manera en que lo hacemos ahora". Cada personalización debe especificarse, construirse, probarse, dokumentarse y volverse a probar en cada actualización. Los proyectos que empiezan replicando las pantallas antiguas suelen no terminar nunca la replicación.

En su lugar: acepte el proceso estándar del proveedor para cada flujo en el que el negocio no sea genuinamente diferente y mantenga una lista escrita de las excepciones con el motivo de cada una. Si la lista es larga, el producto es incorrecto, no la configuración.

3. Datos que nadie limpió

Socios duplicados, artículos sin unidades, un plan de cuentas con cientos de códigos inactivos, facturas abiertas que se liquidaron hace años pero nunca se conciliaron. La migración no puede avanzar más rápido que la limpieza, y la limpieza la realizan personas que también tienen que cerrar el fin de mes.

En su lugar: limpie antes de que empiece el proyecto. Decida si va a migrar el historial completo o los saldos de apertura más las partidas abiertas. Valide el paquete de migración hasta que pase sin errores antes de escribir una sola fila en el nuevo sistema.

4. Ausencia de un responsable de proceso

Cuando todas las decisiones se derivan a un comité directivo, las decisiones tardan semanas. Cuando nadie es responsable del proceso de ventas a cobro (order-to-cash) de principio a fin, el módulo de ventas y el de cuentas por cobrar son configurados por personas distintas con suposiciones diferentes.

En su lugar: un responsable designado por cada proceso con la autoridad para decidir, y un registro semanal de decisiones que utilicen tanto el proveedor como el equipo.

5. Transición radical (big-bang cutover) sin marcha atrás

Cambiar todas las entidades y todos los módulos en un solo fin de semana concentra todo el riesgo en un único punto. Si falla el primer cierre de mes, no hay un sistema antiguo al que recurrir ni una implantación parcial de la que aprender.

En su lugar: realice la transición en el límite de un período con un balance de comprobación de cierre conciliado, mantenga legible el sistema anterior y, si hay varias entidades, ponga en marcha primero una de ellas.

6. Dependencia del proveedor (vendor lock-in) que aparece al tercer año

Exportaciones de datos que requieren la contratación de servicios profesionales, integraciones que solo funcionan a través del middleware propio del proveedor, precios por usuario que crecen con la cantidad de empleados en lugar de con el trabajo realizado, y una hoja de ruta en la que usted no puede influir. Nada de esto es visible al firmar; todo ello es visible en la renovación.

En su lugar: antes de firmar, exporte todo desde un inquilino de prueba (trial tenant) y compruebe qué es lo que se extrae. Verifique si la API cubre todas las operaciones que realizan las pantallas o solo un subconjunto. Lea la lista de precios para el siguiente nivel, no solo el que está comprando.

7. Cumplimiento normativo descubierto después de la puesta en marcha

Un nuevo registro de IVA en otro Estado miembro, un mandato de factura electrónica que comienza el próximo enero, un formato de presentación que la administración fiscal local cambió. En un proyecto tradicional, cada uno de estos aspectos es una contratación de servicios asociados o una personalización, y cada uno llega según su propio calendario.

En su lugar: enumere todas las declaraciones y todos los regímenes de IVA a los que está sujeta la empresa, por país, antes de la selección, y pida al proveedor que muestre el archivo de salida para cada uno desde un inquilino de demostración (demo tenant). "Compatible con el país X" es una afirmación de ventas; una declaración generada es una prueba.

Lo que cambia una API

El argumento aquí es acotado. Un núcleo contable con enfoque API-first no hace que un proyecto de ERP tenga éxito. Elimina partes específicas de trabajo del proyecto, y las causas de fracaso asociadas a esas partes se van con ellas. A continuación se presentan cosas que Nordlet hace hoy, descritas tal como se comporta el producto en lugar de los resultados que promete.

La integración se prueba antes de firmar. Se crea una empresa de pruebas (sandbox) con una sola llamada, se comporta exactamente igual que una empresa real con los mismos módulos y puntos de conexión (endpoints), y cuesta la misma tarifa medida que el uso real. El plan de pruebas de preproducción es una prueba reproducible, no una demostración. Si la integración no funciona en el sandbox, lo habrá descubierto antes de cualquier compromiso, lo cual es el orden opuesto a una implementación tradicional donde la integración es la penúltima fase.

Los reintentos no pueden crear duplicados. Cada llamada que modifica datos incluye una cabecera Idempotency-Key. La misma clave con la misma carga útil devuelve la respuesta almacenada; la misma clave con una carga útil diferente se rechaza con el error idempotency_key_reuse. Toda una categoría de defectos de integración, como la factura doble tras un tiempo de espera agotado en la red (network timeout), no puede ocurrir y, por lo tanto, no se puede encontrar durante la fase de soporte intensivo (hypercare). La entrada de glosario sobre idempotencia abarca los aspectos técnicos.

Los eventos reemplazan a las sincronizaciones por lotes (batch). Los webhooks se escriben en una bandeja de salida transaccional en la misma transacción de base de datos que el cambio, por lo que un documento revertido nunca emite un evento y no se pierde ningún evento. Su sistema reacciona ante sale_invoice.paid en el momento en que ocurre; no hay ningún archivo nocturno que conciliar ni lógica de conciliación que escribir y probar.

El libro mayor detecta los errores de integración por usted. La base de datos rechaza un asiento contable desequilibrado. Un asiento publicado no se edita; las correcciones son reversiones vinculadas al original. Un asiento con fecha en un período cerrado se rechaza con un código 409. Estas restricciones son lo que significa en la práctica un libro mayor inmutable, y convierten problemas de datos silenciosos en errores de API evidentes durante el desarrollo.

Las reglas de IVA y los formatos de declaración corren por cuenta del mantenimiento del proveedor, no de su personalización. El motor de IVA de la UE resuelve el lugar de realización (place of supply), la inversión del sujeto pasivo (reverse charge), el OSS, el IOSS y la regla del proveedor fictiso (deemed-supplier rule), y devuelve la base legal con cada respuesta. Los formatos de declaración para 30 países están registrados en el producto; la tabla de compatibilidad de declaraciones indica para cada fecha límite si Nordlet envía el archivo, lo genera para su carga o muestra las cifras para introducirlas manualmente. Cuando un formato cambia, la modificación se despliega como una actualización del producto para todas las empresas, y los cambios del producto se enumeran en el registro de cambios (changelog). El cumplimiento normativo descubierto tras la puesta en marcha (causa 7) se convierte en una pregunta que puede responder desde una página pública antes de la selección.

Los precios no dependen de las licencias de usuario (seats). Los planes se facturan según el consumo (metered by request), incluyendo todos los módulos y la API completa en cada plan, con usuarios y empresas ilimitados. El costo crece con el trabajo que realiza el sistema, no con la cantidad de personas que inician sesión, y no hay ningún nivel de características (feature tier) al que deba migrar más adelante. Esto aborda un componente de la dependencia del proveedor (causa 6); no aborda los demás, motivo por el cual existe la sección siguiente.

Los datos salen de la misma forma en que entraron. Los informes se generan en formato XLSX, PDF o JSON. Las exportaciones del libro mayor existen en formatos DATEV, FEC y SIE para los países que los utilizan. La aplicación web no tiene puntos de conexión privados (private endpoints), por lo que todo lo que puede ver en una pantalla se puede obtener a través de la API. La prueba de exportación de la causa 6 se puede ejecutar en el sandbox desde el primer día.

Lo que una API no cambia

  • Los datos maestros siguen siendo su responsabilidad para limpiarlos. El importador de migración valida y rechaza los paquetes incorrectos; no los corrige.
  • La asignación de responsabilidades de los procesos sigue siendo una decisión de personal. Una API reduce la pregunta de "quién decide", ya que hay menos elementos que configurar, pero no la responde.
  • Alguien escribe código. El proyecto de configuración es reemplazado por un proyecto de integración realizado por desarrolladores. Si su equipo no cuenta con desarrolladores, esta modalidad de producto traslada el trabajo en lugar de eliminarlo.
  • El alcance ajeno a la contabilidad sigue siendo alcance. La gestión de almacenes, la planificación de la fabricación y el CRM más allá de los clientes potenciales son módulos independientes de Nordlet que se integran de la misma manera o sistemas independientes situados junto a este, y la integración entre ellos sigue siendo su proyecto.
  • La madurez del proveedor. Nordlet se encuentra en acceso anticipado en 2026 y está incorporando a socios de diseño (design partners). Un proveedor joven es un factor de riesgo que una prueba en sandbox no elimina; tan solo hace que el estado actual del producto sea medible.

Una breve lista de comprobación antes de firmar nada

  1. Redacte la lista de aceptación: documentos, informes y declaraciones para un mes cerrado.
  2. Limpie los datos maestros y decida la cuestión del historial antes de que empiece el proyecto.
  3. Designe un responsable por cada proceso.
  4. Ejecute la integración en un sandbox y conserve la suite de pruebas.
  5. Exporte todo desde el inquilino de prueba e inspeccione los archivos.
  6. Para cada país, compruebe la declaración generada, no la lista de características.
  7. Lea el precio del nivel superior al que está comprando y el costo de rescisión o salida.

FAQ

¿Cuál es el motivo individual más común por el que fracasan los proyectos de ERP?

Un alcance que crece después de que se fijaron el presupuesto y la fecha, habitualmente a través de solicitudes de personalización que recrean el sistema antiguo. La calidad de los datos ocupa un cercano segundo lugar y es la causa más frecuente de retraso en la fecha de puesta en marcha.

¿Elegir un ERP en la nube evita estos fallos?

El alojamiento cambia quién ejecuta los servidores. No cambia el alcance, la personalización, la calidad de los datos ni la responsabilidad de los procesos. Los productos en la nube hacen que las actualizaciones pasen a ser tarea del proveedor, lo que elimina un costo a largo plazo derivado de la personalización.

¿Cómo reduce un sistema con enfoque API-first el riesgo de implementación?

Traslada la integración al inicio del proyecto, donde se puede probar en un sandbox antes de asumir compromisos; hace que los reintentos y los eventos sean seguros por diseño; y despliega las reglas fiscales y los formatos de declaración como características del producto en lugar de personalizaciones del proyecto. No limpia sus datos ni decide sus procesos.

¿Un núcleo contable con enfoque API-first es un ERP?

Es el núcleo financiero de uno: libro mayor, documentos, bancos, impuestos, declaraciones y, en el caso de Nordlet, también inventario, producción, nóminas, activos fijos y pedidos de comercio electrónico (e-commerce). El artículo sobre el ERP en la modalidad SaaS analiza la distinción en detalle.

¿Qué debemos probar en el sandbox?

Emita una factura y lea el asiento contable. Envíe la misma solicitud dos veces y cuente las facturas. Registre un movimiento en un período cerrado y confirme el código de error 409. Emita una nota de crédito y verifique la reversión. Genere la declaración de IVA para el país de la empresa en el sandbox. Exporte el libro mayor. Si estas pruebas se superan con éxito, el núcleo contable funciona; el riesgo restante recae en sus datos y en sus otros sistemas.

Lecturas adicionales