Integrationer / ERP / Katana

Guide til Katana-integration – produktionsplanlægning med SkyPlanner APS

Denne guide til Katana-integration viser konsulenter og IT-teams, hvordan de forbinder Katana Cloud Inventory (Katana MRP) med SkyPlanner APS. SkyPlanner udveksler data med Katana i begge retninger via det offentlige Katana API:

  • Produktionsordrer, operationslinjer, produktopskrifter, produktionsoperationer, ressourcer, lagerbeholdninger og indkøbsordrer overføres til SkyPlanner.
  • Den planlagte rækkefølge sendes tilbage til fanen Schedule i Katana med en produktionsfrist på hver produktionsordre.
  • Operationsstatus og faktisk tidsforbrug sendes tilbage til operationslinjerne.
  • Webhooks fra Katana giver besked om ændringer til SkyPlanner, og webhooks fra SkyPlanner sender planændringer, så snart de sker.
Gantt-tidslinje i SkyPlanner APS med opgaver fordelt på arbejdsstationer og en ordreliste nedenunder.

SkyPlanner-teamet tilpasser integrationen til jeres Katana-opsætning under opstarten og yder support efter idriftsættelsen. Denne guide er til konsulenter og udviklere, der vil deltage eller selv bygge videre på SkyPlanners dokumenterede REST API (API-reference).

Katana API

Katana er ét cloudprodukt med multitenant-arkitektur, så alle kunder bruger samme API. Det er et REST API i version v1 på https://api.katanamrp.com/v1 med en OpenAPI 3.0-specifikation på https://api.katanamrp.com/v1/openapi.json. Dokumentationen findes i Katana Developer Hub.

Disse endpoints er relevante for planlægningen:

  • Stamdata: /products, /materials, /variants, /recipe_rows, /bom_rows, /product_operation_rows.
  • Ordrer: /manufacturing_orders, /manufacturing_order_operation_rows, /manufacturing_order_recipe_rows, /manufacturing_order_productions.
  • Rækkefølge: /manufacturing_order_rerank.
  • Forsyning og efterspørgsel: /inventory, /purchase_orders, /purchase_order_rows, /sales_orders, /sales_order_rows.

Der findes ikke noget /resources-endpoint. Ressourcer er angivet som resource_id og resource_name på produkternes og produktionsordrernes operationslinjer.

Godkendelse og grænser

Godkendelse sker med en API-nøgle som bearer-token: Authorization: Bearer <api key>. Opret nøglen under Settings > API > Add new API key. (kilde)

Synkroniseringen skal tilrettelægges efter disse grænser:

  • Som standard tillader Katana API 60 forespørgsler pr. 60 sekunder (kilde)
  • Overskrides grænsen, returnerer API’et 429 med Retry-After. X-Ratelimit-Remaining viser, hvor mange forespørgsler der er tilbage.
  • Liste-endpoints returnerer resultaterne sidevis og understøtter filtrering efter opdateringsdato, så kun små datamængder skal overføres ved ændringer.

Hos SkyPlanner bruger REST API’et et API-token til godkendelse (SkyPlanner Settings > API) og er dokumenteret i Swagger/OpenAPI. Integrationsvejledningen gennemgår de første kald.

Webhooks

Registrer en webhook med POST /webhooks, en HTTPS-URL og de hændelser, I har brug for. (kilde) Følgende hændelser er relevante for planlægningen:

  • manufacturing_order.created, .updated, .deleted, .in_progress, .blocked, .done
  • manufacturing_order_operation_row.created, .updated, .in_progress, .paused, .completed
  • current_inventory.material_updated, .material_out_of_stock
  • purchase_order.* og purchase_order_row.*, herunder modtagelse
  • product.*, product_recipe_row.* og sales_order.*

Payloads indeholder kun ressourcetype, handling og en href. Modtageren henter det fulde objekt fra href-adressen. Hver levering indeholder en x-sha2-signature-header (HMAC SHA-256) til verificering. Jeres endpoint skal svare med 20X inden for 10 sekunder. Katana forsøger igen tre gange: efter 30 sekunder, 2 minutter og 15 minutter.

Datamapping

