E-fakturaradar

Et åpent verktøy som svarer på ett spørsmål: hvilke norske virksomheter kan faktisk motta EHF-faktura? Bygget mot Peppol-infrastrukturen i forkant av e-fakturaplikten i bokføringsloven. Underveis dukket det opp to funn som endret hva jeg trodde om regelen.

Åpen kildekode · gratis Python Peppol SML/SMP Enhetsregisteret Målt 2026-07-27

Regelen

Stortinget vedtok 1. juni 2026 en ny plikt i bokføringsloven. Loven ble sanksjonert 19. juni som lov nr. 39.

Dokumentasjon for salg av varer og tjenester til andre bokføringspliktige skal utstedes i elektronisk fakturaformat. Dokumentasjon for kjøp av varer og tjenester fra andre bokføringspliktige skal tilsvarende mottas i elektronisk fakturaformat. Bokføringsloven § 10 annet ledd

Sendeplikten er varslet fra 1. januar 2027, mottaksplikten fra 2030. To ting er verdt å merke seg. For det første overlater lovteksten selv ikrafttredelsen til Kongen, så datoene ligger i en resolusjon, ikke i loven. For det andre nevner lovteksten verken Peppol eller ELMA – avgrensningen om at plikten bare gjelder overfor mottakere som står i Elektronisk mottakerregister står i forarbeidene, ikke i paragrafen.

Det siste er ikke en teknisk detalj. Det er grunnen til at det i det hele tatt er interessant å vite hvem som står hvor.

Hva verktøyet gjør

Peppol har ingen sentral oppslagstjeneste. Svaret ligger i DNS, og det er gratis, uten API-nøkkel og uten avtale med noen. Kjeden er fem steg:

  1. Valider organisasjonsnummeret med mod11 – et ugyldig nummer skal ikke koste et DNS-oppslag.
  2. Bygg deltakeridentifikatoren iso6523-actorid-upis::0192:NNNNNNNNN.
  3. Hash verdidelen med SHA-256, Base32-kod den, og slå opp U-NAPTR-posten i Peppols DNS-sone.
  4. Svaret peker på virksomhetens SMP. Hent listen over dokumenttyper derfra.
  5. Finnes EHF-fakturatypen i listen, kan de motta faktura.
$ efaktura-radar sjekk 986252932 --vis-utgatt
Organisasjonsnummer : 986252932
Deltaker-ID         : iso6523-actorid-upis::0192:986252932
NAPTR-vertsnavn     : JGPA45E5TP5QNMA3C3XUXV6V4ZE4LHDYW6AL2HZYU3NRLUFX3D3A
                      .iso6523-actorid-upis.participant.sml.prod.tech.peppol.org
Utgått (CNAME)      : B-af698985e2b17102e6a02222b52f9ba9
                      .iso6523-actorid-upis.edelivery.tech.ec.europa.eu
                      (slutter å svare 2026-08-31)
Status              : kan_motta
SMP                 : https://smp.elma-smp.no/
På ELMA             : ja

Verktøyet tar også en hel kundeliste som CSV, og kan kjøre som en cron-jobb som logger endringer over tid.

Funn 1: de fleste er allerede registrert

82 %
av tilfeldig utvalgte Oslo-selskaper med 5–50 ansatte var allerede registrert i Peppol.
Kan motta EHF – 31 av 38 Kan ikke – 7 av 38
Metode: 38 aksjeselskaper i Oslo med 5–50 ansatte, hentet fra Enhetsregisteret og slått opp live mot Peppol SML 27. juli 2026. Lite utvalg – det er en stikkprøve, ikke statistikk.

Dette endret hvordan jeg leste regelen. Finansdepartementets egen konsekvensutredning oppgir at 32 % av virksomhetene som leverte skattemelding i 2023 var registrert i ELMA – men det tallet dekker alle virksomheter, inkludert de 68 % som ikke har en eneste ansatt. Blant aksjeselskaper med ansatte er dekningen langt høyere, og den samme utredningen fant «over 80 %» for AS med mer enn 5 mill. i omsetning allerede i 2023-tall.

Med andre ord: dette er ikke en bølge som er på vei. Det er et platå som har ligget der i årevis. Spørsmålet «hvem av kundene mine kan ta imot EHF?» har stort sett svaret ja.

Funn 2: ELMA er ikke hele Peppol

Ett av de 31 registrerte selskapene lå ikke på ELMA, men på en kommersiell SMP. Det er ikke en kuriositet, og Digdir sier det rett ut i sin egen dokumentasjon:

Previously, ELMA was the only PEPPOL SMP where norwegian organizations were registered. This is no longer the case. […] These datasets must not be used to check if a given norwegian organization is registered in PEPPOL or what documents an organization can receive. docs.digdir.no – ELMA open data

Men forarbeidene til bokføringsloven navngir ELMA spesifikt som avgrensningen for sendeplikten. En virksomhet som er fullt nåbar via en annen SMP faller dermed utenfor ordlyden i forarbeidene, samtidig som den i praksis kan motta faktura helt fint.

Uavklart. Lovteksten nevner ingen av delene, forskriften er ikke skrevet, og Digdir la ned sitt eget ELMA-søk i februar 2025. Verktøyet skiller derfor mellom «registrert i Peppol» og «registrert på ELMA» i alle utdata – det er den distinksjonen ingen andre svarer på i dag.

Hvorfor dette ikke ble et produkt

Jeg begynte å bygge dette som en mulig abonnementstjeneste for regnskapsbyråer. Det ble det ikke, og grunnene er verdt å skrive ned.

Selve oppslaget er gratis, og alle gir det bort

OpenPeppol, DFØ, Fiken og flere til tilbyr enkeltoppslag kostnadsfritt. I Belgia, der en tilsvarende plikt trådte i kraft i januar 2026, kom bulk-skanneren gratis innen få måneder – som markedsføring inn i en fakturaplattform.

Verdien ligger hos den som frakter fakturaen

Pagero ble kjøpt for 6,4 mrd. SEK, ecosio for opptil 180 mill. dollar. Begge frakter dokumenter. Det finnes ikke ett eneste oppkjøp av et produkt som bare slår opp i registeret.

Og mottaksplikten kommer først i 2030

En virksomhet som lar være å registrere seg kan lovlig fortsette å motta PDF ut 2029. Uten den tvangen finnes ikke hastverket som skulle drevet et salg.

Så verktøyet ligger her gratis i stedet. Regelen kommer uansett, og da er det like greit at oppslaget finnes.

Teknisk

Python, ingen avhengigheter utover DNS- og HTTP-klient. Begge hash-algoritmene er verifisert mot OpenPeppols egen testvektor, og det ligger 102 tester i repoet.

Den delen jeg er mest fornøyd med er en sikkerhetsventil. Peppol byttet DNS-sone i 2026, og hvis den migrasjonen svikter vil hvert eneste oppslag returnere «ikke funnet». Et naivt overvåkingssystem ville da meldt at samtlige kunder hadde mistet fakturatilgangen. Derfor forkastes hele kjøringen hvis en uforholdsmessig andel faller samtidig – ingenting skrives, og det går ut ett varsel om at systemet selv er i stykker. Å miste en dags observasjoner er billig; å sende to hundre falske alarmer er ikke.

← Tilbake til prosjekter