1. Home
  2. Knowledge Base
  3. EDI
  4. Hur du använder Peppol API: steg-för-steg-guide
  1. Home
  2. Knowledge Base
  3. Guider
  4. Hur du använder Peppol API: steg-för-steg-guide
  1. Home
  2. Knowledge Base
  3. Integration
  4. Hur du använder Peppol API: steg-för-steg-guide
  1. Home
  2. Knowledge Base
  3. Peppol
  4. Hur du använder Peppol API: steg-för-steg-guide

Hur du använder Peppol API: steg-för-steg-guide

Hur du använder Peppol API: steg-för-steg-guide

Peppol-API

Oavsett om du är ett mindre företag, en stor organisation eller en systemleverantör erbjuder Qvalias API ett enda, standardbaserat sätt att integrera med Peppol-nätverket, med valfritt stöd för ytterligare EDI-flöden, intelligent dokumenthantering och databerikning.

Via tjänsten Faktura-API kan du hantera fakturarelaterade Peppol-meddelanden som BIS Billing (faktura), BIS Billing Credit Note (kreditnota), BIS Self-Billing Invoice (självfaktura), BIS Self-Billing Credit Note (självfaktura–kreditnota) och BIS Invoice Response (fakturasvar), samt vid behov komplettera med Message Level Response för tekniska kvittenser kopplade till fakturor och andra Peppol-meddelanden.

Användningsområden:

  • Hjälpa ett mindre företag att snabbt börja skicka eller ta emot Peppol-fakturor
  • Stödja en större organisation med strukturerade meddelandeflöden i hög volym
  • Infrastruktur för faktureringsprogram och ERP-system som behöver multi-tenant-anslutning för många kunder

Den här guiden innehåller hur man:

  • Konfigurerar Qvalias Transaction API som Peppol- och EDI-nav
  • Utbyter sin första Peppol-faktura via API (inkommande och/eller utgående)
  • Utökar integrationen till order, kataloger och andra dokument (även kallat affärsmeddelanden)
  • Aktiverar skalbara multi-tenant-modeller för systemleverantörer med Partner-API
  • Lägga till avancerade AI-drivna datatjänster för berikning och PDF-extraktion

Översikt: API för Peppol och EDI

Qvalias Peppol API tillhandahåller ett enhetligt gränssnitt för elektroniska affärsmeddelanden via Peppol och EDI. Det är byggt för att stödja affärskritiska områden:

  • Fakturor och kreditnotor
  • Ordrar och orderbekräftelser
  • Orderändringar och annulleringar
  • Kataloger och artikeluppdateringar
  • Leveransaviseringar (despatch advice)
  • Meddelanden på “message-level” samt statusuppdateringar

Gemensamma principer:

  • REST-baserade HTTP-endpoints
  • Stöd för både JSON och XML
  • UBL 2.1 som underliggande datamodell
  • Felhantering genom standardiserade HTTP-statuskoder

Det innebär att du kan fokusera på affärsmeddelanden snarare än nätverksprotokoll. Du skapar giltiga UBL-dokument; Qvalia hanterar Peppol- och EDI-lagret i bakgrunden.

Innan du börjar: detta behöver du för att använda Peppol API

För att komma igång med Qvalias Peppol-API behöver du några grundläggande komponenter:

Qvalia-konto
Din organisation onboardas som Qvalia-kund. Du får ett account registration number som identifierar ditt konto i alla transaktionsanrop

API-nyckel
Autentisering sker med API-nyckel, med separata nycklar för test och produktion. Alla anrop görs över HTTPS med modern TLS.

AccountRegNo i URL-sökvägen
Transaktionsanrop inkluderar accountRegNo i path, till exempel:

POST /transaction/{accountRegNo}/invoices/outgoing
POST /transaction/{accountRegNo}/invoices/outgoing

Formatval: JSON eller XML
Du kan välja JSON eller XML via HTTP-headrar (Content-Type och Accept). JSON används som standard om inget anges.

När dessa är på plats kan du börja testa Peppol-flöden i Qvalias sandbox-miljö.

Steg-för-steg: integrera ditt första Peppol-fakturaflöde (skicka och ta emot)

Det här avsnittet beskriver en typisk första integration mellan ditt system och Qvalias Transaction API — inklusive både utgående och inkommande fakturor.

Steg 1: Börja i sandbox