Katana-objekt (endpoint)SkyPlanner-objektRetningHyppighed
Produkter, materialer, varianter (/products, /materials, /variants)Produkter og materialerKatana → SkyPlannerIndledende indlæsning, derefter via webhook
Produktopskrift / stykliste (/recipe_rows, /bom_rows)Produktstruktur, delprodukterKatana → SkyPlannerIndledende indlæsning, derefter via webhook
Produktionsoperationer (/product_operation_rows): type, ressource, tidProcestrin med varigheder og omstillingstiderKatana → SkyPlannerFørste indlæsning, derefter ved ændringer
Ressourcer (resource_id, resource_name på operationslinjer)Arbejdsstationer, grupper af arbejdsstationerKatana → SkyPlannerIndledende indlæsning og ved nye ressourcer
Produktionsordre med operationslinjer (/manufacturing_orders, /manufacturing_order_operation_rows)Ordrer og opgaverKatana → SkyPlannerI realtid via webhook
Materialer på produktionsordren (/manufacturing_order_recipe_rows)Materialer pr. opgaveKatana → SkyPlannerI realtid via webhook
Lagerbeholdning, indkøbsordrer med ankomstdatoer (/inventory, /purchase_order_rows)Lagerbeholdning og indgående materialerKatana → SkyPlannerI realtid via webhook
Salgsordrens delivery_date (/sales_orders)Ordrens leveringsfrist, kundeprioritetKatana → SkyPlannerI realtid via webhook
Produktionsordrernes rækkefølge (POST /manufacturing_order_rerank)Planlagt rækkefølge for åbne produktionsordrerSkyPlanner → KatanaVed planændringer
Produktionsordrens production_deadline_date (PATCH /manufacturing_orders/{id})Planlagt afslutningSkyPlanner → KatanaVed planændringer
Operationslinjens status, total_actual_time (PATCH /manufacturing_order_operation_rows/{id})Mobile Confirmations, tidsregistreringerSkyPlanner → KatanaNår arbejdet registreres
Findes ikke i KatanaSkiftehold, fravær, omstillingstidsmatrix, værktøjer, antal operatører, alternative arbejdsstationerVedligeholdes i SkyPlannerOpsættes under opstarten

Integrationsmønstre

1. Indledende indlæsning af stamdata. Hent produkter, materialer, varianter, opskriftslinjer og produktoperationslinjer side for side, og hold kaldhyppigheden under grænsen. Opret arbejdsstationer i SkyPlanner ud fra de unikke ressourcer på operationslinjerne, og bevar en 1:1-kobling via nøglerne. Opsæt skiftehold, ferie og overarbejde for hver arbejdsstation i SkyPlanner, da Katana ikke har en ressourcekalender.

2. Ordresynkronisering. Abonner på hændelser for produktionsordrer, operationslinjer, lagerbeholdning og indkøbsordrer. Hent objektet fra dets href-adresse ved hver hændelse, og opdater opgaven. SkyPlanner betragter bestilte materialer som tilgængelige på indkøbsordrens leveringsdato og opdaterer lagerbeholdningen, når indkøbsordren modtages. En natlig afstemning med filtre på opdateringsdato opfanger eventuelle oversete hændelser.

3. Tilbageskrivning af planen. To kald overfører planen til Katana:

  • POST /manufacturing_order_rerank “moves one or more manufacturing orders to an exact place in the production schedule” (flytter en eller flere produktionsordrer til en bestemt plads i produktionsplanen). Kaldet accepterer op til 250 åbne produktionsordrer pr. forespørgsel og placerer dem øverst, nederst eller før eller efter en bestemt produktionsordre. (kilde)
  • PATCH /manufacturing_orders/{id} angiver production_deadline_date. Katana accepterer kun værdien, når automatisk beregning af produktionsfrister er slået fra for den pågældende fabrikslokation. (kilde)

Omrangeringen påvirker mere end listen. I Katana gælder det, at “higher-priority MOs reserve required materials and subassemblies first” (produktionsordrer med højere prioritet reserverer de nødvendige materialer og delmontager først). Rækkefølgen fra SkyPlanner afgør derfor også, hvilken produktionsordre der får tildelt lagerbeholdningen i Katana.

4. Tilbagemeldinger fra produktionsgulvet. Operatørerne registrerer arbejdet med SkyPlanner Mobile Confirmations, Production Timer eller Quick Log Mode. SkyPlanner skriver status og faktisk tidsforbrug til produktionsordrens operationslinje. Hvis en fabrik i stedet beholder Katana Shop Floor App, læser SkyPlanner hændelserne på operationslinjerne. Vælg én indberetningskanal pr. fabrik.

5. Dataejerskab og regler for konflikter. Skriv dem ned inden idriftsættelsen:

