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.
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æneintegration.visma.netfå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-backgroundsæ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 vareklasseGET /v1/KitSpecifications/{kitInventoryID}/{revisionID}: komponentlinjer pr. revisionGET /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. lagerGET /v1/purchaseorderogGET /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 angivtenant_idog API-scopes somvisma_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-objekt | Retning | Hyppighed |
|---|---|---|---|
Lagervarer, ikke-lagervarer (/v1/inventory) | Produkter og materialer | Visma Net → SkyPlanner | Første indlæsning, derefter webhook |
Kit specifications (/v1/KitSpecifications) | Produktstruktur, materialer pr. produkt | Visma Net → SkyPlanner | Første indlæsning, derefter polling |
| Salgsordrer (SalesOrder service v3) | Ordrer med leveringsfrister og kundeprioritet | Visma Net → SkyPlanner | Webhook |
Kit assembly med status On hold (/v1/kitassembly), hvis montageordrer oprettes i Visma Net | Opgaver | Visma Net → SkyPlanner | Polling |
Inventory summary (/v1/inventorysummary) | Beholdninger pr. lager | Visma Net → SkyPlanner | Polling ved planlægningskørsel |
Indkøbsordrer, varemodtagelser (/v1/purchaseorder, /v2/PurchaseReceipt) | Indgående materialer med leveringsdato; lageret opdateres, når indkøbsordren er leveret | Visma Net → SkyPlanner | Webhook, derefter læsning |
| Findes ikke i Visma Net | Procestrin, arbejdsstationer, skiftehold, matrix med omstillingstider, værktøjer, alternative ressourcer | Vedligeholdes i SkyPlanner | Opsættes under opstarten |
Oprettelse og opdatering af Kit assembly (POST/PUT /v1/kitassembly) | Planlagt opgave: kit-vare, antal, planlagt slutdato | SkyPlanner → Visma Net | Ved planændringer via SkyPlanner-webhook |
Frigivelse af Kit assembly (/v1/kitassembly/{type}/{refNo}/action/release) | Afsluttet opgave: produceret mængde og komponentforbrug | SkyPlanner → Visma Net | Ved afslutning |
Inventory receipt, Inventory issue (/v1/inventoryReceipt, /v1/inventoryissue, frigivelse) | Produceret mængde og materialeforbrug, hvor kits ikke bruges | SkyPlanner → Visma Net | Ved afslutning |
Employee time card (/v1/timeCard) | Registrerede timer pr. operatør | SkyPlanner → Visma Net | Ugentligt |
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:
| Data | Dataejer |
|---|---|
| Varer, Kit specifications, salgsordrer, indkøbsordrer, lagerbeholdning, omkostninger | Visma Net |
| Procestrin, arbejdsstationer, skift, omstillinger, værktøjer | SkyPlanner |
| Opgavernes rækkefølge, start- og sluttidspunkter, tildeling af arbejdsstation | SkyPlanner |
| Dato på Kit assembly før frigivelse | SkyPlanner |
| Frigivne Kit assemblies og timesedler | Visma 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.
- Afklaring. Fastlæg behovsmodellen, mappingtabellen, reglerne for dataejerskab og målet for tilbageskrivning (Kit assembly eller lagertilgang).
- Opsætning af Visma Connect. Registrer Service Integration, og få tenantadministratorens godkendelse. Test først i et demoregnskab.
- Produktionsmodel. Arbejdsstationer, skift, procestrin, omstillinger og værktøjer i SkyPlanner.
- Første indlæsning. Lagervarer, vareklasser, Kit specifications, lagre og lagerbeholdning.
- 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.
- Tilbageskrivning. Oprettelse, opdatering og frigivelse af Kit assembly samt timesedler.
- Paralleltest. Kør SkyPlanner parallelt med den nuværende plan, og sammenlign datoerne.
- 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
lastModifiedDateTimefrem 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.netog 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?
- 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.
- 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.
- 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
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.
+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.
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.
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.
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.