
Uanset om du er en lille virksomhed, en stor virksomhed eller en softwareleverandør, giver Qvalias API dig en enkelt, standardbaseret måde at integrere med Peppol-netværket på, med valgfri understøttelse af yderligere EDI-flows, intelligent dokumentbehandling og databerigelse.
Gennem tjenesten Invoicing API kan du arbejde med fakturarelaterede Peppol-meddelelser som BIS BIS Billing (faktura), BIS BIS Billing Credit Note (kreditnota), BIS Self-Billing Invoice, BIS Self-Billing Credit Note og BIS Invoice BIS Invoice Response og, når det er nødvendigt, supplere dem med Message Level Response til tekniske bekræftelser relateret til fakturaer og andre Peppol-meddelelser.
Det kan API'en:
- Hjælp en lille virksomhed med at sende Peppol-fakturaer hurtigt
- Støt en stor virksomhed med strukturerede meddelelsesstrømme i store mængder
- Power-faktureringssoftware og ERP'er, der har brug for multi-tenant-forbindelse til mange kunder
I denne guide lærer du, hvordan du gør:
- Opsæt Qvalias transaktions-API som din Peppol- og EDI-hub
- Udveksl din første Peppol-faktura via API
- Udvid fra fakturaer til ordrer, kataloger og meget mere
- Muliggør skalerbare modeller med flere lejere for softwareleverandører
- Tilføj avancerede AI-drevne datafunktioner til databerigelse og PDF-udtræk
Oversigt: API til Peppol og EDI
Peppol-API'en giver en samlet grænseflade til elektroniske forretningsmeddelelser via Peppol og EDI. Det er bygget til at understøtte kernescenarier som f.eks:
- Fakturaer og kreditnotaer
- Indkøbsordrer og ordresvar
- Ændringer og annulleringer af ordrer
- Kataloger og opdateringer af varer
- Råd om afsendelse
- Svar på meddelelsesniveau og statusopdateringer
Et fælles designprincip bruges på tværs af alle slutpunkter:
- REST-baserede HTTP-slutpunkter
- Understøttelse af både JSON og XML
- UBL 2.1 som den underliggende datamodel
- Fejlhåndtering ved hjælp af standard HTTP-statuskoder
For dig betyder det, at du kan tænke i forretningsmeddelelser i stedet for netværk og protokoller. Du opretter gyldige UBL-baserede dokumenter; Qvalia håndterer Peppol- og EDI-laget i baggrunden.
Kom godt i gang: forudsætninger og opsætning
At komme i gang med Qvalias Peppol API kræver kun nogle få grundlæggende ting:
Qvalia-konto
Din organisation er onboardet som Qvalia-kunde. Du modtager et kontoregistreringsnummer, som unikt identificerer din konto i alle transaktionsopkald.
API-nøgle
Autentificering håndteres via en API-nøgle med separate nøgler til test- og produktionsmiljøer. Alle opkald foretages via HTTPS med moderne TLS.
Kontoregistreringsnummer i URL-stien
Transaktionskald inkluderer dit accountRegNo i stien. For eksempel:
POST /transaction/{accountRegNo}/invoices/outgoing
Valg af format: JSON eller XML
Du kan vælge JSON eller XML via standard HTTP-overskrifter (Content-Type og Accept). JSON er standard, hvis der ikke foretages et eksplicit valg.
Når disse elementer er på plads, er du klar til at begynde at teste Peppol-trafik med Qvalia.
Trin for trin: integration af dit første Peppol-fakturaflow (send og modtag)
Dette afsnit gennemgår en typisk første integration mellem dit system og Qvalias transaktions-API, som dækker både afsendelse og modtagelse af Peppol-fakturaer.
Trin 1: Start i sandkassen
Begynd med at integrere mod sandkassemiljøet:
- Basis-URL (eksempel): https://api-qa.qvalia.com
- Samme godkendelsesmodel, slutpunkter og struktur som i produktionen
Det giver dig mulighed for at bygge og teste uden at påvirke rigtige kunder eller økonomiske strømme.
Trin 2: Brug din API-nøgle og accountRegNo
Gem det i din konfiguration:
- Din API-nøgle (til sandkassen)
- Dit kontoRegNo
Hver anmodning skal indeholde:
- Autorisationsheader med API-nøglen
- accountRegNo i stien til slutpunktet, for eksempel:
Udgående fakturaer:/transaction/{accountRegNo}/invoices/outgoing
Indgående fakturaer (pull):/transaction/{accountRegNo}/invoices/incoming
Trin 3: Vælg JSON eller XML (UBL-baseret)
Alle transaktioner bruger UBL 2.1 som den underliggende standard.
Det kan du enten gøre:
- Generer UBL 2.1 XML, eller
- Brug UBL JSON-repræsentationen, der mapper den samme struktur til JSON-felter
Overskrifter styrer formatet:
JSON (standard)
Content-Type: application/jsonAccept: application/json
XML
Content-Type: application/xmlAccept: application/xml
Denne fleksibilitet gør det muligt at integrere Peppol-API'en i både JSON-først og XML-først-miljøer.
Trin 4: Tilknyt din faktura til UBL
Dernæst skal du mappe din interne fakturamodel til UBL-elementer. Både UBL JSON og UBL XML er tilgængelige.
- Hovedoplysninger (faktura, udstedelsesdato, fakturatypekode)
- Parter (RegnskabsleverandørPart, RegnskabskundePart)
- Totaler (TaxTotal, LegalMonetaryTotal)
- Linjer (Fakturalinje, Vare, Pris, Skattekategori)
Målet er at sikre det:
- Alle obligatoriske felter er til stede
- Værdierne er i overensstemmelse med den relevante Peppol-profil (f.eks, BIS Billing)
- Dine egne forretningskrav (referencer, omkostningscentre, projektkoder) er opfyldt
Derefter serialiserer du dette som enten JSON eller XML, afhængigt af dit valg af format. For indgående fakturaer bruger du den samme UBL-struktur, når du læser, validerer og mapper data fra Qvalia til din interne model.
Trin 5a: Send en udgående Peppol-faktura
Trin 5.1: Send en udgående Peppol-faktura
Med din udgående payload klar, endpoint-eksempel:
POST https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/outgoing
Inklusive:
- Autorisationsheader med din API-nøgle
- Korrekt Content-Type header (JSON eller XML)
- Den UBL-baserede faktura payload i request body'en
Qvalia validerer fakturaen, sender den videre via Peppol-netværket eller VAN og returnerer et svar med identifikatorer og status.
Trin 5.2: Modtag indgående Peppol-fakturaer
For at hente indgående fakturaer fra Qvalia via API, skal du typisk:
Ring f.eks. til det indgående slutpunkt:
GET https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/incoming
Det kan du også gøre:
- Filter eller sideresultater (afhængigt af din opsætning)
- Brug "læse"-slutpunkter til at skelne mellem nye og allerede behandlede fakturaer
Den returnerede UBL JSON eller XML mappes derefter ind i din interne datamodel til bogføring, godkendelse eller videre behandling.
Trin 6: Håndter overvågning, svar og fejl
Transaktions-API'en bruger forudsigelige HTTP-statuskoder, som du kan mappe til logfiler, overvågning og brugermeddelelser. Typiske mønstre:
- 200 OK - Anmodningen var vellykket, og data returneres
- 204 Intet indhold - Vellykket anmodning, intet indhold tilgængeligt
- 400 / 422 - Ugyldige data eller skema; juster din payload eller parsing
- 401 / 403 - Problemer med godkendelse eller tilladelse
- 404 - Ressource ikke fundet (ofte et sti- eller ID-problem)
- 409 - Konflikt, som f.eks. dubletter
- 429 - Hastighedsgrænsen er nået; sæt farten ned på dine anmodninger
- 500 - Intern fejl; prøv igen eller underret support, hvis den er vedvarende
De samme mønstre gælder, uanset om du sender eller modtager fakturaer.
Brug transaktionsloggen til operationel opfølgning
Ud over API-svarene kan du altid logge ind på Qvalia og gennemgå aktiviteterne i transaktionsloggen. Dette giver dig en UI-baseret visning af, hvad der sker i din integration, herunder f.eks:
- Sendt og modtaget fakturaer
- Status for individuelle transaktioner
- Fejloplysninger og valideringsfeedback
- Tidsstempler på teknisk og forretningsmæssigt niveau
Transaktionsloggen er nyttig til:
- First-line support og operationelle teams, der ikke arbejder direkte med API'en
- Fejlfinding af specifikke problemer rapporteret af kunder eller interne brugere
- Kontrol af, at ændringer i din integration opfører sig som forventet i produktionen
Sammen giver HTTP-statuskoderne og transaktionsloggen et komplet billede: Dit system kan reagere programmatisk på svar, mens dit team kan undersøge og følge op direkte i Qvalia, når det er nødvendigt.
Ud over fakturaer: Udvid din Peppol API-brugssituation
Når du har fakturaer på plads, er det nemt at udvide din integration til en fuld Peppol-meddelelsesportefølje.
Typiske udvidelser omfatter:
Ordrer. Modtag og send strukturerede ordrer elektronisk
Ordresvar og ændringer. Bekræft, ændr eller annullér ordrer
Kataloger. Vedligehold produkt- og prisoplysninger i elektroniske kataloger
Forsendelsesadvisering. Kommuniker forsendelsesoplysninger
Svar på meddelelsesniveau. Spor tekniske og forretningsmæssige bekræftelser
Fordi alt dette bruger samme API-design, godkendelsesmodel og UBL 2.1-datamodel, har du ikke brug for separate projekter eller gateways til hver dokumenttype. Du muliggør nye use cases, efterhånden som din virksomhed eller dine kunders krav udvikler sig.
Det er her, at løftet om "én Peppol API uanset behov" bliver håndgribeligt: Den samme integration tjener små leverandører, store virksomheder og komplekse platformsscenarier.
Partner-API til faktureringssoftware og ERP'er
Hvis du er softwareleverandør - og driver en faktureringsplatform, ERP, regnskabsløsning eller integrationsplatform - er dine krav lidt anderledes. Med Qvalias Partner API kan du opsætte en multi-tenant-konfiguration til udveksling af meddelelser til slutbrugere, herunder håndtering af Peppol ID .
Partner-API'en til Peppol er nødvendig, hvis du har brug for det:
- Betjen mange slutkunder fra én platform
- Hold en klar adskillelse mellem hver kundes data og transaktioner
- Undgå at drive dit eget Peppol access point eller EDI-gateway
Qvalias partnerorienterede model er designet specielt til dette formål.
Sådan fungerer partneropsætningen
- Din virksomhed bliver onboardet som partner og får en partneridentifikator.
- Du kan vælge mellem to metoder til håndtering af slutbrugermeddelelser: 1) en samlet fælles brugerkonto eller 2) individuelle Qvalia-konti for hver slutbruger, hver med sit eget accountRegNo.
- API-opkald omfatter både din partnerkontekst og den specifikke kundekonto, så du kan sende og modtage beskeder på deres vegne.
Eksempel: Partner-implementering
Onboarding
- Din organisation modtager partneroplysninger og konfiguration, herunder et partnerRegNo og en API-nøgle.
- Du opretter en enkelt integration mod Qvalias API ved hjælp af
/partner/{partnerRegNo}præfiks for alle partneropdelte opkald.
Onboarding af kunder i dit produkt
- Når en kunde aktiverer Peppol/e-fakturering i din brugergrænseflade, oprettes eller tilknyttes en Qvalia-konto til den pågældende kunde.
- Du gemmer kundens accountRegNo sammen med dit eget kunde-ID, så du kan adressere transaktioner pr. kunde.
Afsendelse og modtagelse af transaktioner pr. kunde
Din applikation genererer eller forbruger UBL-nyttelast (fakturaer, ordrer osv.) på samme måde som med standard Transaction API. Hvis du vil sende eller modtage transaktioner på vegne af en bestemt kunde, kalder du Transaction API'en via det partnerpræfiksede URI-mønster:
/partner/{partnerRegNo}/transaction/{accountRegNo}/{message-type}/{direction}
For eksempel:
- Afsendelse af en udgående faktura:
/partner/{partnerRegNo}/transaction/{accountRegNo}/invoices/outgoing(POST) - Henter indgående fakturaer:
/partner/{partnerRegNo}/transaction/{accountRegNo}/invoices/incoming(GET) - Brug af
readvarianter, hvor det er relevant, ved at tilføjereadpå stien.
Qvalia videresender og modtager beskeder, som om de var sendt eller modtaget direkte af kunden, med fuld sporbarhed pr. konto.
Fordele for softwareleverandører
- Én teknisk integration, mange kunder, ved hjælp af en ensartet partner- og kontomodel.
- Du behøver ikke at køre og vedligeholde din egen Peppol- eller EDI-backbone.
- Nem skalering til nye markeder, mandater og meddelelsestyper ved at genbruge det samme partnerintegrationsmønster.
Yderligere funktionalitet: AI-agentberigelse
Ud over transport og tilslutning tilbyder Qvalia også Enrichment API, som kan berige transaktioner med klassificering af varelinjer, behandling før og efter transaktioner og meget mere, og som kan udtrække og omdanne PDF-dokumenter til rige, strukturerede og validerede data med en minimal indsats.
Berigelses-API'en er designet som en asynkron tjeneste:
- Du sender en fakturafil (f.eks. PDF eller XML) via API'en.
- Du modtager et pollingId i svaret.
- Du spørger om status, indtil berigelsen er færdig.
- Du henter et struktureret JSON-resultat med beriget information.
Dette resultat kan omfatte:
- Parset fakturaindhold hentet fra den oprindelige fil
- Validering mod Peppol eller andre forretningsregler
- Normaliserede felter, der egner sig til analyse, automatisering og AI-arbejdsgange
Implementeringsmønster
En typisk integration ser sådan ud:
Indsend en faktura til berigelse
Kald et endpoint, vedhæft fakturafilen og eventuelle relevante metadata, og
Gem det returnerede pollingId.
POST /enrichment/{accountRegNo}/invoice
Poll for completion
Kald med sikre intervaller. Under behandlingen bekræfter API'en, at jobbet stadig kører. Når det er færdigt, returnerer det en status og et link til berigelsesresultatet.
GET /enrichment/{accountRegNo}/{pollingId}
Hent specifikke berigelsestyper
Ring for at få et bestemt berigelsesoutput - f.eks. detaljerede fakturadata eller Peppol-valideringsresultater. Indsæt dette i din regnskabsmotor, analysestak eller automatiseringslogik.
GET /enrichment/{accountRegNo}/{pollingId}/{enrichmentType}
Anvendelsestilfælde
- Små virksomheder
Kan drage fordel af intelligent dokumentbehandling på virksomhedsniveau; rene, strukturerede data uden at investere i komplekse OCR- eller valideringsværktøjer. - Large virksomheder
Kan standardisere faktura- og dokumentdata på tværs af enheder, systemer og geografiske områder og muliggøre bedre datakontrol, analyse og regnskabsautomatisering. - Softwareleverandører og -partnere
kan integrere avancerede berigelsesfunktioner direkte i deres produkter uden at skulle bygge deres egne parsing- og regelmotorer.
I alle tilfælde er adgangen til denne teknologi ligetil: den samme konto- og sikkerhedsmodel som Transaction API og et lille sæt veldefinerede endpoints.
Peppol API-adgang til enhver virksomhed
Qvalias API er bygget til at give dig et forenklet, skalerbart adgangspunkt til Peppol-netværket, uanset din virksomhedstype:
- En lille virksomhed, der har brug for at udveksle kompatible e-fakturaer
- En stor virksomhed, der håndterer store volumener og flows med flere enheder
- En softwareleverandør, der tilbyder fakturerings-, ERP- eller finansløsninger til mange kunder
Det næste skridt er ligetil: Opret forbindelse til sandkassen, send din første testfaktura, og begynd at planlægge, hvordan Peppol, EDI og berigelse kan blive en indbygget del af din drift eller dit produkt - i stedet for et separat, komplekst projekt.
