Realtid EU-moms for udviklerne, der bygger i Danmark
En jordnær sammenligning af regnskabs- og skatteplatforme, der håndterer dansk moms og EU-moms via API'er, SDK'er og webhooks, med klare noter om, hvad de enkelte løsninger faktisk dækker.
Danmark er det EU-land, hvor lovgiveren rettede blikket mod regnskabssystemet frem for selve fakturaen. Bogføringsloven kræver, at regnskaber opbevares i et digitalt system, der opfylder fastsatte krav, med mulighed for SAF-T-eksport, hvilket indfases for virksomheder fra 2024 til 2026. Samtidig er selve momsen den mest enkle i EU: én sats på 25 % uden nogen form for reducerede satser. En dansk integration handler derfor næsten udelukkende om bogføring.
Denne artikel sammenligner de udviklerrettede platforme, der håndterer EU-moms og dansk moms i realtid, adskiller beregning fra bogføring og indberetning, og forklarer, hvor de enkelte muligheder rent faktisk passer ind.
Hvad "realtids-EU-momshåndtering" skal inkludere
Udtrykket bliver strukket til at dække meget forskellige produkter. For at have nogen reel betydning skal en platform levere det meste af følgende, mens en transaktion, faktura, afregning eller postering oprettes:
- Udlede momshåndteringen ud fra transaktionsdataene.
- Anvende de gældende lande- og produktregler.
- Dække Danmark og det øvrige EU, herunder B2B-omvendt betalingspligt (reverse charge) og B2C-destinationsbeskatning.
- Eksponere alt dette via et API, SDK eller webhook.
- Gemme data til moms-, OSS-, revisions- og regnskabsrapportering.
Tre forskellige funktioner gemmer sig bag ordene "realtid":
- Realtidsberegning - momsen beregnes, i takt med at transaktionen eller fakturaen oprettes.
- Realtidsbogføring - transaktionen, posteringen og momsdataene lander med det samme i regnskabet.
- Realtidsrapportering - dataene overføres til en skattemyndighed kort efter transaktionen.
De fleste produkter klarer den første del. Meget få klarer alle tre. Danmark vender op og ned på det sædvanlige spørgsmål. Der findes ingen cleared-platform (clearance platform), men selve bogføringssystemet er reguleret, så den anden funktion - om tallene lander i rigtige, eksportable regnskaber - er den, der har en lov i ryggen.
De danske og europæiske regler, der former sammenlignet
Danmark anvender en enkelt momsats på 25 % uden reducerede satser, mens eksport og visse leverancer er momsfrie (zero-rated). Det lovmæssige grundlag er momsloven. Registrering er obligatorisk ved en omsætning over 50.000 DKK over 12 måneder. Danmark beholder kronen, så en platform, der kun understøtter euro, har brug for valutahåndtering, der fungerer i regnskabet og ikke kun ved kassen.
For kvalificerende EU-interne B2C-fjernsalg og grænseoverskridende digitale tjenester er EU-tærsklen 10.000 EUR, som det fremgår af EU-Kommissionens One Stop Shop-portal. Over denne tærskel følger momsen generelt kundens medlemsland. One Stop Shop gør det muligt for en virksomhed at lade sig registrere i ét medlemsland og angive grænseoverskridende B2C-moms for hele EU, men det fjerner ikke behovet for transaktionsspecifik logik.
Der gælder også en markedspladsregel, som er strengere, end de fleste teams forventer. I henhold til artikel 14a anses en elektronisk grænseflade for at være den fakturerede leverandør (deemed supplier) ved fjernsalg af importerede varer i forsendelser, der ikke overstiger 150 EUR, og separat for varer leveret til EU-kunder uanset værdi, når den underliggende sælger ikke er etableret i EU. Kommissionens vejledende bemærkninger (Explanatory Notes) til e-handelsreglerne for moms fastsætter begge dele. Hvis du bygger en markedsplads, ændrer dette arkitekturen frem for blot at tilføje et felt.
Overblik over kandidaterne
| Platform | Bedst egnet til | Realtidsmomsfunktion | Omfang af regnskab, OSS og angivelse | Vigtigste forbehold |
|---|---|---|---|---|
| Stripe Tax | Produkter og markedspladser, der allerede bruger Stripe | Beregner moms, når transaktionen oprettes, herunder i Danmark | EU-eksport og OSS-data; intet dansk regnskab, og den indberetter ikke selv EU-momsangivelser | Kun relevant, når Stripe allerede er betalingsløsning |
| Paddle | SaaS og downloadbare digitale produkter | Beregner moms ved kassen baseret på kundens placering | Registrerer, indberetter og afregner som forhandler (Merchant of Record) | Overtager rollen som sælger af record og dermed også fakturaen |
| Quaderno | Mindre SaaS og digital handel | Beregner ved kassen, validerer momsnumre | Skatterapporter og regnskaber; automatisk indberetning er ikke dokumenteret for alle abonnementer | Et skatte- og faktureringslag, ikke et regnskabssystem |
| Avalara AvaTax | Enterprise-ERP- og faktureringsopsætninger | Realtidsbestemmelse med vedligeholdt skatteindhold | Momsrapportering (VAT Reporting) er et separat produkt i Returns-serien | Omfangs- og prismæssigt rettet mod enterprise-implementeringer |
| Fonoa Tax Engine | Store platforme og markedspladser | Realtidsbestemmelse på tværs af 190+ jurisdiktioner | Angivelser, e-fakturering og rapportering; validering af momsnumre er et separat produkt | Ingen offentliggjorte priser |
| Nordlet | Integreret regnskab i markedspladser og platforme | Udleder ordning og satser pr. transaktion, bogføres sammen med posteringen | Uforanderligt dobbelt bogholderi, udbetalinger, OSS- og IOSS-tal, eksportérbart revisionsspor | Ingen dansk angivelsespakke og ingen SAF-T DK-eksport; selve regnskabet er uforanderligt og eksportérbart |
Stripe Tax: den hurtige vej, når Stripe allerede er til stede
For teams, der allerede kører med Stripe Payments, Billing eller Connect, er Stripe Tax det mest tilgængelige realtidsberegningslag. Dokumentationen dækker beregning af moms på verdensplan, Tax API med PaymentIntents, opkrævning af moms på fakturaer samt brug af Tax med Connect som platform eller markedsplads.
Hvor Stripe stopper, oplyser Stripe selv helt klart om. Deres indberetningsdokumentation angiver: "Du skal selv indberette og afregne den moms, du opkræver for ethvert sted, hvor du er registreret." Automatisk indberetning tilbydes i USA; alle andre steder samarbejder Stripe med indberetningspartnere, så en EU-momsangivelse indberettes af dig eller en partner, ikke af Stripe Tax. Det er et beregnings- og eksportlag, ikke et regnskabssystem.
Med én sats og ingen reducerede satser er beregningen næsten ligetil i Danmark. Det gør et produkt, der udelukkende beregner moms, til et tyndt køb her.
Paddle: overlad hele skatteansvaret til en anden
Paddle er en anden type produkt. Det fungerer som Merchant of Record og overtager ansvaret for at "beregne, indberette og afregne" moms der, hvor dine kunder er, så det beregner moms ved kassen, udsteder fakturaen samt indberetter og afregner for dig. Deres udviklerdokumentation dækker Paddle.js, katalog-API'er, betalingsflow samt webhooks som f.eks. transaction.completed, som udløses, når en transaktion når status completed, hvilket er det sædvanlige hook til at give adgang efter betaling.
Kompromiset er arkitektonisk snarere end teknisk. Paddle bliver den formelle sælger (seller of record), så du beholder ikke længere den merchant-, faktura- og regnskabsmodel, du ville have med dit eget betalingsflow.
For digitale produkter solgt til danske forbrugere dækker dette momsen fra ende til anden. Det adresserer ikke de forpligtelser i henhold til bogføringsloven, der påhviler din egen danske enhed.
Quaderno: et skattelag for mindre digitale virksomheder
Quaderno er en af de mere overskuelige udviklerfokuserede muligheder for mindre digitale virksomheder, der ønsker en skatteljeneste uafhængig af en enkelt betalingsformidler. Deres API dokumenterer et /tax_rates/calculate-slutpunkt (endpoint), der beregner den gældende sats ud fra kundens adresse og transaktionstype, et /tax_ids/validate-slutpunkt, der dækker EU-momsnumre, samt slutpunkter for fakturaer, kvitteringer og kreditnotaer. En dokumenteret Connect-sektion med kontoressourcer er den del, en markedsplads ville bygge på.
Begrænsningen ligger i omfanget. Quaderno er et skatte- og faktureringslag og ikke et regnskabssystem med et uforanderligt dobbelt bogholderi, og deres offentlige materiale dokumenterer ikke automatisk indberetning på alle abonnementer i alle lande. Betragt ansvaret for indberetning som noget, der skal bekræftes på skrift.
I et land med én enkelt momssats tilføjer skatteberegningsdelen i Quaderno kun lidt. Det er deres fakturerings- og registreringsfunktioner, der er værd at vurdere.
Avalara og Fonoa: skattemotorer til enterprise-brug
Avalaras AvaTax udfører skatteberegning i realtid under betaling, fakturaudstedelse eller ordrebehandling via REST API'er og SDK'er. Læg mærke til opdelingen af produkter: VAT Reporting ligger separat under Returns, så et EU-momscompliance-workflow er ikke bare "AvaTax" - afgræns de moduler, du faktisk har brug for. Avalara dokumenterer en tilmeldingsvej med en 90-dages gratis prøveperiode, mens den kommercielle model i produktion er rettet mod enterprise-segmentet.
Fonoas Tax Engine angiver, at den "beregner den korrekte inddirekte skattebehandling for hver transaktion i realtid" via et versionsstyret API på tværs af mere end 190 jurisdiktioner. Én arkitektonisk detalje er vigtig: validering af momsnumre er et separat Fonoa-produkt (Validate) og ikke en del af Tax Engine, så hvis VIES-dokumentation er vigtig for dig, skal du afgrænse det eksplicit i stedet for at antage, at motoren dækker det.
Ingen af delene er et naturligt match til et rent dansk setup. Danmark er det land, hvor regnskabssystemet og ikke skattemotoren er den regulerede komponent.
Hvor Nordlet passer ind: momssvaret og regnskabsposteringen er den samme registrering
Nordlet er et regnskabs-API til markedspladser og platforme, der har brug for hovedbøger, udbetalinger, EU-moms og et eksportérbart revisionsspor inde i deres eget produkt i stedet for en faktureringsapp knyttet til et betalingsflow.
Den arkitektoniske forskel er, at fastsættelse af moms og regnskabsposteringen hører til i det samme system. POST /v1/reference/vat/resolve besvarer spørgsmålet om momshåndtering ud fra transaktionens kendsgerninger:
{
"customerCountryCode": "DK",
"customerIsBusiness": false,
"supplyType": "digital"
}
{
"scheme": "oss_union",
"vatCountryCode": "DK",
"reverseCharge": false,
"deemedSupplier": false,
"zeroRated": false,
"rates": [
{ "category": "standard", "ratePercent": "25.00" }
],
"legalBasis": "Directive 2006/112/EC art. 58 - taxable where the consumer resides; report via the Union OSS"
}
Ændrer man kunden til en virksomhed med et gyldigt dansk momsnummer, returnerer det samme kald reverse_charge med Directive 2006/112/EC art. 44, 196 - VAT due by the customer (reverse charge). Sættes actingAsMarketplace med en sælger etableret uden for EU, returneres deemedSupplier: true i henhold til art. 14a(2). Det juridiske grundlag følger med svaret, hvilket er den del, en revisor spørger ind til år senere.
Ni ordninger er modelleret: domestic, intra_eu_b2b, reverse_charge, oss_union, ioss, marketplace_deemed, export, out_of_scope og sme_exempt. Tærsklen for fjernsalg på 10.000 EUR spores i stedet for blot at blive antaget - /v1/declarations/eu/distance-sales-threshold/get viser, hvor en virksomhed står i forhold hertil, og /v1/declarations/eu/oss/compute samt /v1/declarations/eu/ioss/compute genererer periodetal, herunder en korrektionssektion for tidligere perioder. Satser hentes fra EU-Kommissionens TEDB-feed med ikrafttrædelsesdatoer, og en virksomhed kan tilsidesætte dem pr. land.
Beregningen bogføres derefter i et uforanderligt dobbelt bogholderi, hvor momsmetafuldstændigheden er knyttet til posteringen, så der ikke er behov for en ekstra afstemning mellem en skattemotor og et separat bogføringssystem. Pengebeløb er decimalstrenge og aldrig flydekommatal (floats). Omkring dette: typede SDK'er, webhooks såsom sale_invoice.paid, understøttelse af Idempotency-Key til sikre genforsøg, sandkassevirksomheder, VIES-validering fastfrosset mod fakturaen, understøttelse af flere virksomheder samt periodeaflåsning (period locking), så en lukket måned ikke kan redigeres ubemærket.
Den danske grænseflade er usædvanlig, så det er værd at være præcis. Nordlet leverer ingen dansk angivelsespakke: /v1/declarations/eu/vat-return/compute med countryCode: "DK" returnerer en 422, der nævner Litauen, Tyskland og Polen, så momsangivelsen genereres ikke, og der er ingen SAF-T DK-eksport samt ingen registrering som dansk digital bogføringsudbyder. Det, Nordlet leverer, er netop det, den danske lovgivning sigter mod: et uforanderligt dobbelt bogholderi med periodeaflåsning, momsmetafuldstændighed knyttet til hver postering, en fuld revisionshistorik og et eksportérbart revisionsspor - samt momsfastsættelse med det juridiske grundlag, OSS- og IOSS-beregning, VIES-validering fastfrosset mod fakturaen og Peppol BIS 3.0-forsendelse, som er det transportlag, det danske offentlige indkøb allerede benytter.
Den ærlige opsummering: hvis du har brug for realtidsberegning i så mange lande som muligt, og at en anden står for indberetningen, er enterprise-skattemotorerne og Merchant of Record-tjenesterne længere fremme. Hvis dit centrale krav er rigtige regnskaber - et markedspladsbevidst dobbelt bogholderi, hvor afregninger og moms er samlet ét sted - er det det hul, Nordlet er bygget til at lukke, og ingen af beregningslagene udfylder det. API-referencen viser hele overfladen, før du forpligter dig.
Hvad Danmark kræver, at du indberetter
Danmark har en let angivelse og et tungt bogføringsregime.
- Momsangivelse - momsangivelsen indberettes månedligt, kvartalsvis eller halvårligt baseret på omsætning. Månedlige indberettere med en omsætning over 50 mio. DKK betaler inden den 25.; kvartals- og halvårlige indberettere betaler den første dag i den tredje måned efter periodens udløb.
- Digital bogføring - bogføringsloven kræver, at regnskaber føres i et digitalt regnskabssystem, der opfylder fastsatte krav, med en tilgængelig SAF-T-eksport. Loven indfases for virksomheder fra 2024 til 2026.
- E-fakturering - obligatorisk for offentlige fakturaer via NemHandel og Peppol, hvor OIOUBL viger pladsen for Peppol BIS. B2B forbliver frivilligt.
Hvis du vælger et system til en dansk enhed, er bogføringsloven det krav, der begrænser dit valg, og det er et krav til selve systemet, ikke til en indberetning.
Det fulde overblik for landet - selskabsskat, lønadministration, indberetningskalender og de myndigheder, der står bag de enkelte formularer - findes på den danske skatteside.
Udvælgelseskriterier, der er værd at køre igennem, før du beslutter dig
Før du betragter et "moms-klar" produkt som værende det samme som et andet, bør du tjekke det op mod følgende punkter:
- Beregning eller bogføring - fastlægger det momshåndteringen, eller gemmer det blot en kode, du sender med?
- Dansk dækning - 25 % uden reducerede satser, momsfritagelse, omvendt betalingspligt (reverse charge) og kronebeløb i hovedbogen?
- EU-destinationslogik - kan det kende forskel på dansk moms og moms i et andet medlemsland ved et B2C-salg?
- Validering af B2B-momsnumre - tjekker det VIES og gemmer det dokumentationen?
- OSS og IOSS - samler, forbereder og indsender det, eller eksporterer det blot data?
- Markedspladsansvar - kan det modellere rollerne for sælger, platform og momspligtig mellemmand (deemed supplier)?
- Regnskabsmæssig integritet - skaber hver beregning en matchende regnskabspostering?
- Udviklerergonomi - REST API, SDK'er, webhooks, sandkasse, idempotens, versionsstyring?
- Revisionsspor - sats, regel, lokationsdokumentation, momsnummer, tidsstempel, revisionshistorik?
- Overensstemmelse med bogføringsloven - opbevarer systemet digitale regnskaber i overensstemmelse med bogføringslovens standard med en struktureret eksport til rådighed?
- Indberetningsansvar - præcist hvilken del påtager leverandøren sig ansvaret for?
FAQ
Hvilken platform tilbyder komplet realtids-EU-momshåndtering i Danmark?
Ingen af dem bør beskrives som dækkende alle tre realtidsfunktioner for enhver forretningsmodel. Danmark gør spørgsmålet enklere: med en enkelt sats er det regnskaberne og eksporten, der er differentiatorerne, ikke selve beregningen.
Er Stripe Tax nok til en dansk markedsplads?
Hvad angår beregning, behøver Danmark næppe en skattemotor. For et dobbelt bogholderi, der sporer udbetalinger på tværs af mange sælgere, samt for forpligtelserne i henhold til bogføringsloven, er Stripe Tax ikke det rette svar.
Indberetter Nordlet automatisk dansk moms?
Nej, og den beregner hverken momsangivelsen eller producerer en SAF-T DK-fil. Angivelsespakker leveres for Litauen, Tyskland og Polen. For Danmark leverer den fastsættelsen, det uforanderlige bogholderi, OSS- og IOSS-tallene samt revisionssporet.
Hvad kræver den danske bogføringslov af softwaren?
Regnskaber skal føres i et digitalt regnskabssystem, der opfylder fastsatte krav, herunder en struktureret eksport, med indfasning for virksomheder fra 2024 til 2026. Loven regulerer selve bogføringssystemet frem for fakturaen eller angivelsen.
Hvad du bør gøre først
Beslut dig for, hvilke af de tre realtidsfunktioner du har brug for, og tag i Danmark udgangspunkt i bogføringskravet frem for skattemotoren. Hvis du sælger digitale produkter og ønsker indberetningen ud af verden, bør du teste Paddle. Hvis regnskaberne, udbetalingerne og momsen skal ligge i dit eget produkt, kan du komme i gang med sandkassen og bekræfte, hvad der er og ikke er dækket for Danmark, før du bygger ovenpå. Priserne er offentliggjort i stedet for kun at være tilgængelige efter forespørgsel.
Kilder
Hver enkelt leverandørpåstand ovenfor linker til leverandørens egen dokumentation. Selve reglerne stammer fra:
- Skattestyrelsen: Moms, frister og registrering - 25 %-satsen, grænsen på 50.000 DKK og indberetningsfristerne
- Momsloven - det lovmæssige grundlag for dansk moms
- Europa-Kommissionen: Moms One Stop Shop - tærsklen på 10.000 EUR for fjernsalg
Leverandørernes funktioner og nationale regler ændrer sig løbende. Alt heri er tjekket op mod offentlig dokumentation den 8. september 2026; du bør verificere alt, hvad du vælger at bygge på.