DataEjer
Produkter, opskrifter, produktionsoperationer, lagerbeholdning, indkøb, salgsordrerKatana
Operationsrækkefølge, start- og sluttidspunkter, arbejdsstation pr. operationSkyPlanner
Produktionsordrens placering på fanen Schedule og produktionsfristSkyPlanner, skrives til Katana
Skiftehold, fravær, omstillingstidsmatrix, værktøjer, alternative ressourcerSkyPlanner
Operationsstatus og registreret tidÉn kanal, valgt under afklaringen

Typiske trin i projektet

Implementeringen er normalt afsluttet inden for få uger efter opstarten. Inden da kan I bruge den gratis prøveperiode på 30 dage med jeres egne data fra en CSV-eksport fra Katana, f.eks. listen Tasks på skærmbilledet Make.

Selve projektet omfatter:

  1. Abonnement og nøgle. Kontrollér, at jeres Katana-abonnement omfatter API og Manufacturing Management, og opret API-nøglen.
  2. Indstilling af frister. Aftal at slå automatiske frister fra for fabrikslokationen, så SkyPlanner styrer produktionsfristerne.
  3. Mapping. Fastlæg mappingtabellen, ressourcenøglerne, reglerne for dataejerskab og indberetningskanalen.
  4. Første indlæsning. Produkter, varianter, recepter, produktionsoperationer og ressourcer.
  5. Hændelsesbaseret synkronisering. Webhooks til ordrer, operationer, lagerbeholdning og indkøbsordrer samt natlig afstemning.
  6. Opsætning af begrænsninger i SkyPlanner. Skiftehold, omstillingstidsmatrix, værktøjer, antal operatører og alternative arbejdsstationer.
  7. Tilbageskrivning. Omprioritering og frister, derefter operationsstatus og tid.
  8. Parallel test og idriftsættelse. Sammenlign datoerne i SkyPlanner med de aktuelle datoer på fanen Schedule, ret stamdata, og aktivér derefter tilbageskrivning.

Det skal I tage højde for i en Katana-integration

  • Automatiske frister overskriver datoer. “Once automatic mode is enabled, all manual deadlines will be overwritten and cannot be restored.” (Når automatisk tilstand aktiveres, overskrives alle manuelle frister og kan ikke gendannes.) Vælg indstillingen én gang ved projektstart.
  • Ingen ressourcekalender. Udled ikke skiftehold af den ene værdi i Weekly throughput. Opret dem for hver arbejdsstation i SkyPlanner.
  • Ressourcer findes kun på operationslinjer. Hold ressourcenavnene i Katana uændrede, da de bruges som nøgle til arbejdsstationerne i SkyPlanner.
  • Tidsenheder. planned_time_parameter angives i sekunder: pr. enhed for operationer af typen per-unit og som samlet tid for typerne process, setup og fixed. Map typen korrekt, ellers bliver varighederne forkerte med en faktor svarende til antallet.
  • Grupper ved ordreproduktion. Ved omprioritering forbliver produktionsordrer (MO’er), der er knyttet til samme salgsordre, samlet. Placér dem derfor som en gruppe i rækkefølgen.
  • Ændret adfærd ved omprioritering. Siden 7. oktober 2026 har rerank-endpoints placeret ordrer præcis på den angivne plads. Integrationer, der er udviklet til den tidligere adfærd, skal testes igen. (kilde)

Katana-integrationen: Hvem står for opsætning og support?

Arbejdet omfatter jeres ressourcer, produktionsoperationer, ordreflow og den måde, frister håndteres på. Opsætningen tilføjer det, Katana ikke indeholder: skiftehold, en matrix for omstillingstider, værktøjer, antal operatører og alternative ressourcer.

  1. SkyPlanner-teamet sætter integrationen op under opstarten og yder support efter idriftsættelsen. Hver fabrik har sin egen måde at sætte ressourcer og operationer op i Katana på, og den viden bruges i opsætningen.
  2. Jeres Katana-konsulent eller integrationspartner kan bygge den. SkyPlanner stiller REST API, Swagger/OpenAPI-dokumentation og webhooks til rådighed.
  3. Jeres egne udviklere kan bygge videre på den med et API-token. Et API-token er nok til at komme i gang, og SkyPlanner-teamet hjælper efter behov. Produktdokumentation, herunder indkøbsordrer og API til produkter og materialer, findes i SkyPlanner-dokumentationen.

