Macct

Regnskapsregler i Macct

En detaljert oversikt over alle norske lover, standarder og bransjekonvensjoner Macct håndhever automatisk for små foretak. For revisor, bokfører, Skatteetaten og bedriftseier som vil kjøre ettersyn.

Bokføringsloven (lov 2004-11-19 nr. 73)

RegelKravHvordan i Macct
§ 4 nr. 1 Dobbel bokføring — debet skal alltid være lik kredit Hardvalidert i AccountingService.opprettBilag — bilag uten balanse avvises med klar feilmelding.
§ 5 Krav til bilag: dato, beskrivelse, motpart, beløp Validert via DTO-validering (Jakarta Bean Validation) og service-laget.
§ 10 Sporbarhet — bokførte opplysninger skal kunne følges fra dokumentasjon (kvittering, faktura) til pliktig regnskapsrapportering, og motsatt vei Implementert — valutakurs har dokumentert kilde, bilag har vedlegg-filnavn og ekstern referanse, bilagsnummer er monotont per selskap (atomisk sekvens). Hvert bilag, faktura og partner registreres med opprettet_av_bruker_id + tidsstempel, og alle viktige hendelser (innlogging, IDOR-forsøk, sanity-job-avvik, godkjenninger) logges til en uforanderlig revisjonslogg.
§ 9 Kontoplan NS 4102 ferdig utfylt med 260+ kontoer.
§ 11 Spesifikasjoner: hovedbok, kundereskontro, leverandørreskontro Implementert som rapport-endepunkter med daglig sanity-jobb (ReskontroSanityJob) som verifiserer at hovedbok og reskontro stemmer eksakt.
§ 13 Oppbevaring 5 år Implementert — bilag er uforanderlig etter opprettelse, uavhengig av om perioden er åpen eller lukket. Endring eller sletting blokkeres direkte i lagringslaget. Korrigering kan kun gjøres via stornering (motbilag).
§ 14 Korrigering ved stornering — ikke sletting Implementert via /api/bilag/{id}/reverser. Lager nytt motbilag med byttet debet/kredit; original beholdes uendret. Krysslenker via stornert_av_id / storner_av_id. Dobbel storno blokkeres. Faktura følger samme prinsipp: etter sending er den uforanderlig — korreksjon krever kreditnota.
§ 10 Sporing av endringer på master-data (kunde-/leverandørinformasjon, selskap, lønn, brukerrettigheter) Implementert via audit-trigger i lagringslaget — hver endring lagrer et før/etter-snapshot (JSON) sammen med hvem som endret og når. Lar revisor se hele endringshistorikken for hver kunde, leverandør, ansatt etc.

Regnskapsloven (lov 1998-07-17 nr. 56)

RegelKravHvordan i Macct
§ 1-6 Definisjon lite foretak (omsetning < 84 MNOK, balanse < 168 MNOK, < 50 årsverk) Sjekkes i Nrs8Validator. Macct er primaert designet for selskap som faller under denne grensen.
§ 4-1 Grunnleggende prinsipper:
— Opptjeningsprinsippet
— Sammenstillingsprinsippet
— Forsiktighet (laveste verdi)
— Konsistens
Innebygget — faktura fører inntekten ved levering (ikke betaling), avskrivninger sammenstiller kostnaden over levetid, åpne fremmedvaluta-fordringer revalueres til balansedagens kurs (NRS 8 § 4-9).
§ 4-3 Kongruensprinsippet — resultat går via resultatkonto, ikke direkte mot egenkapital Hardvalidert — AccountingService blokkerer direkte postering på 2050/2070/2080 unntatt for bilagstype 'aapningsbilag', 'avslutning' eller 'storno'.
§ 4-9 Omregning av poster i fremmedvaluta til balansedagens kurs Implementert — ved årsavslutning revalueres åpne fordringer og gjeld i fremmedvaluta til balansedagens kurs (31.12). Urealisert kursdifferanse bokføres på 8060 (gevinst) eller 8160 (tap), med fullt audit-spor av hver enkelt revaluering.
§ 5-2 Anleggsmidler aktiveres og avskrives Soft-warning — Macct varsler ved beløp > 30 000 NOK på konto 6500-6599 (jf. sktl. § 14-40). Avskrivningsplan er manuell.

NRS 8 — God regnskapsskikk for små foretak

