Integraciones / ERP / Sage 200
Guía de integración de Sage 200 para programar la producción con SkyPlanner APS
Esta guía de integración de Sage 200 explica a los partners y equipos de TI cómo conectar Sage 200 Professional y su complemento de fabricación con SkyPlanner APS. La integración de SkyPlanner con Sage 200 es bidireccional:
- Los productos, las existencias por almacén y los pedidos de compra y de venta se importan a través de Sage 200 REST API.
- Las órdenes de fabricación, las operaciones y los recursos de mano de obra y maquinaria se importan desde tu complemento de fabricación.
- Las fechas previstas de las operaciones se devuelven a las órdenes de fabricación.
- Los registros de tiempo de los operarios se devuelven para imputar las horas a cada operación.
Durante la puesta en marcha, el equipo de SkyPlanner adapta la integración a tu configuración de Sage 200 y ofrece soporte tras la entrada en producción. Esta guía está dirigida a los partners y desarrolladores que quieran participar o desarrollar por su cuenta sobre la REST API documentada de SkyPlanner (documentación de la API).
Dos fuentes dentro de un mismo sistema Sage 200
Una instalación de Sage 200 para fabricación tiene dos capas, y la integración lee los datos de ambas.
1. Sage 200 REST API para los datos comerciales y de existencias. Según Sage, la API «lets your application read and modify data in a Sage 200 site» (permite que tu aplicación lea y modifique datos en una instalación del sistema). Esto incluye clientes, proveedores, productos, pedidos de venta y de compra y cuentas contables. La documentación de Sage 200 Professional (2025.02) agrupa sus recursos en Cash Book, Commercials, Financials, General, Nominal, POP, Price Book, Purchases, Sales, SOP y Stock. Estos son los recursos relevantes para la programación:
| Recurso | Contenido |
|---|---|
products | Código, nombre, unidad de existencias, tipo de artículo de la lista de materiales, coste estándar |
warehouse_holdings | quantity_in_stock, quantity_on_order, quantity_allocated_bom, free_stock_available, is_default_manufacturing_warehouse |
pop_orders, pop_order_lines | Pedidos de compra abiertos, line_quantity, requested_delivery_dates |
sop_orders, sop_order_lines | Demanda de los clientes, requested_delivery_date, promised_delivery_date |
warehouses, units | Centros y unidades de medida |
2. El complemento de fabricación para las órdenes de fabricación. La API de Sage 200 no dispone de endpoints para órdenes de fabricación, operaciones ni recursos productivos. Las órdenes de fabricación se gestionan en Sicon Works Order Processing, Cim200 o el antiguo módulo Sage 200 Manufacturing. La integración lee las órdenes de fabricación, las operaciones y los recursos productivos por la vía que admita el complemento, acordada contigo y con tu partner de Sage 200 durante la definición del alcance.
Autenticación y acceso
La API de Sage 200 «uses OAuth 2.0 with OpenID Connect» (utiliza esta versión de OAuth con OpenID Connect) con el flujo de concesión de código de autorización. El inicio de sesión se realiza a través de Sage ID.
- Inscríbete en Sage 200 API Developer Programme y solicita las credenciales.
- Vincula un Sage ID a un usuario de Sage 200 con acceso a la empresa y a las funciones necesarias para los endpoints que utilices.
- Solicita el ámbito
offline_access; de lo contrario, no se emitirá ningún token de actualización. - Envía
Authorization: Bearer <access_token>,X-SiteyX-Companyen cada solicitud a la base de datos. Ambos identificadores se obtienen de/sites.
URL base de Sage 200 Professional: https://api.columbus.sage.com/uk/sage200extra/accounts/v1. Las solicitudes utilizan GET, POST, PUT y DELETE, y las opciones de consulta de OData $filter, $select, $top, $skip, $orderby y $expand.
En Sage 200 Professional, el proveedor de soporte del cliente habilita la API. En la lista de comprobación de Sage, confirma que «the API is enabled» (la API está habilitada) y que «each required user has a Sage ID assigned.» (cada usuario que lo necesita tiene un Sage ID asignado). En Sage 200 Standard, la API está habilitada por defecto.
La vigencia de los tokens condiciona el diseño. Los tokens de acceso duran 8 horas. Los tokens de actualización duran entre 1 y 90 días, y «The refresh window is measured from the user’s initial sign-in, not from the most recent refresh.» (el periodo de actualización se mide desde el primer inicio de sesión del usuario, no desde la actualización más reciente). Sage indica que volver a autenticarse «is unavoidable» (es inevitable). Prevé una alerta para volver a solicitar el consentimiento antes de que termine ese periodo.
En SkyPlanner, la REST API utiliza un token de API para la autenticación (SkyPlanner Settings > API) y está documentada en Swagger/OpenAPI. El tutorial de integración explica paso a paso las primeras llamadas.
Detección de cambios
La documentación de la API de Sage 200 no incluye ningún recurso de webhook ni de suscripción. Los cambios se detectan mediante consultas periódicas. Los registros incluyen date_time_created y date_time_updated, por lo que cada consulta filtra por date_time_updated con $filter y pagina los resultados con $top y $skip.
Consulta las órdenes de fabricación cada pocos minutos, y las existencias y las líneas de pedidos de compra cada hora. SkyPlanner envía webhooks cuando cambia la programación, de modo que el envío de datos de vuelta al sistema de origen se activa mediante eventos.
Mapeo de datos
| Objeto de Sage 200 (origen) | Objeto de SkyPlanner | Sentido | Frecuencia |
|---|---|---|---|
products, units (API) | Productos y materiales | Sage 200 → SkyPlanner | Carga y, después, consultas periódicas |
| Componentes de la lista de materiales (complemento o módulo BOM) | Estructura del producto, subproductos y materiales por producto | Sage 200 → SkyPlanner | Cuando hay cambios |
| Recursos de mano de obra y maquinaria, grupos de recursos productivos (complemento) | Estaciones de trabajo, grupos de estaciones de trabajo, personal | Sage 200 → SkyPlanner | Carga inicial |
| Disponibilidad de los recursos productivos: paradas, mantenimiento, vacaciones (complemento) | Turnos, ausencias | Sage 200 → SkyPlanner | A diario |
| Órdenes de fabricación y sus operaciones, tiempos por operación (complemento) | Órdenes y tareas con sus pasos, duraciones y fechas límite | Sage 200 → SkyPlanner | Cada pocos minutos |
sop_order_lines: requested_delivery_date, promised_delivery_date (API) | Fechas de entrega a clientes | Sage 200 → SkyPlanner | Consultas periódicas |
warehouse_holdings: quantity_in_stock, free_stock_available (API) | Saldos de existencias | Sage 200 → SkyPlanner | Cada hora |
pop_order_lines: line_quantity, requested_delivery_dates (API) | Pedidos de compra con fecha de entrega prevista | Sage 200 → SkyPlanner | Cada hora |
| Inicio y fin previstos de la operación de la orden de fabricación, recurso productivo | Inicio y fin previstos y estación de trabajo por operación | SkyPlanner → Sage 200 | Cuando hay cambios, mediante webhook |
| Imputación de tiempos por operación (complemento) | Registros de tiempo y confirmaciones de los operarios | SkyPlanner → Sage 200 | Por confirmación o por turno |
| Datos de restricciones de SkyPlanner | Matriz de tiempos de preparación, herramientas como recursos de capacidad limitada, máquinas y personal alternativos | Se mantienen en SkyPlanner | Puesta en marcha |
Patrones de integración
1. Carga inicial de datos maestros. Obtén los productos y las unidades de la API y, a continuación, los recursos productivos, sus grupos y las operaciones de la lista de materiales del complemento. Un grupo de tres máquinas idénticas puede representarse como un grupo de estaciones de trabajo o como tres estaciones de trabajo.
2. Sincronización de órdenes. Lee las órdenes de fabricación abiertas y sus operaciones desde el complemento, además de las pop_order_lines abiertas y los datos de warehouse_holdings desde la API. La programación comprueba tanto las existencias como las compras pendientes de recibir. MRP sigue proponiendo órdenes de fabricación en Sage 200, y SkyPlanner programa las que crees.
3. Actualización de la programación en el sistema de origen. Por cada operación que el motor haya programado o movido, SkyPlanner devuelve a la orden de fabricación el inicio, el fin y el recurso productivo previstos. El complemento conserva sus propias cantidades, asignaciones y cálculos de costes.
4. Confirmaciones en planta. Los operarios registran el trabajo con SkyPlanner Mobile Confirmations o Production Timer, y esos registros de tiempo mantienen actualizada la programación. El tiempo registrado se devuelve como horas imputadas a la operación de la orden de fabricación, de modo que el cálculo de costes de Sage 200 dispone de las horas reales.
Si tu planta ya registra tiempos en Sicon Shop Floor Data Capture o Cim200 Shop Floor Data Capture, elige un único canal de registro.
5. Responsabilidad sobre los datos y reglas de resolución de conflictos. Déjalas por escrito antes de la entrada en producción:
| Datos | Responsable |
|---|---|
| Productos, listas de materiales, cantidades de las órdenes de fabricación, reservas y costes | Sage 200 y el complemento |
| Secuencia de operaciones, horas de inicio y fin, asignación de estaciones de trabajo | SkyPlanner |
| Matriz de tiempos de preparación, requisitos de herramientas y operarios, recursos productivos alternativos | SkyPlanner |
| Imputación de tiempos | Sage 200, a partir de los registros de tiempo de SkyPlanner |
La principal fuente de conflictos es el gráfico de capacidad. Si los planificadores siguen arrastrando órdenes de fabricación u operaciones en Sicon Rough Cut Capacity Planning o Cim200 Graphical Scheduler, habrá dos sistemas controlando las fechas. Deja que SkyPlanner controle las fechas de las operaciones. Con Autopilot, SkyPlanner reprograma automáticamente cuando cambia la producción.
Etapas habituales del proyecto
La implantación suele completarse en unas semanas desde el inicio de la puesta en marcha. Antes, valida el programa de producción durante la prueba gratuita de 30 días con una exportación en CSV o Excel de las órdenes de fabricación abiertas. Después, el proyecto sigue estas etapas:
- Definición del alcance. Confirma el complemento y su versión, la vía de lectura de las órdenes de fabricación, la vía de escritura de los datos de vuelta, las frecuencias de sincronización y el canal de imputación de tiempos.
- Acceso a la API. El proveedor de soporte habilita la API de Sage 200, vincula un Sage ID a un usuario de Sage 200 y configura el acceso a empresas y funciones.
- Carga inicial. Productos, unidades, recursos productivos, grupos de recursos productivos, operaciones de las listas de materiales y disponibilidad.
- Sincronización de órdenes y pedidos. Órdenes de fabricación, líneas de pedidos de compra y existencias mediante consultas periódicas, con una alerta para renovar el consentimiento.
- Configuración de restricciones en SkyPlanner. Matriz de tiempos de preparación, herramientas, número de operarios por tarea y máquinas o personal alternativos.
- Escritura del programa de producción en el sistema de origen. Las fechas previstas de las operaciones se incorporan a las órdenes de fabricación; en esta etapa se añade la imputación de tiempos.
- Pruebas en paralelo y entrada en producción. Compara las fechas con el plan actual, corrige los datos maestros y, después, activa la escritura de datos en el sistema de origen.
Qué tener en cuenta al integrar Sage 200
- Módulo retirado en una nueva versión. El antiguo módulo Sage 200 Manufacturing no se puede utilizar a partir de Sage 200 Professional 2025 R2. Antes de definir cualquier correspondencia de datos, confirma qué solución de fabricación estará operativa al entrar en producción.
- Tiempos de operación a partir de los costes. Sicon MRP estima los tiempos de mano de obra y de máquina a partir de las partidas de coste de las listas de materiales de Sage 200. Contrástalos primero con los tiempos reales de ejecución.
- Discrepancias en los conceptos de coste. Sage advierte de que Nominal, Overhead Nominal y Overhead Recovery % deben coincidir entre las operaciones de las listas de materiales y los conceptos de coste; de lo contrario, «there will be cost discrepancies.» (habrá discrepancias en los costes).
- Plazo de renovación. El máximo de 90 días se cuenta desde el primer inicio de sesión. Una integración cuyo consentimiento nunca se renueva deja de funcionar el mismo día de cada trimestre.
- Sitios con varias empresas. Un sitio puede alojar varias empresas, por lo que debe enviar el valor correcto de
X-Companyen cada solicitud.
Integración con Sage 200: quién la configura y ofrece soporte
- El equipo de SkyPlanner la configura durante la puesta en marcha y ofrece soporte tras la entrada en producción.
- Su partner de Sage 200 puede participar. El partner conoce su complemento y habilita la API en Sage 200 Professional.
- Sus propios desarrolladores pueden ampliarla utilizando la misma REST API documentada y un token de API. Basta con un token de API para empezar, y el equipo de SkyPlanner ofrece ayuda cuando hace falta.
Una vez establecida la conexión, el motor Arcturus programa la producción a partir de las órdenes de fabricación actualizadas de Sage 200, y las fechas previstas se incorporan a las operaciones de esas órdenes. SkyPlanner está disponible desde 199 € al mes, con 5 estaciones de trabajo incluidas y facturación mensual. La integración se presupuesta de antemano según sus procesos y necesidades, junto con su plan, para que conozca el coste total antes de empezar. Consulte los precios, las funciones y la comparativa con la planificación propia de Sage 200 en programación de la producción en Sage 200 respetando la capacidad real de máquinas y personal. Encontrará una visión general en la página de Sage 200 y otros ERP en la sección de integraciones con ERP.
Opiniones de fabricantes sobre SkyPlanner
2 hahorradas cada semana
“Con SkyPlanner, nuestra planificación de la producción ha pasado de las hojas de Excel a la optimización de la producción en tiempo real.”
Kalle Kalliomäki, especialista en cadena de suministro
UTU · Cuadros eléctricos y aparamenta
La planificación de la producción ahorra 2 horas de trabajo cada semana, y una nueva cola de trabajo llega a la línea en segundos.
Más de 1.000 órdenes de fabricación programadas automáticamente
“Ahora controlamos la producción de otra manera, y nuestro conocimiento de la capacidad está a un nivel completamente distinto.”
Hannu Ryynänen, director general
Mamec · Mezcladores industriales, bombas y fabricación por contrato de alta tecnología
Miles de órdenes de fabricación se programan automáticamente, y toda la organización dispone de una visión de la producción en tiempo real.
Preguntas frecuentes
¿La API de Sage 200 incluye órdenes de fabricación?
No. La API de Sage 200 Professional abarca productos, existencias, pedidos de venta y de compra, finanzas y otros ámbitos, pero no incluye recursos de API para órdenes de fabricación ni operaciones. Las órdenes de fabricación se obtienen de su complemento de fabricación, como Sicon Works Order Processing o Cim200, por la vía acordada durante la definición del alcance.
¿Quién desarrolla la integración con Sage 200?
El equipo de SkyPlanner configura la integración bidireccional con su instalación de Sage 200 durante la puesta en marcha y ofrece soporte tras la entrada en producción. Su partner de Sage 200 habilita la API y puede participar. Sus propios desarrolladores también pueden desarrollar soluciones utilizando la REST API documentada de SkyPlanner; basta con un token de API para empezar.
¿Puede Sage 200 enviar cambios en tiempo real?
La API de Sage 200 no dispone de webhooks. Las existencias y los pedidos de compra se consultan periódicamente mediante date_time_updated, y las órdenes de fabricación se leen desde su complemento cada pocos minutos. En sentido contrario, los webhooks de SkyPlanner envían los cambios del programa de producción en cuanto se producen.
¿Podemos probar SkyPlanner antes de desarrollar la integración?
Sí. La prueba gratuita de 30 días permite utilizar hasta 20 estaciones de trabajo e importar sus órdenes de fabricación en CSV o Excel, sin necesidad de tarjeta de crédito. Inicie la prueba o hable con el equipo comercial para definir el alcance de la integración.