Integrationer / ERP / Visma Net ERP

Guide til Visma Net integration til produktionsplanlægning med SkyPlanner APS

Denne guide til Visma Net integration viser partnere og IT-teams, hvordan de forbinder Visma Net (Visma.net ERP) med SkyPlanner APS. SkyPlanner udveksler data med Visma Net i begge retninger via Visma Net API:

  • Lagervarer, Kit specifications, salgsordrer, lagerbeholdninger og indkøbsordrer overføres til SkyPlanner.
  • Planlagte opgaver bliver til Kit assemblies, som frigives, når arbejdet er færdigt.
  • Operatørernes timer sendes tilbage som Employee time cards.
  • SkyPlanner-webhooks sender ændringer i planen, så snart de sker.
Gantt-tidslinje i SkyPlanner APS med opgaver fordelt på arbejdsstationer og en ordreliste nedenunder.

SkyPlanner-teamet tilpasser integrationen til jeres Visma Net-opsætning under opstarten og yder support efter idriftsættelsen. Guiden er til partnere og udviklere, der vil deltage i arbejdet eller selv bygge videre på SkyPlanners dokumenterede REST API (API-reference).

Integrationsgrænseflader i Visma Net

  • Visma Net ERP API. REST med en OpenAPI-specifikation, der stadig hedder “Visma.net ERP API v1”, og med v1- og v2-stier. Basis-URL’en er https://api.finance.visma.net. Det gamle domæne integration.visma.net får begrænset kaldhastigheden fra 1. februar 2026 og er ved at blive lukket ned (meddelelse).
  • SalesOrder service v3 på https://salesorder.visma.net. Salgsordre-endpoints i v1 og v2 er udfaset.
  • Webhooks via Visma Developer Portal.
  • Background API. Med headeren erp-api-background sættes langvarige kald i kø. API’et returnerer 202 med et job-ID og giver besked, når resultatet er klar.
  • Import- og eksportscenarier i Visma Net med CSV, Excel eller SQL som datakilder til engangsindlæsning af stamdata.

API’et har ingen endpoints til produktionsordrer, ruter eller arbejdscentre, fordi disse objekter ikke findes i Visma Net. Data til planlægningen hentes fra varer, kits, ordrer og lager:

  • GET /v1/inventory: lagervarer og ikke-lagervarer, inklusive kit-markering og vareklasse
  • GET /v1/KitSpecifications/{kitInventoryID}/{revisionID}: komponentlinjer pr. revision
  • GET /v1/kitassembly: eksisterende montageordrer, som kan filtreres efter type og status
  • SalesOrder service v3: behov med ønskede datoer og ordrelinjer
  • GET /v1/inventorysummary/{inventoryNumber}: fysisk og disponibel beholdning pr. lager
  • GET /v1/purchaseorder og GET /v2/PurchaseReceipt: indgående materialer og varemodtagelser

Alle liste-endpoints accepterer lastModifiedDateTime med lastModifiedDateTimeCondition samt pageNumber og pageSize, så hver synkronisering kan være inkrementel.

Autentificering og grænser

Visma Net bruger Visma Connect (OpenID Connect og OAuth 2.0):

  • Registrer en Service Integration i Visma Developer Portal.
  • Kundens tenantadministrator godkender integrationen i Visma Net.
  • Anmod om tokens med client credentials-flowet på https://connect.visma.com/connect/token, og angiv tenant_id og API-scopes som visma_api:read. Tokens er gyldige i 3.600 sekunder.

Grænserne for kald gælder inden for et fast timevindue pr. virksomhed og klient. Svarene indeholder X-RateLimit-Limit, X-RateLimit-Remaining og X-RateLimit-Reset. Overskrides grænsen, returneres 429 med Retry-After (grænser for kald). Headerne ETag og If-Match beskytter opdateringer.

Partnere tester mod en demovirksomhed via Vismas gratis Integrator Programme. På SkyPlanner-siden bruger REST API’et et API-token til autentificering (SkyPlanner Settings > API) og er dokumenteret i Swagger/OpenAPI. Integrationsvejledningen gennemgår de første kald.

Hændelser, webhooks og polling

Webhooks i Visma Developer Portal dækker de hændelser, der er relevante for planlægningen:

  • Inventory Item Created, Updated og Changed
  • Purchase Order Changed og Status Changed
  • Sales Order Changed og Status Changed, som flyttes til udgiveren SalesOrderService