SkyPlanner koster fra 199 € pr. måned med 5 arbejdsstationer inkluderet og månedlig fakturering. I får på forhånd et tilbud på integrationen, der tager højde for jeres proces og behov, sammen med jeres abonnement. Dermed kender I den samlede pris, før I starter. Se priser og funktioner, og læs, hvordan Katanas egen planlægning klarer sig i sammenligningen på siden om produktionsplanlægning med reel maskin- og personalekapacitet i Katana. Overblikket findes på Katana-siden, og andre ERP-systemer findes i oversigten over ERP-integrationer.

Produktionsvirksomheders anmeldelser af SkyPlanner

Kalle Kalliomäki, forsyningskædespecialist hos UTU, i eltavleproduktionen i Ulvila

2 hsparet hver uge

“SkyPlanner har flyttet vores produktionsplanlægning fra Excel-regneark til produktionsoptimering i realtid.”

Kalle Kalliomäki, forsyningskædespecialist
UTU · Eltavler og koblingsanlæg

Produktionsplanlægningen sparer 2 timers arbejdstid hver uge, og en ny opgavekø når ud til produktionslinjen på få sekunder.

Læs UTU’s anmeldelse

Operatører i renrumsdragter ved en flaskepåfyldningslinje på Laboratory & Allieds lægemiddelfabrik i Nairobi

+90%produktionseffektivitet

“Effektiviteten i produktionen er steget med 90%.”

Abdul Rucyinga, IT-chef
Laboratory & Allied · Lægemiddelproduktion

Produktionseffektiviteten er steget med 90%, og det tager under 30 minutter at lave en optimeret plan for tre måneder på tværs af alle arbejdsstationer.

Læs Laboratory & Allieds anmeldelse

Færrestop på grund af materialemangel

“Værdien af SkyPlanner for os er, at det er et værktøj, der fungerer i hverdagen, især når vi skal fastlægge leveringsdatoer.”

Tommi Männistö, chef for produktionsplanlægning
Eskomatic · Maskinbearbejdning som underleverandør

Automatisk belastningsplanlægning giver mere præcise leveringsdatoer, og antallet af produktionsstop på grund af materialemangel er faldet markant.

Læs Eskomatics anmeldelse

Hannu Ryynänen, administrerende direktør for Mamec, i virksomhedens produktionshal i Lohja

1.000-vis afproduktionsordrer planlagt automatisk

“Vi har styr på produktionen på en helt anden måde, og vores forståelse af kapaciteten er på et helt andet niveau.”

Hannu Ryynänen, administrerende direktør
Mamec · Industriblandere, pumper og højteknologisk kontraktproduktion

Tusindvis af produktionsordrer planlægges automatisk, og hele organisationen har et overblik over produktionen i realtid.

Læs Mamecs anmeldelse

Ofte stillede spørgsmål

Har Katana et API, og hvilket abonnement skal jeg bruge?

Ja. Katana tilbyder et offentligt REST API, v1, med en OpenAPI 3.0-specifikation. På prissiden er API-adgang angivet som en del af abonnementerne Free og Advantage. Godkendelse sker med en API-nøgle som bearer-token fra Settings > API.

Kan SkyPlanner skrive produktionsplanen tilbage til Katana?

Ja. SkyPlanner placerer åbne produktionsordrer i sin egen rækkefølge på Katanas Schedule-fane via /manufacturing_order_rerank og skriver production_deadline_date for hver produktionsordre (MO). Operationsstatus og faktisk tidsforbrug skrives på produktionsordrens operationslinjer. Planen med tidspunkter for hver arbejdsstation ligger i SkyPlanner, hvor operatørerne arbejder ud fra deres opgavekø.

Sender Katana ændringer i realtid?

Ja. Katanas webhooks dækker produktionsordrer, operationslinjer, lagerbeholdning, indkøbsordrer og salgsordrer. SkyPlanner henter hvert ændret objekt og afstemmer data hver nat, så en mistet hændelse aldrig efterlader en opgave med forældede data.

Hvordan bliver ressourcer i Katana til arbejdsstationer i SkyPlanner?

Hver unik ressource på Katanas operationslinjer bliver til en arbejdsstation i SkyPlanner med en 1:1-nøgle. Skiftehold, fravær og alternative arbejdsstationer sættes derefter op i SkyPlanner.

Kan vi teste SkyPlanner, før vi bygger integrationen?

Ja. Den gratis prøveperiode på 30 dage understøtter op til 20 arbejdsstationer med CSV-import fra Katana, og der kræves intet betalingskort. Start prøveperioden, eller kontakt salg for at afklare integrationens omfang.