Forenkling/kravHvordan i Macct
Forenklede notekrav (8 obligatoriske noter) Generert i årsregnskapet via AarsregnskapService.
Ingen kontantstrømoppstilling påkrevd Utelatt — vi genererer ikke denne for små-foretaks-flyten.
Bevertning — fradragsgrense 592 kr/pers (2026, skattebetalingsforskriften § 6-46-1) Soft-warning på konto 7330 (Representasjon) ved beløp > 592 kr. Bruker får forklaring og henvises til 7350 (gaver, ikke-fradrag) for overskytende.
Forsiktighet for fordringer — laveste verdi Delvis via årsslutt-revaluering. Manuell vurdering av tapsrisiko på den enkelte kunde er ikke automatisert.
Revisjonsplikt — kan fravelges hvis omsetning < 7 MNOK + balanse < 27 MNOK + < 10 årsverk (asl. § 7-6) Sjekkes i Nrs8Validator — viser status og henviser til Foretaksregisteret for selve fravalget.

Skatteloven (lov 1999-03-26 nr. 14)

RegelKravHvordan i Macct
§ 14-40 Aktiveringsgrense 30 000 kr eks. mva for varige driftsmidler Soft-warning på beløp > 30 000 NOK på konto 6500-6599 (Verktøy, inventar, driftsmateriale, programvare) — der WorldCom-mønsteret typisk oppstår. Brukeren henvises til 12xx-aktivering. For fremmedvaluta-bilag vises beløpet både i NOK og opprinnelig valuta.
§ 14-41 Saldoavskrivning, gruppe A-J med faste satser (10–30 %) Ikke automatisert — må føres manuelt med korrekt sats per gruppe.
§ 6-1 Fradrag i næringsvirksomhet Implementert via NS 4102-konteringen. Konteringsforslaget peker mot riktig fradragskonto basert på tekstanalyse.
Selskapsskatt 22 % (AS, 2026) Bokført i årsoppgjøret på konto 8300 (Skattekostnad) → 2500 (Betalbar skatt) for AS.

Merverdiavgiftsloven

RegelKravHvordan i Macct
§ 2-1 Registreringsplikt — omsetning > 50 000 kr siste 12 mnd Innstilling — selskap markeres som mva-pliktig via selskap_innstillinger. Ingen automatisk overvåking av terskelen.
Mva-satser: 25 % (høy), 15 % (mat), 12 % (lav, transport/kultur), 0 % (eksport/fritatt) Alle satser som SAF-T-koder (3, 31, 33, 5, 52, 6, 1, 11, 13, 14...). Mva auto-beregnes per linje.
Bimaanedlig terminoppgave (6 terminer/år) Implementert via /api/rapport/mva og bokføringen på konto 2740 (Oppgjørskonto).
Termin-lås etter levert mva-melding Implementert — regnskapsperiode.mva_lukket settes ved bokført mva-oppgjør. Senere mva-bilag i terminen blokkeres.
SAF-T v1.30 (mandatory fra jan 2025) Eksport via SaftExportService.
Konto-mva-kode-konsistens Hardvalidert — 1610-1619 må ha inngående mva-kode, 27xx (utenom 2740) må ha utgående, 3xxx tillater bare utgående, 4xxx-7xxx bare inngående.

NS 4102 — Norsk Standard Kontoplan

KomponentI Macct
Kontoklasser 1-8 (eiendel, EK+gjeld, salgsinntekt, varekost, lønn, av-/nedskrivning, drift, finans+skatt) 260+ kontoer ferdig utfylt og enforcet.
Reskontrokonti 1500 (kunde) / 2400 (leverandør) krever per-partner-spesifikasjon Hardvalidert — linjer på 1500/2400 uten partner blir avvist både i bokføringstjenesten og i lagringslaget.
MVA-utligningskonti 1610-1619 / 27xx Innebygget — brukes ved automatisk MVA-postering.

Multi-valuta

