Nordlet

← Grunnleggende / SDK-er

EU-momsmaskin

Bestemmelse av leveringssted, OSS/IOSS-oppgaver, unntak for små virksomheter og avstandsforholdsterskler.

Grensekryssende momshåndtering for salg innen EU/EØS: bestemmelse av leveringssted, omvendt avgiftsplikt (reverse charge), håndtering av markedsplasser som ansees som leverandør (deemed-supplier), landsspesifikk satsoversikt og OSS/IOSS-oppgaver. Alt nedenfor er API-først, og tilgjengelige omfang (scopes) vises per endepunkt.

Satsoversikt

POST /v1/reference/eu-vat-rates/list (reference:read) - lovbestemte momssatser for alle EU-27-land, filtrerbare etter countryCode og date. Gyldighetsperioder for satser spores fra 2024-01-01 (EE 24 % fra 2025-07, RO 21 %/11 % fra 2025-08, SK 23 %/19 % fra 2025-01, FI 13,5 % og LT 12 % fra 2026-01, CZ 12 % fra 2024-01).

Kilde: Europakommisjonens database «Taxes in Europe» (TEDB, https://ec.europa.eu/taxation_customs/tedb/), hentet 2026-07-16; litauiske endringer for 2026 er bekreftet mot VMI (https://www.vmi.lt/evmi/pvm-tarifai), og finske endringer for 2026 mot vero.fi. Omfang: Kun satser for fastlandet og standardterritorier – regionale varianter (østerrikske Jungholz, greske øyer, Azorene/Madeira, franske overこれもsterritorier og Korsika) er ikke modellert.

POST /v1/reference/vat-classifiers/list returnerer nå en countryCode per klassifisering (eksisterende i.SAF PVM*-koder er LT); POST /v1/reference/vat-classifiers/upsert (reference:write) laster inn klassifiseringssett for ytterligere land, noe som er databanen for fremtidige landpakker.

Behandlingsbestemmelse

POST /v1/reference/vat/resolve (reference:read) besvarer spørsmålet «hvilken mva. skal jeg beregne?» for en leveranse. Inndata: partnerId eller customerCountryCode (+ valgfri overstyring med customerIsBusiness – utledes ellers fra partnerens mva-nummer), supplyType (goods | services | digital), date, samt situasjonsflagg: belowDistanceSalesThreshold, facilitatedByMarketplace (du selger gjennom en plattform som ansees som leverandør), actingAsMarketplace (du er plattformen), sellerEstablishedInEu, importedConsignmentValueEur.

Inndata for reglene som legges til gjennom Rådsdirektiv (EU) 2025/516 (moms i den digitale tidsalder – ViDA):

  • serviceKind (short_term_accommodation | passenger_road_transport) med serviceCountryCode, landet der eiendommen befinner seg, eller der transporten finner sted. Begge krever supplyType: "services".
  • underlyingSupplierGaveVatNumber og underlyingSupplierChargesVat: hvorvidt utleieren eller sjåføren oppga et mva-nummer for leveringslandet til plattformen og erklærte at denne beregner mva. Bare når begge er oppfylt, unngår man at plattformen ansees som leverandør (artikkel 28a nr. 1).
  • goodsKind (installed | energy_network) for varer som installeres eller monteres hos kunden (artikkel 36), samt for gass, elektrisitet, varme eller kjøling gjennom et nettverk (artikkel 38 og 39).
  • goodsLocationCountryCode, landet der varene befinner seg ved salg, eller der transporten starter, dersom dette ikke er selskaper i det opprinnelige landet.

Utdata: scheme, vatCountryCode, reverseCharge, deemedSupplier, zeroRated, destinasjonslandets satsoversikt, det rettslige grunnlaget (artikkel i direktiv 2006/112/EF) og rådgivende merknader (f.eks. en påminnelse om at unntaket i artikkel 138 krever et VIES-gyldig mva-nummer fra kunden).

Implementerte regler:

Situasjon Resultat
Leveranse i samme land domestic, hjemlige satser
Intra-EU B2B-varer intra_eu_b2b - mva-fritt etter artikkel 138, kunden beregner selv
Intra-EU B2B-tjenester reverse_charge - artikkel 44/196
Intra-EU B2C-varer/-digitalt over 10 000 EUR oss_union - destinasjonssatser, artikkel 33(a)/58
Intra-EU B2C under 10 000 EUR (belowDistanceSalesThreshold) domestic i opprinnelseslandet, artikkel 59c
Generelle intra-EU B2C-tjenester domestic, artikkel 45
Varer til land utenfor EU export - mva-fritt etter artikkel 146 nr. 1
Tjenester/digitalt til land utenfor EU out_of_scope (artikkel 44/59)
Salg via markedsplass som ansees som leverandør (facilitatedByMarketplace) marketplace_deemed - mva-fri leveranse etter artikkel 136a til plattformen
Importert forsendelse ≤ 150 EUR B2C ioss - mva i destinasjonslandet ved salg, artikkel 369l–369x; ansees som leverandør når actingAsMarketplace (artikkel 14a nr. 1)
Unntatt liten virksomhet (selskapet er ikke mva-registrert), innenlandsk leveranse sme_exempt - ingen mva., artikkel 284 nr. 1
Unntatt liten virksomhet, grensekryssende EU B2C, innehar et grensekryssende EX-nummer sme_exempt - artikkel 284 nr. 2; gyldig så lenge man ligger under destinasjonsterskelen og omsetningen i EU på 100 000 EUR
Unntatt liten virksomhet, grensekryssende EU B2C, mangler EX-nummer beholder oss_union/opprinnelse med merknad om at et grensekryssende EX-nummer ville gjort den unntatt
Plattform (actingAsMarketplace) som tilrettelegger for opphold på inntil 30 netter eller persontransport på vei, fra 1. juli 2028 deemedSupplier: true, beskatning der eiendommen befinner seg eller transporten finner sted (artikkel 28a, 47, 48): domestic, oss_union for en forbruker i et annet land (artikkel 369b bokstav c) eller reverse_charge for en bedrift
Utleier eller sjåfør som selger via en slik plattform (facilitatedByMarketplace), fra 1. juli 2028 marketplace_deemed - mva-fri leveranse til plattformen, artikkel 136b
En av de to ovennevnte før 1. juli 2028, eller når utleier/sjåfør har oppgitt sitt mva-nummer og beregner mva. leveringssted etter artikkel 47 eller 48, ingen plattform som ansees som leverandør
Varer som lagres i en annen medlemsstat og selges til en forbruker der, fra 1. juli 2028 oss_union, artikkel 369b bokstav e; før dette domestic i det landet med merknad om registrering der
Det samme til en bedrift der reverse_charge, artikkel 194
Varer sendt fra en annen medlemsstat oss_union for en forbruker (artikkel 33(a)) eller intra_eu_b2b for en bedrift, med merknad om at leveransen hører inn under det landets mva-registrering
Installerte varer til en forbruker i en annen medlemsstat oss_union fra 1. juli 2028 (artikkel 36, 369b bokstav d), før dette domestic der
Gass, elektrisitet, varme eller kjøling til en forbruker i en annen medlemsstat oss_union fra 1. januar 2027 (artikkel 39, 369aa, deretter 369b bokstav d); reverse_charge for en bedrift (artikkel 195)

Terskelen på 10 000 EUR (artikkel 59c) kan angis eksplisitt som belowDistanceSalesThreshold. Hvis den utelates, sporer motoren denne automatisk fra hovedbokdata (se endepunktet for terskler nedenfor) og kommenterer beregningen med løpende summer.

Unntak for små virksomheter (direktiv 2020/285, fra 2025). Når selskapet ikke er registrert mva-pliktig, behandler regelmotoren det som en liten virksomhet som benytter unntaket: Innenlandske leveranser blir til sme_exempt (ingen mva.), og grensekryssende EU B2C-leveranser blir også til sme_exempt dersom selskapet innehar et grensekryssende EX-nummer (smeExemptionNumber på selskapsprofilen). Ellers beholder det den vanlige OSS-/opprinnelsesbehandlingen med en merknad om at den grensekryssende ordningen kan benyttes. Det er opp til den som leverer oppgaven å kontrollere kvalifisering (å holde seg under destinasjonsterskelen og taket på 100 000 EUR i EU-omsetning); regelmotoren markerer dette i merknadene. Sett EX-nummeret via account/companies/update (smeExemptionNumber).

Fakturaer

sales/invoices/create|update godtar vatScheme (en av ordningene ovenfor), vatCountryCode (forbruksmedlemsstat; obligatorisk og validert som EU for oss_union/ioss) og deemedSupplier. E-handelsordrer godtar shipToCountryCode og marketplace; orders/fulfill utleder behandlingen automatisk fra leveringslandet og stemmer utkast til faktura (forutsetter varer og overskredet avstandssalgterskel – juster utkastet før utstedelse hvis dette ikke stemmer).

Feltet for mva-ordning på siden for ny faktura

Feltet «Mva-ordning» (VAT scheme) på siden for ny faktura tilbyr alternativene nedenfor. Mva-prosenten som tastes inn på hver linje, er det fakturaen belaster. Valg av et alternativ merket med «ingen mva.» setter alle linjer til 0 % (og et bytte tilbake gjenoppretter standardsatsen). PDF-en skriver ut den lovpålagte teksten for den valgte ordningen. «Automatisk» anroper regelmotoren ovenfor ved lagring, ved hjelp av partnerens land og mva-nummer samt «Leveringstype» du velger (varer, tjenester eller digitale tjenester). Hvis partneren ikke har land eller mva-nummer, feiler lagringen med en melding, og du må velge en ordning manuelt.

Alternativ i skjemaet Ordning Bruk dette når Mva. på fakturaen
Automatisk (fra partner og leveringstype) utledes ved lagring Du vil at ordningen skal velges ut fra partner og leveringstype Bestemmes av utledet ordning; linjer nullstilles for ordninger uten mva.
Innenlands domestic Kjøperen er i ditt eget land Ditt lands satser
Intra-EU B2B-varer (0 %, art. 138) intra_eu_b2b Varer sendt til en mva-registrert bedrift i et annet EU-land; kjøperens mva-nummer må være gyldig i VIES Ingen mva.; PDF-en opplyser om unntaket i artikkel 138
Intra-EU B2B-tjenester (omvendt avgiftsplikt) reverse_charge Tjenester til en mva-registrert bedrift i et annet EU-land Ingen mva.; PDF-en skriver ut «Omvendt avgiftsplikt» (artikkel 196)
Union-OSS (EU-forbrukere, destinasjonsmva.) oss_union Varer eller digitale tjenester til forbrukere i et annet EU-land over EU-terskelen på 10 000 EUR; krever forbruksland Forbrukslandets sats, tastet på hver linje; rapporteres i den kvartalsvise OSS-oppgaven
IOSS (import opptil 150 EUR) ioss Varer importert fra land utenfor EU til en EU-forbruker, forsendelse ≤ 150 EUR; krever forbruksland Forbrukslandets sats, tastet på hver linje; rapporteres i den månedlige IOSS-oppgaven
Markedsplass (ansett som leverandør) marketplace_deemed Du selger gjennom en plattform som ansees som leverandør Ingen mva. på din leveranse til plattformen (artikkel 136a)
Eksport (mva-fritt) export Varer sendt ut av EU Ingen mva.; PDF-en opplyser om unntaket i artikkel 146
Utenfor avgiftsområdet (tjenester utenfor EU) out_of_scope Tjenester til en kunde utenfor EU Ingen mva.; PDF-en opplyser om at leveransen faller utenfor EU-momsen (artikkel 44/59)
Unntatt for små virksomheter (ikke mva-pliktig) sme_exempt Selskapet ditt er ikke mva-pliktig og benytter unntaket for små virksomheter Ingen mva.; PDF-en opplyser om unntaket i artikkel 284

De to intra-EU B2B-alternativene skilles kun av hva som leveres. Varer faller inn under unntaket i artikkel 138, der kjøperen innberetter et erverv innen felleskapet. Tjenester faller inn under omvendt avgiftsplikt etter artikkel 44/196, der kjøperen beregner mva. selv. Begge resulterer i en faktura uten mva., men teksten som skrives ut på PDF-en, og feltet beløpet havner i på kjøperens oppgave, er forskjellige – derfor har valget betydning.

OSS- / IOSS-oppgaver

POST /v1/declarations/eu/oss/compute (declarations:read) { year, quarter } – kvartalsvis oppgave for unionsordningen i henhold til vedlegg III til kommisjonsforordning (EU) 2020/194: rader per forbruksmedlemsstat × satstype (STANDARD/REDUCED) × sats med avgiftspliktig beløp og mva., der kreditnotaer er motregnet, samt summer. Kun utstedte dokumenter med vatScheme: "oss_union" tas med. Advarsler flagger ikke-lovbestemte satser for destinasjon og periode, utelatte mva-frie linjer, dokumenter uten vatCountryCode, samt leveranser som er skattlagt i identifikasjonsmedlemsstaten.

POST /v1/declarations/eu/ioss/compute { year, month } – samme oppsett månedlig for vatScheme: "ioss" (importerte forsendelser ≤ 150 EUR).

Begge responser inneholder en corrections-tabell (i tillegg til correctionsTotal): en kreditnota utstedt i den inneværende perioden, men knyttet (via creditedInvoiceId) til en opprinnelig faktura fra en tidligere OSS-/IOSS-periode, flyttes ut av perioderadene og rapporteres som en korreksjon for en tidligere periode – land, opprinnelig år, opprinnelig kvartal (OSS) eller måned (IOSS), og den negative mva-differansen – i henhold til vedlegg III til forordning 2020/194. Kreditnotaer uten creditedInvoiceId motregnes i inneværende periode og flagges med en advarsel slik at de kan knyttes; korreksjoner som er eldre enn tre år, flagges (artikkel 61 i forordning 282/2011).

Tilgjengelig for alle selskaper etablert i EU (ikke begrenset til LT).

Oppgave over overføring av egne varer

POST /v1/declarations/eu/own-goods-transfers/compute (declarations:read) { year, month } – månedlig oppgave for særordningen for overføring av egne varer (direktiv 2006/112/EF artikkel 369xa–369xk, fra 1. juli 2028), som leveres i medlemsstaten der virksomheten er etablert, innen utgangen av den følgende måneden (dueDate). Radene angir, per medlemsstat varene ble sendt til, og per medlemsstat de ble sendt fra, verdien av overføringene til kostpris (artikkel 76) i euro, omregnet etter kursen den siste dagen i måneden (artikkel 369xh). En overføring er en lagerflytting (POST /v1/inventory/stock/transfer) mellom varelagre i to forskjellige medlemsstater; angi lagerland med countryCode på /v1/inventory/warehouses/create eller /v1/inventory/warehouses/update (et lager uten angitt land befinner seg i selskapets hjemland).

Digital rapportering i EU

POST /v1/declarations/eu/digital-reporting/list (declarations:read) { fromDate, toDate } lister opp hver enkelt transaksjon som direktiv 2006/112/EF artikkel 262 krever enkeltvis rapportert fra 1. juli 2030, på tvers av alle 27 medlemsstater:

  • utstedte salgsfakturaer og kreditnotaer med vatScheme lik intra_eu_b2b (artikkel 262 nr. 1 bokstav a) eller reverse_charge (artikkel 262 nr. 1 bokstav c), med forfallsdato ved fakturautstedelse;
  • registrerte kjøpsfakturaer fra en leverandør i en annen medlemsstat med linjer der selskapet beregner mva. selv (artikkel 262 nr. 1 bokstav b for varer, bokstav d for tjenester), med forfall 5 dager etter at fakturaen ble mottatt.

Hver transaksjon inneholder opplysningene som kreves etter artikkel 264: fakturadato og -nummer, mva-nummer for leverandør og kunde, linjer, avgiftspliktig beløp, referanse til unntak, nummeret på den korrigerte fakturaen ved kreditnota (artikkel 226 nr. 16), leverandørens bankkonti (artikkel 226 nr. 17), mva-sats og -beløp for erverv, rapporteringsmedlemsstat (den som utstedte mva-nummeret som ble benyttet, artikkel 262 nr. 2), frist, samt missing som lister opp eventuelle dataelementer som mangler i registeret. Medlemsstatene plikter å godta dataene som en EN 16931-e-faktura (artikkel 263 nr. 3); POST /v1/sales/invoices/peppol-xml genererer denne filen for hver leveranse. Felles EU-melding etter artikkel 263 nr. 4 og de nasjonale kanalene for innsending av dataene er ennå ikke publisert, og Nordlet sender derfor ikke disse.

Avstandssalgterskel

POST /v1/declarations/eu/distance-sales-threshold/get (declarations:read) { date? } – sporer 10 000 EUR-terskelen for unionsordningen etter artikkel 59c basert på hovedbokdata: inneværende og foregående kalenderårs summer for grensekryssende B2C-avstandssalg (OSS-fakturaer samt grensekryssende forbrukerfakturaer uten ordning), om selskapet fremdeles ligger under terskelen, og gjenstående margin. Dokumenter i andre valutaer enn EUR someres til dokumentverdi med en advarsel. Mva-regelmotoren sjekker dette automatisk når belowDistanceSalesThreshold ikke er angitt.

Terskler for unntak for små virksomheter

POST /v1/declarations/eu/sme-thresholds/list returnerer medlemsstatsvise nasjonale terskler for mva-fritak i henhold til direktiv (EU) 2020/285 (det nasjonale taket på 85 000 EUR og taket for EU-omsetning på 100 000 EUR er inkludert). Tallene hentes fra kommisjonens SME-portals lardsider; der en nasjonal side henviser til TEDB uten å oppgi et tall, settes oppføringen til null framfor å gjettes. Enkelte terskler er fastsatt i nasjonal valuta (DKK/HUF/RON), og noen land publiserer bransjespesifikke terskler (f.eks. Irland: tjenester 42 500 EUR, varer 85 000 EUR).

POST /v1/declarations/eu/sme-threshold/get { date? } rapporterer et ikke-mva-pliktig selskaps posisjon opp mot sitt eget lands terskel: omsetning i inneværende kalenderår pluss foregående år (precedingTurnover), status (below / approaching ved 80 % / exceeded, eller not_applicable for et registrert mva-pliktig selskap, unknown når terskelen ikke finnes i registeret eller valutaen avviker), gjenstående margin og advarsler. Karanteneråd er inkludert: å overskride terskelen flagger unntaket som utilgjengelig for resten av det inneværende og det følgende kalenderåret, og et selskap som ligger under terskelen i år, men over i fjor, blir advart om at unntaket ikke kan gjenopptas før året etter (begge år må ligge under – mekanikk i henhold til artikkel 284 nr. 2; endepunktet for EU-omsetning gir den samme advarselen for taket på 100 000 EUR). For land med en nasjonal intra-EU-utløser – Litauens 14 000 EUR for tjenester levert til og varer/tjenester ervervet fra andre medlemsstater – inneholder responsen en intraEu-spesifikasjon (erverv fra EU-leverandører + leverte tjenester med omvendt avgiftsplikt) med egen status og advarsel.

Grensekryssende SME-ordning: EU-omsetning og kvartalsrapport

POST /v1/declarations/eu/union-turnover/get { date? } sporer taket på 100 000 EUR for «omsetning i Unionen» for den grensekryssende SME-ordningen (artikkel 284 nr. 2) fra hovedbokdata – den samlede verdien av leveranser foretatt innenfor EU (eksporter og leveranser utenfor avgiftsområdet er utelukket) i inneværende og foregående kalenderår – og returnerer begge årenes summer, status, margin og advarsler (not_applicable for en mva-pliktig).

POST /v1/declarations/eu/sme-cross-border-report/compute { year, quarter } utarbeider den kvartalsvise rapporten som en småbedrift tilknyttet ordningen skylder sin hjemmemedlemsstat (artikkel 284b): samlet verdi av leveranser foretatt i hver medlemsstat det aktuelle kvartalet, én rad per land (leveringsmedlemsstat = fakturaens forbruksland, ellers partnerens land, ellers hjemland), samt totalen. Leveranser utenfor EU er utelukket.

Nasjonale mva-oppgavesett

POST /v1/declarations/eu/vat-return/packs/list lister opp tilgjengelige landpakker; POST /v1/declarations/eu/vat-return/compute { countryCode, year, month, months? } videresender til pakken som er registrert for det aktuelle landet, og returnerer oppgaven som nummererte felt ({ code, label, amount }) samt advarsler, merknader og den offisielle source. Krever at selskapet er registrert i det landet (returnerer 422 ellers). Litauen (FR0600) leveres som den første pakken, og pakker inn den eksisterende FR0600-generatoren; flere land legges til som ren dataadapter når det offisielle skjemautseendet er verifisert.

Det eldre samleskjemaet POST /v1/reports/oss beholder som en heuristisk analysemvisning (basert på partnerland, ingen ordning kreves); erklæringsendepunktene er den offisielle veien for innsending. Begge utleder hjemlandet fra selskapet i stedet for å anta Litauen.