Integrera först mot testmiljön:

  • Bas-URL: https://api-qa.qvalia.com
  • Samma autentiseringsmodell, endpoints och struktur som i produktion

Det gör att du kan bygga och testa utan att påverka verkliga dataflöden.

Steg 2: Använd API-nyckel och accountRegNo

I din konfiguration lagrar du:

  • API-nyckeln (för sandbox)
  • accountRegNo

Alla anrop ska inkludera:

  • Authorization-header med API-nyckeln
    accountRegNo i path, exempelvis:
    Utgående fakturor: /transaction/{accountRegNo}/invoices/outgoing
    Inkommande fakturor: /transaction/{accountRegNo}/invoices/incoming

Steg 3: Välj JSON eller XML (UBL-baserat)

Alla transaktioner använder UBL 2.1.

Du kan:

Headers styr formatet:

JSON (standard)

Content-Type: application/jsonAccept: application/json
Content-Type: application/jsonAccept: application/json

XML

Content-Type: application/xmlAccept: application/xml
Content-Type: application/xmlAccept: application/xml

Steg 4: Mappa din faktura till UBL

Mappa ditt interna fakturaobjekt till relevanta UBL-element:

  • Header (Invoice, IssueDate, InvoiceTypeCode)
  • Parter (AccountingSupplierParty, AccountingCustomerParty)
  • Summor (TaxTotal, LegalMonetaryTotal)
  • Rader (InvoiceLine, Item, Price, TaxCategory)

Målet:

  • Alla obligatoriska fält ska finnas
  • Värden ska följa relevant Peppol-profil (t.ex. BIS Billing)
  • Interna krav (referenser, kostnadsställen m.m.) ska stödjas

För inkommande fakturor använder du samma UBL-modell för tolkning, validering och vidare mapping.

Steg 5.1: Skicka en utgående Peppol-faktura

När din UBL-payload är klar, endpoint-exempel:

POST https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/outgoing
POST https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/outgoing

Inkludera:

  • Authorization-header
  • Korrekt Content-Type
  • UBL-dokumentet i request-body

Qvalia validerar fakturan, skickar den via Peppol-nätverket eller EDI/VAN och returnerar status och identifierare.

Steg 5.2: Ta emot inkommande Peppol-fakturor

För att hämta inkommande fakturor via API:

GET https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/incoming
GET https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/incoming

Du kan även:

  • Paginera eller filtrera resultat
  • Använda read-endpoints för att särskilja nya och tidigare hämtade fakturor

Den mottagna UBL-JSON eller XML-datat mappas sedan in i dina interna processer för bokföring, attest, eller vidare behandling.

Steg 6: Hantera monitorering, svar och fel

Transaction API använder förutsägbara HTTP-statuskoder:

  • 200 OK – Lyckat anrop med data
  • 204 No Content – Lyckat anrop utan innehåll
  • 400 / 422 – Ogiltiga data eller schemafel
  • 401 / 403 – Autentisering eller behörighet saknas
  • 404 – Resursen hittades inte
  • 409 – Konflikt, t.ex. dubbletter
  • 429 – För många anrop; vänta innan nytt försök
  • 500 – Internt fel

Samma beteende gäller för alla dokumenttyper.

Använd transaktionsloggen för operativ uppföljning

Utöver API-svaren kan du när som helst logga in i Qvalia och granska transaktionsloggen, med bl.a.:

  • Skickade och mottagna fakturor
  • Status per transaktion
  • Fel och valideringsmeddelanden
  • Tekniska och affärsmässiga tidsstämplar

Transaktionsloggen är värdefull för:

  • Första linjens support
  • Felsökning vid specifika användarrapporter
  • Verifiering efter ändringar i integrationen

Tillsammans ger HTTP-svar + transaktionslogg en helhetsbild för både systemlogik och operativ insyn.

Utöver fakturor: utöka din Peppol-integration

När fakturor fungerar är det enkelt att lägga till fler dokumenttyper.

Typiska utökningar:
Ordrar – ta emot och skicka ordermeddelanden
Orderbekräftelser och orderändringar
Kataloger – artikel- och prisuppdateringar
Despatch advice – leveransinformation
Message-level responses – tekniska och affärsmässiga kvittenser

Eftersom allt detta använder samma API-design, autentiseringsmodell och UBL 2.1-datamodell behöver du inga separata projekt eller gateways för varje dokumenttyp. Du aktiverar nya användningsfall i takt med att din verksamhet eller dina kunders behov utvecklas.