Regel/kravI Macct
Hovedbok i NOK Innebygget — bilagslinje.debet/kredit alltid i NOK; konvertert via formel ved write.
Daglig kurs fra Norges Bank Auto — @Scheduled cron 17:30 UTC virkedager; lastNObservations=30 (~6 ukers historikk).
Kurs-kilde må dokumenteres ved manuell overstyring (bokf-l. § 7) Hardvalidert — når brukeren overstyrer den auto-hentede kursen kreves det eksplisitt kilde-tekst (f.eks. "DNB vekslingsnota nr. X-12345"). Auto-hentet kurs merkes med "Norges Bank YYYY-MM-DD".
Realisert kursdifferanse ved innbetaling Auto-bokført på 8040 (Valutagevinst) eller 8150 (Valutatap) når betalings-kurs avviker fra faktura-kurs.
Urealisert kursdifferanse ved 31.12 (NRS 8 § 4-9) Implementert ved årsavslutning. Åpne fordringer og gjeld revalueres til balansedagens kurs; differansen bokføres på 8060 (gevinst) eller 8160 (tap).
4 felter per regnskapslinje: valutakode, valutakurs, belop_valuta, belop_nok NOT NULL på bilagslinje, faktura, fakturalinje, faktura_betaling. Default NOK / 1.0 / belop / belop.
Omregningsfaktor (1 vs 100 for JPY/HUF/KRW) På valuta-master — valuta.antall_per_kurs. Form: belop_nok = belop_valuta * valutakurs / antall_per_kurs.

Kontroller (tre lag)

LagMekanisme
Bruker­grensesnitt Inline-validering og soft-warnings. Brukeren får forklarende meldinger som peker mot riktig kontering.
Forretnings­logikk Hard-validering: balansekrav, partner-krav for kunde-/leverandørsfordringer, låste perioder, MVA-kode-retning, kongruens-prinsipp, kurs-kilde, og at fakturadato er innen rimelig intervall.
Lagring Innebygde regler i datalaget enforser de samme invariantene som forretningslogikken: partner-krav på 1500/2400, én valuta per bilag, uforanderlighet i avsluttet periode, og monotont bilagsnummer per selskap.
Daglig avstemming Reskontro-sanity (kl 03:15 UTC): kontrollerer at sum av kundefordringer og leverandørgjeld per partner stemmer med saldo i hovedboken. Valuta-avstemming (kl 03:30 UTC): kontrollerer at formelen belop_nok = belop_valuta × kurs / omregningsfaktor stemmer på tvers av alle bokførte rader. Avvik > 0,01 NOK varsles til firmapost@macct.no.

Skattemelding og årsoppgjør

KravI Macct
Status-flyt: DRAFT → READY_FOR_REVIEW → APPROVED → SUBMITTED Implementert — status oppdateres i skattemelding-tabellen. Ingen status-hopp tillatt.
Aldri auto-innsending til Altinn Hardkrav — eksplisitt menneskelig godkjenning kreves på hvert steg.
SHA-256-hash av regnskapsdata Verifisert ved hvert steg fra utkast til innsending.
Audit-trail skattemelding_hendelse-tabell — logger hvem, når, hva for hvert skritt.

Lønn og A-melding

KomponentI Macct
Månedlig lønnskøring (brutto → skattetrekk → netto) LonnService.kjorLonn(aar, maaned) — idempotent per selskap+år+måned.
Arbeidsgiveravgift (AGA) per sone Beregnet per ansatt og gjørt opp som egen postering.
Feriepenger 12 % default (Ferieloven) Avsatt på konto 5020 (Ferielonn) / 2940 (Skyldige feriepenger).
A-melding XML AmeldingService bygger forenklet A-melding for eksport. Ikke auto-sendt.

EHF / PEPPOL BIS Billing 3.0

KomponentI Macct
Eksport (utgående EHF-XML) EhfFakturaService — UBL 2.1 med korrekt DocumentCurrencyCode og currencyID for fremmedvaluta.
Import (inngående EHF) EhfInnService — mottar XML, auto-oppretter leverandør, foreslår kontering via Claude/Ollama.

Hva Macct IKKE gjør (ærlighet)

For et SMB-foretak som driver innenfor NRS 8-rammen er Macct «komplett». For større eller mer komplekse organisasjoner mangler:

  • Saldoavskrivning automatisk — gruppe A-J må føres manuelt.
  • Bank-import for fremmedvaluta-konto — CSV-importeren antar NOK.
  • Per-linje-valuta i samme bilag — bevisst utelatt for SMB-segmentet.
  • Konsernkonsolidering — ikke i scope.
  • Multi-leg fakturering — betaling i annen valuta enn fakturaen er ikke støttet (alltid faktura-kurs ved innbetaling).
  • Aksjonaerregister-rapportering automatisk i Altinn — vi genererer XML, men sender ikke selv.
  • Vurdering av tapsrisiko på enkeltkunder — må gjøres manuelt etter NRS 8 forsiktighet.

Sist oppdatert: april 2026 (v1.7.27). Siden gjenspeiler implementasjonen i Macct sin master-branch og oppdateres ved nye fikser. For spørsmål om en spesifikk regel: firmapost@macct.no.

← Tilbake til Om Macct