Dokumenter
Fakturaer og kreditnotaer
Plus Selvfakturering og svar på fakturaer
Formater
JSON eller UBL XML
Baseret på UBL 2.1, ét dokument pr. anmodning
Begivenheder
Signerede webhooks
Modtaget, leveret, forsinket og mislykket
Tilgængelighed
99,8 % pr. måned
Kontraktmæssigt, med servicekreditter
Send en faktura sammen med en anmodning
Send fakturaen som JSON eller UBL XML til den udgående endpoint på din konto. Qvalia validerer den, slår modtageren op i Peppol og leverer den. Kreditnotaer, selvfaktureringsdokumenter og fakturasvar følger samme fremgangsmåde.
- Sandkasse på api-test.qvalia.com, produktionsmiljø på api.qvalia.com
- API-nøgle i Authorization-headeren eller et kortvarigt token (JWT)
- En »Idempotency-Key«-header gør gentagne forsøg sikre
● ● ●
Sandbox-anmodning: Send en faktura
curl -X POST \
"https://api-test.qvalia.com/transaction/$ACCOUNT_REG_NO/invoices/outgoing" \
-H "Authorization: $QVALIA_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d @invoice.json
Sådan behandles en faktura via API’et
Dit system fungerer via én API. Qvalia driver Peppol-adgangspunktet bagved.
1. Indsend
Indsend ét dokument pr. anmodning. Hvis dataene er ugyldige, eller modtageren ikke er registreret på Peppol, returnerer API’en en 422-fejlkode med en stabil fejlkode, inden der sendes noget.
2. Validering og levering
Qvalia kontrollerer dokumentet i forhold til de gældende Peppol-regler, finder modtagerens adgangspunkt og leverer dokumentet via AS4.
3. Følg status
Webhooks rapporterer om levering, igangværende genforsøg og fejl. Status-endpointet returnerer det seneste status for hvert dokument uden dokumentets indhold.
4. Modtag
Indgående fakturaer og svar venter på de indgående endpoints. Læse-endpointet returnerer ulæste dokumenter og markerer dem som læst, så det næste opkald kun returnerer nye dokumenter.
Fakturadokumenter og slutpunkter
Enhver vej begynder med /transaction/{accountRegNo}, dit kontos registreringsnummer. Hver dokumenttype har udgående og indgående endpoints, et læse-endpoint til ulæste dokumenter og et status-endpoint.
| Dokument | Endepunkt | Peppol-specifikationen |
| Faktura | /invoices | Peppol BIS Billing 3.0 |
| Kreditnota | /creditnotes | Peppol BIS Billing 3.0 |
| Faktura med selvfakturering | /selfbillinginvoices | Peppol BIS-selvfakturering |
| Kreditnota med selvfakturering | /selfbillingcreditnotes | Peppol BIS-selvfakturering |
| Svar på faktura | /invoiceresponses | Peppol BIS Invoice Response |
| Svar på meddelelsesniveau | /messagelevelresponses | Peppol BIS Message Level Response |
Hvilke dokumenttyper din konto bruger, afhænger af tjenesten og abonnementet. Skemaer for anmodninger og svar findes i referencerne til Faktura-API’en og Kreditnota-API’en. Se »Peppol-API’er og udviklerværktøjer« for alle Qvalia’s API’er.
Tjek modtageren, før du sender
Søg efter en » Peppol ID «, inden du sender fakturaen. Svaret viser, om deltageren er registreret på Peppol, og hvilke dokumenttyper vedkommende kan modtage, så dit system kan markere et manglende eller forkert ID, inden netværket afviser fakturaen.
- Begræns søgningen til én dokumenttype ved hjælp af
docTypeRoot, for eksempelInvoiceellerCreditNote - » Peppol ID « er ordningen og identifikatoren, for eksempel
0007:1234567890 - Samme basis-URL’er og godkendelse som i Transaction API’et
● ● ●
Sandbox-anmodning: Søg efter en modtager
curl \
"https://api-test.qvalia.com/account/$ACCOUNT_REG_NO/action/lookup/peppol/0007:1234567890?docTypeRoot=Invoice" \
-H "Authorization: $QVALIA_API_KEY"
Udviklet til produktionsintegrationer
De detaljer, der afgør, om en integration fungerer ved stor skala, er alle beskrevet i API-referencen.
- Sikre gentagelser
Send en idempotensnøgle, og en gentagen anmodning returnerer det oprindelige svar i stedet for at oprette en ny faktura. - Signerede webhooks
Hver begivenhed har et begivenheds-ID, og når du har angivet en signeringsnøgle, får den en signatur, som du kan verificere. - Gengivelse af begivenheder i 30 dage
Hent enhver leveret begivenhed igen ved hjælp af dens ID, for eksempel efter nedetid på din side. - Status uden indhold
Afstem i stor skala med lette statusposter, filtreret efter dato, dokument-ID eller opdateringstidspunkt. - Grænser for antal forespørgsler
Begrænsningerne tælles pr. konto, og et 429-svar angiver, hvor længe du skal vente. - Vedhæftede filer
Tilføj PDF-filer og billeder i meddelelsen. Hele anmodningen, inklusive vedhæftede filer og Base64-kodet, skal holde sig under Peppols grænse på 100 MB.
Én faktura – i det format, hver modtager har brug for
Send fakturaen én gang. Qvalia validerer den, finder modtageren og leverer den via Peppol-netværket som Peppol- BIS Billing . 3.0 eller Peppol PINT. Hvis modtageren ikke er tilknyttet Peppol, kan Qvalia levere via EDI, PDF via e-mail, print og B2C-netbanker på udvalgte markeder. Dette er supplerende leveringskanaler, ikke Peppol-specifikationer. Se, hvilke forretningsmeddelelsesformater Qvalia understøtter.
Hvis dit system ikke kan generere Peppol BIS, skal du uploade fakturaen i det format, den allerede oprettes i: Svefaktura 1.0, EDIFACT INVOIC, cXML, Finvoice 3.0, XRechnung, CII eller XML-filerne i ZUGFeRD og Factur-X. Qvalia konverterer den til Peppol- BIS Billing 3.0, validerer den og sender den. Se afsnittet om afsendelse af fakturaer i dit eksisterende format.
Vælg dit udgangspunkt
Softwareplatforme
Integreret Peppol
Tilbyd e-fakturering til dine egne kunder. Partner-API’en opretter deres konti og Peppol-id’er, og fakturerings-API’en håndterer deres dokumenter.
ERP- og økonomiteams
Peppol Access Point
Forbind dit ERP- eller økonomisystem til Peppol via API, SFTP eller en færdigudviklet connector.
Udviklere
Hurtigstartguide
Gå trin for trin fra API-nøgle til din første sandkassefaktura med eksempler på anmodninger.
Ofte stillede spørgsmål om fakturerings-API’en
Hvad er et API til e-fakturering?
Med et API til e-fakturering kan din software sende og modtage strukturerede elektroniske fakturaer uden selv at skulle oprette netværksforbindelsen. Med Qvalia’s fakturerings-API sender dit system fakturaer i JSON- eller UBL XML-format, hvorefter Qvalia validerer dem og leverer dem via Peppol-netværket.
Hvilke fakturadokumenter kan jeg sende og modtage?
Fakturaer, kreditnotaer, selvfakturerede fakturaer og kreditnotaer samt fakturasvar, hver med udgående og indgående endpoints. Hvilke dokumenttyper din konto bruger, afhænger af tjenesten og abonnementet.
Skal jeg kende til Peppol BIS for at kunne bruge API’et?
Dine dokumenter overholder Peppol- BIS Billing en 3.0 i UBL 2.1-baseret JSON eller XML. Eksempeldataene på api.qvalia.io viser en komplet faktura, og valideringsfejlene angiver, hvilken regel der skal rettes. Se afsnittet »Sådan fungerer Peppol-validering«.
Er der en sandkasse?
Ja. Sandkassen på api-test.qvalia.com bruger sin egen API-nøgle, så du kan teste mod dine egne systemer uden at påvirke rigtige kunder. Adgang til API’et og sandkassen er inkluderet i Connect- Medium -abonnementet.
Hvordan undgår jeg at sende den samme faktura to gange?
Send en »Idempotency-Key«-header ved hver indsendelse. Hvis du gentager anmodningen, f.eks. efter en timeout, returnerer API’et det oprindelige svar i stedet for at oprette et nyt dokument. En ny indsendelse med samme dokument-ID og modtager returnerer fejlkoden 409 Conflict, medmindre du vælger at overskrive.
Hvordan ved jeg, om en faktura er blevet leveret?
Abonner på webhooks for leverings- og fejlhændelser, eller aflæs status-endpointet. En webhook, som dit endpoint ikke accepterer, sendes ikke igen, så sørg for at foretage en regelmæssig statuskontrol som en sikkerhedsforanstaltning. Enhver leveret hændelse kan hentes igen i 30 dage.
Hvordan modtager jeg indgående fakturaer?
Abonner på webhooken for nye dokumenter, og hent derefter fakturaen fra endpointet for indgående dokumenter. Læse-endpointet returnerer ulæste fakturaer og markerer dem som læst.
Hvad koster fakturerings-API’en?
API-adgang er inkluderet i Connect- Medium -abonnementet. Priserne for partnere og virksomheder afhænger af volumen og leveringsmodel. Se »Abonnementer og priser«.