Der findes ingen hændelser for Kit assembly eller Kit specifications. SkyPlanner henter disse via polling med lastModifiedDateTime-filtre. Lagerbeholdninger hentes via polling, når planlægningen køres. I den modsatte retning sender SkyPlanner webhooks, når status eller planen ændres.

Datamapping

Visma Net-objekt (endpoint)SkyPlanner-objektRetningHyppighed
Lagervarer, ikke-lagervarer (/v1/inventory)Produkter og materialerVisma Net → SkyPlannerFørste indlæsning, derefter webhook
Kit specifications (/v1/KitSpecifications)Produktstruktur, materialer pr. produktVisma Net → SkyPlannerFørste indlæsning, derefter polling
Salgsordrer (SalesOrder service v3)Ordrer med leveringsfrister og kundeprioritetVisma Net → SkyPlannerWebhook
Kit assembly med status On hold (/v1/kitassembly), hvis montageordrer oprettes i Visma NetOpgaverVisma Net → SkyPlannerPolling
Inventory summary (/v1/inventorysummary)Beholdninger pr. lagerVisma Net → SkyPlannerPolling ved planlægningskørsel
Indkøbsordrer, varemodtagelser (/v1/purchaseorder, /v2/PurchaseReceipt)Indgående materialer med leveringsdato; lageret opdateres, når indkøbsordren er leveretVisma Net → SkyPlannerWebhook, derefter læsning
Findes ikke i Visma NetProcestrin, arbejdsstationer, skiftehold, matrix med omstillingstider, værktøjer, alternative ressourcerVedligeholdes i SkyPlannerOpsættes under opstarten
Oprettelse og opdatering af Kit assembly (POST/PUT /v1/kitassembly)Planlagt opgave: kit-vare, antal, planlagt slutdatoSkyPlanner → Visma NetVed planændringer via SkyPlanner-webhook
Frigivelse af Kit assembly (/v1/kitassembly/{type}/{refNo}/action/release)Afsluttet opgave: produceret mængde og komponentforbrugSkyPlanner → Visma NetVed afslutning
Inventory receipt, Inventory issue (/v1/inventoryReceipt, /v1/inventoryissue, frigivelse)Produceret mængde og materialeforbrug, hvor kits ikke brugesSkyPlanner → Visma NetVed afslutning
Employee time card (/v1/timeCard)Registrerede timer pr. operatørSkyPlanner → Visma NetUgentligt

Integrationsmønstre

1. Første indlæsning af stamdata. Hent lagervarer, vareklasser og den seneste revision af Kit specification for hvert kit. Knyt hver komponentlinje til et materiale i SkyPlanner. Opret derefter det, som Visma Net ikke indeholder: arbejdsstationer, skiftehold, procestrin med opstillings- og køretider, en matrix med omstillingstider og værktøjskrav. Importer dem som CSV eller Excel. Det er den største del af projektet.

2. Ordresynkronisering. Vælg én model for, hvad der udløser behovet:

  • Styret af salgsordrer. Åbne salgsordrelinjer for kit-varer bliver til ordrer i SkyPlanner med den ønskede dato som leveringsfrist.
  • Styret af montageordrer. Kit assemblies, der oprettes i Visma Net med status On hold, bliver til opgaver i SkyPlanner.

Åbne indkøbsordrer overføres med deres datoer. SkyPlanner regner bestilte materialer som disponible på indkøbsordrens leveringsdato og opdaterer lageret, når indkøbsordren markeres som Delivered. Med disse data og lageroversigten tager planlægningen højde for både lagerbeholdningen og indgående indkøb.

3. Tilbageskrivning af planen. I en opsætning styret af salgsordrer opretter SkyPlanner en Kit assembly af typen Production for hver planlagt opgave. SkyPlanner angiver kit-vare, revision, lager, antal og komponenter og knytter montageordren til salgsordrelinjen. Montageordrens dato er den planlagte slutdato. Når Autopilot flytter opgaven, opdateres datoen med et PUT-kald inden frigivelse.

Kit assembly har ét Date-felt, så tidspunkterne for de enkelte operationer bliver i SkyPlanner. Visma Net får den dato, der er relevant for salg og lager.

