Intégrations / ERP / Katana
Guide d’intégration de Katana pour l’ordonnancement de la production avec SkyPlanner APS
Ce guide d’intégration de Katana explique aux consultants et aux équipes informatiques comment relier Katana Cloud Inventory (Katana MRP) à SkyPlanner APS. SkyPlanner échange des données avec Katana dans les deux sens via l’API publique de Katana :
- Les ordres de fabrication, les lignes d’opération, les recettes produit, les opérations de production, les ressources, les stocks et les commandes fournisseurs sont importés dans SkyPlanner.
- La séquence de production est renvoyée vers l’onglet Schedule de Katana, avec une date limite de production pour chaque ordre de fabrication.
- Le statut et la durée réelle de chaque opération sont renvoyés vers les lignes d’opération.
- Les webhooks de Katana signalent les changements à SkyPlanner, et ceux de SkyPlanner transmettent les modifications du planning dès qu’elles surviennent.
L’équipe SkyPlanner adapte l’intégration à votre configuration Katana lors de la mise en place et en assure le support après la mise en production. Ce guide s’adresse aux consultants et aux développeurs qui souhaitent participer au projet ou développer eux-mêmes une solution à partir de la REST API documentée de SkyPlanner (référence de l’API).
L’API de Katana
Katana est un produit cloud mutualisé : tous les clients utilisent donc la même API. Il s’agit d’une REST API en version v1, accessible à l’adresse https://api.katanamrp.com/v1. Sa spécification OpenAPI 3.0 se trouve à l’adresse https://api.katanamrp.com/v1/openapi.json. La documentation est disponible sur le Katana Developer Hub.
Les points de terminaison nécessaires à l’ordonnancement :
- Données de base :
/products,/materials,/variants,/recipe_rows,/bom_rows,/product_operation_rows. - Ordres de fabrication :
/manufacturing_orders,/manufacturing_order_operation_rows,/manufacturing_order_recipe_rows,/manufacturing_order_productions. - Séquencement :
/manufacturing_order_rerank. - Approvisionnements et demande :
/inventory,/purchase_orders,/purchase_order_rows,/sales_orders,/sales_order_rows.
Il n’existe pas de point de terminaison /resources. Les ressources figurent dans les champs resource_id et resource_name des lignes d’opération des produits et des ordres de fabrication (OF).
Authentification et limites
L’authentification utilise une clé API comme jeton Bearer : Authorization: Bearer <api key>. Créez la clé dans Settings > API > Add new API key. (source)
La synchronisation doit être conçue en tenant compte des limites suivantes :
- Par défaut, l’API de Katana autorise 60 requêtes par période de 60 secondes (source)
- Au-delà, l’API renvoie le code 429 avec l’en-tête
Retry-After. L’en-têteX-Ratelimit-Remainingindique le nombre de requêtes encore disponibles. - Les points de terminaison de liste paginent les résultats et acceptent des filtres sur la date de mise à jour, ce qui limite le volume des échanges différentiels.
Côté SkyPlanner, la REST API utilise un jeton API pour l’authentification (SkyPlanner Settings > API). Elle est documentée dans Swagger/OpenAPI. Le tutoriel d’intégration vous guide dans vos premiers appels.
Webhooks
Enregistrez un webhook avec POST /webhooks, en indiquant une URL HTTPS et les événements souhaités. (source) Voici les événements utiles pour l’ordonnancement :
manufacturing_order.created,.updated,.deleted,.in_progress,.blocked,.donemanufacturing_order_operation_row.created,.updated,.in_progress,.paused,.completedcurrent_inventory.material_updated,.material_out_of_stockpurchase_order.*etpurchase_order_row.*, y compris les événements de réceptionproduct.*,product_recipe_row.*etsales_order.*
Les données transmises sont succinctes : le type de ressource, l’action et un href. Le récepteur récupère l’objet complet à l’adresse indiquée par href. Chaque envoi comporte un en-tête x-sha2-signature (HMAC SHA-256) pour vérification. Votre point de terminaison doit renvoyer un code 20X sous 10 secondes. Katana effectue trois nouvelles tentatives, après 30 secondes, 2 minutes et 15 minutes.
Correspondance des données
| Objet Katana (point de terminaison) | Objet SkyPlanner | Sens du flux | Fréquence |
|---|---|---|---|
Produits, matières, variantes (/products, /materials, /variants) | Produits et matières | Katana → SkyPlanner | Chargement initial, puis à réception d’un webhook |
Recette produit / nomenclature (/recipe_rows, /bom_rows) | Structure du produit, sous-produits | Katana → SkyPlanner | Chargement initial, puis à réception d’un webhook |
Opérations de production (/product_operation_rows) : type, ressource, temps | Étapes de fabrication avec durées et temps de préparation | Katana → SkyPlanner | Chargement initial, puis à chaque modification |
Ressources (resource_id, resource_name dans les lignes d’opération) | Postes de travail, groupes de postes de travail | Katana → SkyPlanner | Chargement initial, puis à l’ajout d’une ressource |
Ordre de fabrication avec ses lignes d’opération (/manufacturing_orders, /manufacturing_order_operation_rows) | Ordres et opérations | Katana → SkyPlanner | En temps réel par webhook |
Composants de l’OF (/manufacturing_order_recipe_rows) | Matières par opération | Katana → SkyPlanner | En temps réel par webhook |
Stocks, commandes fournisseurs avec dates de réception (/inventory, /purchase_order_rows) | Stocks et matières attendues | Katana → SkyPlanner | En temps réel par webhook |
Champ delivery_date de la commande client (/sales_orders) | Échéance de la commande, priorité du client | Katana → SkyPlanner | En temps réel par webhook |
Séquence des OF (POST /manufacturing_order_rerank) | Ordre de passage des OF ouverts | SkyPlanner → Katana | À chaque modification du planning |
Champ production_deadline_date de l’OF (PATCH /manufacturing_orders/{id}) | Fin prévue | SkyPlanner → Katana | À chaque modification du planning |
Champs status et total_actual_time de la ligne d’opération (PATCH /manufacturing_order_operation_rows/{id}) | Mobile Confirmations, relevés de temps | SkyPlanner → Katana | Au fil des déclarations de travail |
| Absent de Katana | Horaires d’équipe, absences, matrice des temps de préparation, outils, effectifs d’opérateurs, postes de travail alternatifs | Gérés dans SkyPlanner | Configurés lors de la mise en place |
Schémas d’intégration
1. Chargement initial des données de base. Récupérez page par page les produits, les matières, les variantes, les lignes de recette et les lignes d’opération des produits, en espaçant les appels pour respecter le quota. Créez les postes de travail SkyPlanner à partir des ressources distinctes présentes dans les lignes d’opération et conservez une correspondance 1:1 entre les clés. Définissez les horaires d’équipe, les congés et les heures supplémentaires de chaque poste de travail dans SkyPlanner, car Katana ne dispose pas de calendrier des ressources.
2. Synchronisation des ordres. Abonnez-vous aux événements concernant les OF, les lignes d’opération, les stocks et les commandes fournisseurs. À chaque événement, récupérez l’objet à l’adresse indiquée par son href et mettez l’opération à jour. SkyPlanner considère les matières commandées comme disponibles à la date de livraison de la commande fournisseur et met le stock à jour à sa réception. Un rapprochement nocturne, avec des filtres sur la date de mise à jour, permet de rattraper les événements manqués.
3. Renvoi du planning. Deux appels permettent de transmettre le planning à Katana :
- POST
/manufacturing_order_rerank« moves one or more manufacturing orders to an exact place in the production schedule » (déplace un ou plusieurs ordres de fabrication à une position précise dans le planning de production). Cet appel accepte jusqu’à 250 OF ouverts par requête, à placer en tête, en fin, ou avant ou après un OF donné. (source) - PATCH
/manufacturing_orders/{id}définitproduction_deadline_date. Katana n’accepte cette valeur que si le calcul automatique des dates limites est désactivé pour le site de production concerné. (source)
Le reclassement ne modifie pas seulement l’ordre de la liste. Dans Katana, « higher-priority MOs reserve required materials and subassemblies first » (les OF les plus prioritaires réservent en premier les matières et sous-ensembles nécessaires). La séquence définie par SkyPlanner détermine donc aussi à quel OF le stock est affecté dans Katana.
4. Déclarations en atelier. Les opérateurs déclarent leur travail avec SkyPlanner Mobile Confirmations, Production Timer ou Quick Log Mode. SkyPlanner écrit le statut et le temps effectivement passé dans la ligne d’opération de l’OF. Si une usine conserve plutôt Katana Shop Floor App, SkyPlanner lit les événements des lignes d’opération. Choisissez un seul canal de déclaration par usine.
5. Responsabilité des données et règles de gestion des conflits. Consignez ces règles avant la mise en production :
| Données | Système responsable |
|---|---|
| Produits, recettes, opérations de production, stocks, achats, commandes clients | Katana |
| Séquence des opérations, heures de début et de fin, poste de travail par opération | SkyPlanner |
| Rang de l’OF dans l’onglet Schedule et date limite de production | SkyPlanner, avec écriture dans Katana |
| Horaires d’équipe, absences, matrice des temps de réglage, outils, ressources alternatives | SkyPlanner |
| Statut des opérations et temps enregistrés | Un seul canal, choisi lors du cadrage |
Étapes types du projet
La mise en œuvre est normalement achevée en quelques semaines après le début de l’accompagnement. Au préalable, l’essai gratuit de 30 jours vous permet de travailler sur vos propres données à partir d’un export CSV de Katana, par exemple la liste Tasks de l’écran Make.
Le projet comprend les étapes suivantes :
- Abonnement et clé. Vérifiez que votre abonnement Katana inclut l’API et Manufacturing Management, puis créez la clé API.
- Mode de gestion des échéances. Convenez de désactiver les échéances automatiques pour le site de production afin que SkyPlanner gère les échéances de production.
- Correspondances. Définissez la table de correspondance, les clés des ressources, les règles déterminant le système maître et le canal de remontée des données.
- Chargement initial. Produits, variantes, recettes, opérations de production et ressources.
- Synchronisation des événements. Mettez en place les webhooks pour les ordres, les opérations, les stocks et les commandes fournisseurs, ainsi qu’un rapprochement chaque nuit.
- Paramétrage des contraintes dans SkyPlanner. Configurez les horaires d’équipe, la matrice des temps de réglage, les outils, les effectifs opérateurs et les postes de travail alternatifs.
- Réécriture dans Katana. Transmettez d’abord l’ordre de priorité et les échéances, puis le statut des opérations et les temps.
- Tests en parallèle et mise en service. Comparez les dates de SkyPlanner à celles de l’onglet Schedule actuel, corrigez les données de base, puis activez la réécriture dans Katana.
Points à prévoir pour l’intégration à Katana
- Le mode automatique écrase les dates. « Once automatic mode is enabled, all manual deadlines will be overwritten and cannot be restored. » (Une fois le mode automatique activé, toutes les échéances manuelles sont écrasées et ne peuvent pas être restaurées.) Choisissez le mode une fois pour toutes au lancement du projet.
- Pas de calendrier des ressources. Ne déduisez pas les horaires d’équipe de la seule valeur Weekly throughput. Définissez-les pour chaque poste de travail dans SkyPlanner.
- Les ressources figurent uniquement sur les lignes d’opération. Conservez des noms de ressources stables dans Katana : ils servent de clés pour les postes de travail SkyPlanner.
- Unités de temps.
planned_time_parameterest exprimé en secondes : par unité pour les opérations de type per-unit, et en durée totale pour les types process, setup et fixed. Associez correctement le type, sinon les durées seront faussées d’un facteur égal à la quantité. - Groupes en fabrication à la commande. Lors d’un reclassement, les ordres de fabrication liés à une même commande client restent ensemble. Séquencez-les donc en tant que groupe.
- Le comportement du reclassement a changé. Depuis le 7 octobre 2026, les endpoints de reclassement placent les ordres exactement à la position demandée. Les intégrations conçues pour l’ancien comportement doivent être testées à nouveau. (source)
Intégration à Katana : qui la configure et en assure le support ?
Le travail d’intégration porte sur vos ressources, vos opérations de production, le flux des ordres et le mode de gestion des échéances. Il comprend aussi la configuration des éléments absents de Katana : horaires d’équipe, matrice des temps de réglage, outils, effectifs opérateurs et ressources alternatives.
- L’équipe SkyPlanner configure l’intégration pendant l’accompagnement initial et en assure le support après la mise en service. Chaque usine configure différemment les ressources et les opérations dans Katana : c’est ici que ce savoir-faire entre en jeu.
- Votre consultant Katana ou votre partenaire d’intégration peut la développer. SkyPlanner fournit la REST API, la documentation Swagger/OpenAPI et les webhooks.
- Vos propres développeurs peuvent s’appuyer dessus avec un jeton API. Un jeton API suffit pour démarrer, et l’équipe SkyPlanner vous aide si nécessaire. La documentation du produit, notamment sur les commandes fournisseurs et l’API des produits et des matières, est disponible dans la documentation SkyPlanner.
SkyPlanner est proposé à partir de 199 € par mois, avec 5 postes de travail inclus et une facturation mensuelle. L’intégration fait l’objet d’un devis préalable adapté à vos processus et à vos besoins, présenté avec votre abonnement : vous connaissez ainsi le coût total avant de démarrer. Consultez les tarifs, les fonctionnalités et notre comparatif avec l’ordonnancement natif de Katana dans la page Ordonnancement à capacité finie avec Katana. La page Katana présente une vue d’ensemble, et les autres ERP figurent dans la rubrique des intégrations ERP.
Avis d’industriels sur SkyPlanner
2 hgagnées chaque semaine
« Avec SkyPlanner, nous sommes passés d’une planification de la production sur des feuilles Excel à une optimisation de la production en temps réel. »
Kalle Kalliomäki, spécialiste de la chaîne logistique
UTU · Tableaux et appareillage électriques
La planification de la production permet de gagner 2 heures de travail chaque semaine, et une nouvelle file d’opérations parvient à la ligne en quelques secondes.
+90 %d’efficacité en production
« L’efficacité en production a augmenté de 90 %. »
Abdul Rucyinga, responsable informatique
Laboratory & Allied · Fabrication pharmaceutique
L’efficacité en production a augmenté de 90 %, et l’élaboration d’un planning optimisé sur trois mois pour l’ensemble des postes de travail prend moins de 30 minutes.
Moins d’arrêts dus aux pénuries de matières
« La valeur de SkyPlanner pour nous, c’est de disposer d’un outil efficace au quotidien, notamment pour fixer les dates de livraison. »
Tommi Männistö, responsable de la planification de la production
Eskomatic · Usinage en sous-traitance
L’ordonnancement automatique de la charge permet de fixer des dates de livraison plus précises, et les arrêts de production dus aux pénuries de matières ont fortement diminué.
Des milliers (× 1 000)d’ordres de fabrication ordonnancés automatiquement
« Nous maîtrisons la production d’une tout autre manière, et nous comprenons beaucoup mieux notre capacité de production. »
Hannu Ryynänen, directeur général
Mamec · Mélangeurs industriels, pompes et fabrication de haute technologie en sous-traitance
Des milliers d’ordres de fabrication sont ordonnancés automatiquement, et toute l’entreprise dispose d’une vue en temps réel de la production.
FAQ
Katana dispose-t-il d’une API, et quel abonnement faut-il choisir ?
Oui. Katana propose une REST API publique, v1, avec une spécification OpenAPI 3.0. Sa page de tarifs indique que l’accès à l’API est inclus dans les abonnements Free et Advantage. L’authentification utilise comme jeton Bearer une clé API créée dans Settings > API.
SkyPlanner peut-il réécrire le planning dans Katana ?
Oui. SkyPlanner réorganise les ordres de fabrication ouverts selon sa séquence dans l’onglet Schedule de Katana via /manufacturing_order_rerank et renseigne le champ production_deadline_date de chaque ordre. Le statut des opérations et les temps effectivement passés sont transmis aux lignes d’opération des ordres de fabrication. Le planning avec les horaires par poste de travail reste dans SkyPlanner, où les opérateurs travaillent à partir de leur file d’opérations.
Katana transmet-il les modifications en temps réel ?
Oui. Les webhooks de Katana couvrent les ordres de fabrication, les lignes d’opération, les stocks, les commandes fournisseurs et les commandes clients. SkyPlanner récupère chaque objet modifié et effectue un rapprochement chaque nuit : même si un événement est manqué, aucune opération ne reste donc avec des données périmées.
Comment les ressources Katana deviennent-elles des postes de travail SkyPlanner ?
Chaque ressource distincte figurant sur les lignes d’opération de Katana devient un poste de travail SkyPlanner, avec une correspondance de clés 1:1. Les horaires d’équipe, les absences et les postes de travail alternatifs sont ensuite configurés dans SkyPlanner.
Peut-on tester SkyPlanner avant de développer l’intégration ?
Oui. L’essai gratuit de 30 jours prend en charge jusqu’à 20 postes de travail avec un import CSV depuis Katana, sans carte bancaire. Démarrez l’essai ou contactez l’équipe commerciale pour cadrer l’intégration.