Systemintegration: jeres egen Azure eller en iPaaS-licens
Systemintegration er det, der flytter data mellem jeres systemer, så en ordre fra Shopify lander i Business Central, og lagertallet går den anden vej. I kan leje det som en iPaaS-licens, hvor logikken ligger hos leverandøren, eller bygge det i jeres egen Azure, hvor koden ligger i jeres repo. Det sidste kræver en ejer hos jer, og til gengæld kan I selv ændre det.
Hvad er systemintegration?
Systemintegration er alle de små forbindelser, der gør, at ingen skal taste det samme to gange. Kører I handel på Business Central, ser listen sådan ud:
- Ordrer fra webshoppen ind i BC, og lager, pris og leveringsstatus tilbage til webshoppen.
- Produktdata fra PIM til webshop og marketplaces.
- Bankens kontoudtog ind i BC hver morgen, så bogholderen kan afstemme.
- Leverandørfakturaer fra indbakken til kreditorkladden.
- Salg, lager og finans videre til Power BI eller en dataplatform, så ledelsen ser ét tal.
Hver forbindelse er lille. Problemet er, at de vokser til tyve, bygget af fem leverandører over otte år. Og ingen hos jer kan sige, hvilken der knækkede i nat.
Integrationsplatform, connector eller egen Azure?
Integrationsløsningerne falder i fire grupper. Teknikken kan alle fire klare. Det, der skiller dem, er, hvem der ejer logikken, og hvad I betaler for hvert år.
| Hvad det er | Hvem ejer logikken | Passer, når | |
|---|---|---|---|
| Punkt til punkt | Et script eller en kodeenhed mellem to systemer | Den, der skrev det, og ofte ingen | Der er én integration, og den ændrer sig aldrig |
| Færdig connector | En app fra AppSource eller en webshop-connector | Leverandøren af connectoren | Jeres proces passer til standarden |
| iPaaS | En lejet integrationsplatform, fx MuleSoft, Boomi eller en dansk udbyder | Platformen og partneren, der byggede flowene | I har hundredvis af integrationer og et team til at drive dem |
| Egen Azure | Logic Apps, Functions og API Management i jeres tenant | Jer, med koden i jeres repo | I vil kunne ændre og flytte integrationerne selv |
Shopify-connectoren til Business Central er et godt eksempel på den færdige connector, og hvor den stopper, står på siden om Shopify og Business Central.
Hvad er iPaaS, og hvad betaler I for?
iPaaS står for integration platform as a service. I lejer en platform med færdige connectors og en grafisk editor, hvor flowene bygges. Prisen afhænger af platformen og følger antal forbindelser, flows eller transaktioner. Tjek, hvad der sker med prisen, når ordremængden fordobles i november.
MuleSoft og Boomi er gode værktøjer for koncerner med hundredvis af integrationer og et integrationsteam, der kan dem. Det går galt, når I har 15 integrationer og betaler licens år efter år for en sort boks, som kun partneren kan åbne.
Stil de her spørgsmål, før I skriver under:
- Kan vi eksportere flowene i et format, vi kan køre et andet sted?
- Hvem hos os kan ændre en feltregel uden at ringe til partneren?
- Hvad koster det at gå, både i opsigelse og i genopbygning?
- Hvor ligger loggen, og hvor længe gemmes den?
Azure Integration Services i jeres egen tenant
Microsoft samler en håndfuld tjenester under navnet Azure Integration Services. I betaler for forbruget i jeres eget Azure-abonnement, og der er ingen licens pr. forbindelse. Kører I allerede Business Central online og Microsoft 365, har I tenanten i forvejen.
| Tjeneste | Job i en integration |
|---|---|
| Logic Apps | Arbejdsgangen: hent ordren, slå debitoren op, opret salgsordren. Har færdige connectors til bl.a. Business Central. |
| Azure Functions | Den kode, der er for speciel til en connector, fx jeres egne regler for fragt eller rabat. |
| API Management | Én styret indgang til jeres API’er med adgangsnøgler, grænser og log. |
| Service Bus | En kø, så en ordre ikke forsvinder, når BC er nede i ti minutter. |
| Event Grid | Sender hændelser videre, så systemerne ikke skal spørge hinanden hvert minut. |
| Data Factory | Flytter store datamængder om natten, fx til en dataplatform. |
Logic Apps findes i to modeller. Consumption afregnes pr. kørsel og passer til få og spredte flows. Standard afregnes for en hostingplan, uanset forbrug, og bliver billigere ved store mængder. Regn på jeres eget volumen i Azures priskalkulator, før I vælger.
Det, I får, er flows, der ligger som kode i jeres repo, og en log i jeres egen Azure. Næste partner eller jeres egen udvikler kan læse begge.
Ét sted, hvor ERP, webshop, PIM og bank mødes
Tyve punkt til punkt-forbindelser giver tyve steder at lede, når et lagertal er forkert. En data gateway samler dem: hvert system forbindes én gang, og alle andre, også agenter og rapporter, henter derfra. En af os har bygget sådan en internt i en detailkoncern med flere selskaber og markeder.
Eksempel med opdigtede tal.
Det er det samme datalag, som virksomhedens hjerne og agenterne læser fra. Debitoragenten behøver ikke sin egen forbindelse til banken. Den henter fra gatewayen, med kun læseadgang og kun de felter, jobbet kræver.
ERP-integration med Business Central: hvad API’et kan
API-integration til Business Central online går gennem standard-API’er over OData, og I kan bygge jeres egne API-sider til det, standarden ikke dækker. Direkte adgang til databasen findes ikke online. Tre ting fra Microsofts dokumentation er værd at kende, før I bygger:
- Webhooks. BC kan give besked, når en post ændres, så I slipper for at spørge hvert minut. BC venter 30 sekunder efter første ændring, før beskeden sendes. Ændres over 1.000 poster i det tidsrum, kommer der én samlet besked.
- Grænser. Hver bruger eller Entra-app har 6.000 kald pr. fem minutter. Går I over, svarer BC med fejl 429, og integrationen skal vente og prøve igen.
- Batch. Et kald kan bære op til 100 operationer, så en natkørsel med 1.200 ordrer ikke behøver 1.200 kald.
Hvordan I får data ud til rapportering, og hvilke API’er der passer til hvad, står på siden om Business Central-API.
Hvem ejer integrationerne, når leverandøren går?
Spørg hos jer: hvem får besked, når ordrerne ikke kommer ind i BC i nat? Er svaret »partneren« eller »det ved vi ikke«, ejer I ikke jeres integrationer. Fire ting gør jer uafhængige:
Koden i jeres repo
Hvert flow ligger som kode under jeres egen konto, med historik over hvem der ændrede hvad.
Et navn på hver integration
Ordreflowet ejes af e-handelschefen, bankfilen af bogholderen. Det står i ejerkortet.
En alarm, der rammer ejeren
Fejler et job, får ejeren en besked med hvad og hvorfor. Ikke en partner i en anden by.
En drifthåndbog
Hvad gør I, når Shopify ændrer et felt, eller en ny bankkonto skal med? Det står skrevet, før vi går.
Sådan arbejder vi: vi bygger integrationerne sammen med jeres team, i jeres Azure, og vi går først, når jeres folk selv kan ændre et flow. Mere om at undgå at blive låst til én leverandør står på siden om vendor lock-in.
Når egen Azure er det forkerte valg
- Når standardconnectoren dækker jeres proces. Brug den, og byg kun det, den ikke kan.
- Når ingen hos jer vil eje integrationerne. Så er en iPaaS med en partner, der svarer om natten, det ærlige valg.
- Når I har hundredvis af integrationer og et integrationsteam, der allerede kan MuleSoft eller Boomi.
- Når filen kommer fire gange om året. En person, der uploader den, er billigere end en integration.
Hvad er systemintegration?
Systemintegration er de forbindelser, der flytter data automatisk mellem jeres systemer, fx ordrer fra webshop til ERP og lager tilbage igen. Målet er, at ingen taster det samme to gange, og at alle systemer viser samme tal. Det kan bygges som enkeltforbindelser, købes som connectors eller samles i en integrationsplatform.
Skal vi købe en integrationsplatform eller bygge i Azure?
Har I hundredvis af integrationer og et team, der kan en bestemt platform, er en iPaaS som MuleSoft eller Boomi et fornuftigt valg. Har I 10–30 integrationer og vil kunne ændre dem selv, er Azure Integration Services i jeres egen tenant det bedre valg. Den afgørende forskel er, hvem der ejer logikken og loggen.
Hvad er iPaaS, og hvad betaler vi for?
iPaaS, integration platform as a service, er en lejet platform med færdige connectors og en editor til at bygge flows. Prisen følger antal forbindelser, flows eller transaktioner, og den løber, så længe I bruger platformen. Spørg altid, om I kan eksportere flowene, hvis I vil skifte.
Hvad er Azure Integration Services?
Det er Microsofts samling af integrationstjenester: Logic Apps til arbejdsgange, API Management til styrede API’er, Service Bus til køer og Event Grid til hændelser. Functions og Data Factory bruges ofte sammen med dem. Det hele kører i jeres eget Azure-abonnement og afregnes efter forbrug.
Hvem ejer integrationerne, når leverandøren går?
Det gør I kun, hvis koden ligger i jeres repo, loggen i jeres cloud, og hver integration har en navngiven ejer hos jer. Ligger flowene i en partners konto eller en platform, I ikke kan eksportere fra, ejer I en aftale. Kræv en drifthåndbog, før partneren går.
Hvor forsvinder jeres timer?
Tag den opgave med, der stjæler flest. Så siger vi ærligt, om agenter kan tage den, og hvad det kræver af jer.