Partner-API för faktureringssystem och ERP-lösningar

Programvaruleverantörer — t.ex. fakturaplattformar, ERP, ekonomisystem eller integrationsmotorer — behöver en annan modell. Qvalias Partner API kan hantera flerkundslösningar för att möjliggöra meddeladeutbyte för slutanvändare, inklusive Peppol-ID registreringar.

Partner API behövs ifall du:

  • Hanterar många slutkunder från en plattform
  • Har tydlig separering av varje kunds data
  • Vill undvika drift av egen Peppol-accesspunkt eller EDI-gateway

Qvalias partnermodell är utformad för just detta.

Så fungerar partner-upplägget

  • Din organisation onboardas som partner och får ett partnerRegNo.
  • Varje slutkund får ett eget Qvalia-konto med eget accountRegNo.
  • API-anrop görs med både partner-ID och kundens accountRegNo.

Exempel: Partner-implementation

Onboarding

  • Ni får partnerRegNo och API-nyckel.
  • Ni bygger en enda integration med prefixet:
    /partner/{partnerRegNo}

Kund-onboarding i er produkt

När en kund aktiverar Peppol/e-faktura i ert gränssnitt skapas eller länkas ett Qvalia-konto.
accountRegNo lagras tillsammans med ert interna kund-ID.

Skicka och ta emot transaktioner per kund

För att skicka eller ta emot meddelanden på uppdrag av en kund används:

/partner/{partnerRegNo}/transaction/{accountRegNo}/{message-type}/{direction}
/partner/{partnerRegNo}/transaction/{accountRegNo}/{message-type}/{direction}

Exempel:

  • Skicka faktura:
    /partner/{partnerRegNo}/transaction/{accountRegNo}/invoices/outgoing (POST)
  • Hämta inkommande fakturor:
    /partner/{partnerRegNo}/transaction/{accountRegNo}/invoices/incoming (GET)
    read-varianter kan användas vid behov.

Qvalia routar och tar emot meddelanden som om kunden själv skickade dem — med full spårbarhet per konto.

Fördelar för programvaruleverantörer

  • En integration — obegränsat antal kundkonton
  • Ingen drift av egen Peppol- eller EDI-infrastruktur
  • Enkel skalning till nya marknader och regleringskrav

Ytterligare funktionalitet: AI-agentisk databerikning

Utöver transportlager och Peppol-anslutning erbjuder Qvalia även Enrichment API — en tjänst för databerikning, klassificering och PDF-extraktion.

Enrichment API är asynkront:

  • Du skickar in en fakturafil (PDF eller XML)
  • Du får ett pollingId
  • Du pollar tills berikningen är klar
  • Du hämtar ett strukturerat JSON-resultat

Resultatet kan innehålla:

  • Extraherad fakturadata
  • Valideringsfel och varningar
  • Normaliserade fält för analys, automation och AI-flöden

Implementationsmönster

Skicka faktura för berikning

POST /enrichment/{accountRegNo}/invoice
POST /enrichment/{accountRegNo}/invoice

Polla status

GET /enrichment/{accountRegNo}/{pollingId}
GET /enrichment/{accountRegNo}/{pollingId}

Hämta specifik enrichment-typ

GET /enrichment/{accountRegNo}/{pollingId}/{enrichmentType}
GET /enrichment/{accountRegNo}/{pollingId}/{enrichmentType}

Användningsområden

  • Mindre företag
    Tillgång till avancerad dokumenthantering utan egen OCR-motor.
  • Större organisationer
    Standardisering av fakturadata över enheter, system och länder.
  • Programvaruleverantörer
    Inbäddad databerikning utan egna regelmotorer eller parserlogik.

Peppol-API för alla verksamheter

Qvalias API ger enkel och skalbar accesspunkt till Peppol-nätverket — oavsett företagstyp:

  • Mindre företag som behöver skicka eller ta emot e-fakturor
  • Stora organisationer med komplexa och volymtunga flöden
  • Programvaruleverantörer som erbjuder fakturering, ERP eller ekonomisystem

Nästa steg är enkelt: anslut mot sandbox, skicka din första testfaktura och planera hur Peppol, EDI och databerikning kan bli en naturlig del av dina processer — inte ett separat projekt.

Fick du hjälp av den här artikeln?

Relaterade artiklar