--- title: API Integrasjoner date: 2024-04-16T13:00:00Z ---
API-integrasjon mellom SmartDok og Visma Business for automatisert internfakturering
Dette prosjektet ble utviklet for en bedriftskunde som trengte å automatisere og forenkle sitt internfaktureringssystem. Tidligere måtte prosjektledere manuelt opprette og sende fakturaer mellom prosjekter, noe som var tidkrevende og førte til feil.
Jeg utviklet en komplett løsning som kobler sammen to viktige systemer: SmartDok (som brukes til timeføring og prosjektadministrasjon) og Visma Business (regnskapssystemet). Løsningen gjør det enkelt for prosjektledere å fakturere mellom prosjekter med et par klikk, samtidig som prosessen blir mer transparent og feilfri.
Internfakturering mellom prosjekter var en tidkrevende og kompleks prosess. Prosjektledere måtte manuelt opprette fakturaer i Visma Business, noe som krevde spesialkunnskap om regnskapssystemet, ga rom for feil, og forsinket ofte bokføringen. Utfordringene inkluderte:
Prosjektledere brukte flere timer i uken på å administrere internfakturering, tid som kunne blitt brukt på prosjektledelse.
Manuelle prosesser førte til feilregistreringer, dobbeltregistreringer, og beløp som gikk til feil prosjekter.
Data fra SmartDok og Visma Business var ikke synkronisert, noe som førte til inkonsistenser mellom systemene.
Det var vanskelig å spore hvem som hadde gjort hva, og å sørge for at riktige personer ble varslet om belastninger.
Jeg utviklet en skreddersydd API-integrasjonsløsning som automatiserer hele internfaktureringsprosessen. Den kobler sammen SmartDok og Visma Business gjennom et intuitivt brukergrensesnitt som gjør det enkelt for alle ansatte å bruke systemet, uavhengig av regnskapskunnskap.
Systemarkitektur og dataflyt mellom SmartDok, API-løsningen og Visma Business
API-et kobler seg til SmartDok via deres REST API og henter oppdatert prosjektinformasjon, inkludert prosjektnummer, navn og ansvarlige personer.
Brukeren fyller ut et enkelt nettbasert skjema der de velger fra-prosjekt, til-prosjekt, eventuelle underprosjekter, beløp og om det er en vanlig faktura eller kreditnota.
Systemet genererer automatisk korrekte fakturadata i Visma-format med riktige kontonummer, momshåndtering og referanser, og tildeler unike bilagssekvenser fra MongoDB.
Fakturaen eksporteres som tekstfil eller PDF, klar for import i Visma Business. Samtidig sendes automatiske e-postnotifikasjoner til involverte parter.
Når jeg bygget denne løsningen, fokuserte jeg på å lage et system som var både robust, sikkert og enkelt å vedlikeholde:
Backend: Jeg valgte Python med Flask som rammeverk for å bygge REST API-et. Dette ga meg fleksibilitet og mulighet til å implementere asynkrone kall til SmartDok API-et. MongoDB ble brukt for å lagre sekvensnummer for bilag, som sikrer at hvert bilag får et unikt nummer innenfor et spesifisert intervall.
Frontend: Brukergrensesnittet er bygget med vanilla JavaScript, HTML og Bootstrap for responsivt design. Jeg la vekt på en ren og intuitiv brukeropplevelse med sanntidsvalidering og tydelig tilbakemelding.
Integrasjoner: Løsningen integrerer med SmartDok via deres RESTful API for å hente prosjektdata. For Visma Business implementerte jeg en spesialisert eksportmodul som genererer tekstfiler i eksakt det formatet Visma forventer for import, med spesifikke kolonner, bilagsnummer og kontostrukturer.
Sikkerhet: All kommunikasjon er kryptert med HTTPS, og API-nøkler og passord er lagret i miljøvariabler for å unngå hardkoding av sensitiv informasjon. Systemet validerer også alle inputs for å forhindre injeksjonsangrep.
Jeg designet et enkelt og intuitivt brukergrensesnitt som gjør det lett for prosjektledere å opprette internfakturaer. Det inneholder dynamiske nedtrekksmenyer for prosjekter og underprosjekter som oppdateres i sanntid.
Skjermbilde av det brukervennlige internfaktureringsgrensesnittet
Implementasjonen av denne API-integrasjonen ga umiddelbare og målbare resultater for kunden:
Reduserte tiden brukt på internfakturering med 85%, tilsvarende ca. 15-20 timer per måned for regnskapsavdelingen.
Eliminerte manuelle registreringsfeil, som tidligere utgjorde opptil 12% av alle internfakturaer og krevde flere timer med feilsøking.
Raskere registrering førte til mer oppdatert regnskapsinformasjon, som igjen bidro til bedre økonomistyring for prosjektene.
Reduserte manuelle tilganger til Visma Business, noe som minimerte tilgangsrisiko og forbedret sikkerhetskontroll.
Dette prosjektet ga meg verdifull erfaring med:
En av de viktigste lærdommene var viktigheten av å forstå kundens forretningsprosesser i detalj før man begynner utviklingen. Ved å bruke tid på å kartlegge nøyaktig hvordan internfaktureringen fungerte, kunne jeg bygge en løsning som var skreddersydd for deres behov.
Ta kontakt om du ønsker å diskutere hvordan API-integrasjoner kan effektivisere arbeidsprosessene i din virksomhet.