4. Tilbagemeldinger fra produktionen. Operatørerne registrerer arbejdet med Mobile Confirmations eller Production Timer, og tidsregistreringerne holder planen opdateret. Når det sidste trin er færdigt, kalder SkyPlanner frigivelseshandlingen på Kit assembly. Frigivelsen bogfører den producerede mængde og komponentforbruget, og derefter følger finanskladden. Timerne samles i ugentlige Employee time cards eller i projekttransaktioner, når arbejdet er projektstyret.

5. Regler for dataejerskab og konflikter. Skriv dem ned før idriftsættelse:

DataDataejer
Varer, Kit specifications, salgsordrer, indkøbsordrer, lagerbeholdning, omkostningerVisma Net
Procestrin, arbejdsstationer, skift, omstillinger, værktøjerSkyPlanner
Opgavernes rækkefølge, start- og sluttidspunkter, tildeling af arbejdsstationSkyPlanner
Dato på Kit assembly før frigivelseSkyPlanner
Frigivne Kit assemblies og timesedlerVisma Net, bogført fra SkyPlanner

En ændring i en Kit specification opretter en ny revision. Læs den seneste revision ind igen, og opdater mappingen, da kun den seneste revision kan bruges til produktion. Manuelle ændringer af komponenter på en Kit assembly gælder fortsat i Visma Net, så SkyPlanner læser den tilbage før frigivelse.

Typiske projekttrin

Implementeringen er normalt afsluttet inden for nogle uger efter, at onboarding er startet. Inden da kan I bruge den gratis prøveperiode på 30 dage med jeres egne data fra et eksportscenarie i Visma Net, importeret som CSV eller Excel.

  1. Afklaring. Fastlæg behovsmodellen, mappingtabellen, reglerne for dataejerskab og målet for tilbageskrivning (Kit assembly eller lagertilgang).
  2. Opsætning af Visma Connect. Registrer Service Integration, og få tenantadministratorens godkendelse. Test først i et demoregnskab.
  3. Produktionsmodel. Arbejdsstationer, skift, procestrin, omstillinger og værktøjer i SkyPlanner.
  4. Første indlæsning. Lagervarer, vareklasser, Kit specifications, lagre og lagerbeholdning.
  5. Synkronisering af salgs- og indkøbsordrer. Webhooks til salgsordrer, indkøbsordrer og varer; polling til kits og lagerbeholdning. Her håndteres også fornyelse af tokens og 429-svar.
  6. Tilbageskrivning. Oprettelse, opdatering og frigivelse af Kit assembly samt timesedler.
  7. Paralleltest. Kør SkyPlanner parallelt med den nuværende plan, og sammenlign datoerne.
  8. Idriftsættelse. Aktivér tilbageskrivning, når dataene stemmer overens.

Det skal I planlægge ved en Visma Net-integration

  • Ingen ruter at importere. Alle procestrin, omstillings- og køretider oprettes i SkyPlanner. Planlæg arbejdet, og udpeg en ansvarlig.
  • Advanced logistics. Kit assembly kræver gruppen Advanced logistics. Med Standard logistics bogføres produktionen via Inventory receipt og Inventory issue.
  • Låste revisioner. En revision af en Kit specification kan ikke redigeres, når den er taget i brug, og kun den seneste revision kan bruges til produktion.
  • Måleenheder. Kit assembly har sin egen måleenhed. Sørg ved import for, at den stemmer overens med mængderne i SkyPlanner.
  • Polling uden hændelser. Kits har ingen webhooks. Hent kun ændringer ud fra lastModifiedDateTime frem for at genindlæse alle data, så I holder jer inden for den tilladte grænse for kald pr. time.
  • Aktuelle endpoints. Byg kun på api.finance.visma.net og SalesOrder service v3.
  • Tenantgodkendelse. Client credentials virker ikke, før tenantadministratoren har godkendt appen. Aftal det trin tidligt.
  • Ugentlige timesedler. Timesedler kræver Advanced financials og dækker en uge ad gangen. Saml operatørtimerne pr. uge, eller bogfør dem som projekttransaktioner.

Hvem opsætter Visma Net-integrationen og yder support?

  1. SkyPlanner-teamet opsætter integrationen under onboarding og yder support efter idriftsættelse. Det omfatter SkyPlanner-siden, den produktionsmodel, som Visma Net mangler, og de aftalte kald til Visma Net API. Hver fabrik bruger Visma Net på sin egen måde, og den viden indarbejdes her.
  2. Jeres Visma Net-partner kan deltage. Visma leverer Visma Net sammen med Visma-certificerede partnere, som kender jeres opsætning og kan gennemgå mappingen og Visma Connect-appen. SkyPlanner stiller REST API, Swagger/OpenAPI-dokumentation og webhooks til rådighed.
  3. Jeres egne udviklere kan bygge integrationen på samme dokumenterede REST API med et API-token. Et API-token er nok til at komme i gang, og SkyPlanner-teamet hjælper efter behov. Den offentlige dokumentation findes i SkyPlanners dokumentation.

Når forbindelsen er etableret, planlægger Arcturus-motoren ud fra aktuelle ordrer i Visma Net, og færdigt arbejde skrives tilbage til Visma Net som frigivne Kit assemblies. Prisen er fra 199 € pr. måned med 5 arbejdsstationer inkluderet og månedlig fakturering. I får på forhånd et tilbud på integrationen ud fra jeres proces og behov sammen med prisen på abonnementet, så I kender den samlede pris, før I starter.

Se priser, og læs, hvorfor Visma Net har brug for et planlægningsværktøj, i produktionsplanlægning med Visma Net inden for den faktiske maskin- og personalekapacitet. Få overblikket på Visma Net-siden, og se andre ERP-systemer i oversigten over ERP-integrationer.

Producenters anmeldelser af SkyPlanner

Kalle Kalliomäki, specialist i forsyningskæder 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, specialist i forsyningskæder
UTU · Eltavler og koblingsanlæg

Produktionsplanlægningen sparer 2 timers arbejde 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 anmeldelsen fra Laboratory & Allied

En svejser hos KJH-Comp sliber en svejst stålkonstruktion på fabrikken i Alahärmä

98%leveringssikkerhed, op fra ca. 50%

“SkyPlanner spiller en afgørende rolle i at opretholde vores leveringssikkerhed.”

Hannu Lahtinen, administrerende direktør
KJH-Comp · Pladebearbejdning og kontraktproduktion

Leveringssikkerheden steg fra omkring 50% til helt op til 98%, og planlægningen kræver nu én arbejdsleder i stedet for to.

Læs KJH-Comps anmeldelse

Anu Järvinen, produktionschef hos Fredman Operations, ved en robotcelle til palletering i Rauma

6 månederfrem kan salgsafdelingen se ledig kapacitet

“SkyPlanner skaber et solidt og pålideligt grundlag for al produktionsplanlægning.”

Anu Järvinen, produktionschef
Fredman Operations · Emballagepapir til fødevarer

Salgsafdelingen kan se ledig kapacitet seks måneder frem, og forespørgsler om ændringer i planen, som før tog en time eller mere, besvares nu på få sekunder.

Læs anmeldelsen fra Fredman Operations

Ofte stillede spørgsmål

Har Visma Net API produktionsordrer?

Nej. Visma Net har ingen objekter til produktionsordrer, ruter eller arbejdscentre, så de findes heller ikke i API’et. Produktionsdokumentet er Kit assembly på /v1/kitassembly, mens ruter og arbejdsstationer ligger i SkyPlanner.

Hvilken autentificering bruger integrationen?

Visma Connect med OAuth 2.0 client credentials-flowet, registreret som en Service Integration i Visma Developer Portal. Tenantadministratoren godkender integrationen, og tokens er gyldige i én time.

Kan Visma Net sende ændringer i realtid?

Ja, for varer, salgsordrer og indkøbsordrer via webhooks fra Visma Developer Portal. Kit assemblies og Kit specifications har ingen hændelser og hentes via inkrementel polling. SkyPlanners egne webhooks sender ændringer i planen, så snart de sker.

Hvordan skrives færdig produktion tilbage til Visma Net?

SkyPlanner opretter en Kit assembly for hver planlagt opgave, holder datoen opdateret og kalder frigivelseshandlingen, når opgaven er færdig. Frigivelsen bogfører den producerede mængde og komponentforbruget. Uden kits gør Inventory receipt og Inventory issue det samme.

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- eller Excel-import fra Visma Net og kræver ikke kreditkort. Start prøveperioden, eller tal med salgsafdelingen for at afklare integrationens omfang.