MOD10 og MOD11: slik regner du ut kontrollsifferet i et KID
Det siste sifferet i et KID er regnet ut fra alle de andre. Her går vi gjennom begge metodene med samme tall, slik at du ser forskjellen og kan kontrollere ditt eget system.
Kort fortalt
- MOD10 (Luhn) bruker vektene 2 og 1 fra høyre og summerer tverrsummen av produktene.
- MOD11 bruker vektene 2, 3, 4, 5, 6, 7 fra høyre og summerer hele produktene.
- Med MOD11 kan kontrollsifferet bli en bindestrek. Det skjer når resten er 1.
- Samme underlag gir ofte ulike kontrollsifre, så metoden må stemme med bankavtalen.
Eksempelet vi bruker
Vi tar underlaget 482106, altså alle sifrene unntatt kontrollsifferet. Begge metodene leser tallet fra høyre mot venstre. Vil du kontrollere svarene, kan du legge tallet inn i KID-kontrollen.
Slik regner du ut MOD10
MOD10 kalles også Luhn-algoritmen. Vektene veksler mellom 2 og 1, og det første sifferet fra høyre får vekt 2. Blir produktet tosifret, bruker du tverrsummen. 16 blir altså 1 + 6 = 7.
| Siffer (fra høyre) | Vekt | Produkt | Tverrsum |
|---|---|---|---|
| 6 | 2 | 12 | 3 |
| 0 | 1 | 0 | 0 |
| 1 | 2 | 2 | 2 |
| 2 | 1 | 2 | 2 |
| 8 | 2 | 16 | 7 |
| 4 | 1 | 4 | 4 |
| Sum | 18 | ||
Se på entallssifferet i summen, som her er 8. Kontrollsifferet er 10 minus dette, altså 2. Hvis entallssifferet er 0, er kontrollsifferet også 0.
KID-en blir 4821062.
Slik regner du ut MOD11
MOD11 bruker vektene 2, 3, 4, 5, 6, 7 fra høyre. Etter 7 begynner rekken på 2 igjen. Her summerer du hele produktene, uten tverrsum.
| Siffer (fra høyre) | Vekt | Produkt |
|---|---|---|
| 6 | 2 | 12 |
| 0 | 3 | 0 |
| 1 | 4 | 4 |
| 2 | 5 | 10 |
| 8 | 6 | 48 |
| 4 | 7 | 28 |
| Sum | 102 | |
Del summen på 11 og finn resten: 102 = 9 × 11 + 3, så resten er 3. Kontrollsifferet er 11 minus resten, altså 8.
KID-en blir 4821068. Samme underlag ga altså 2 med MOD10 og 8 med MOD11.
To spesialtilfeller i MOD11
- Resten er 0: Kontrollsifferet blir 0.
- Resten er 1: 11 − 1 = 10, som ikke får plass i ett siffer. Kontrollsifferet erstattes da med en bindestrek.
Et eksempel er underlaget 7700100. Summen blir 67, og 67 = 6 × 11 + 1. Resten er 1, så KID-en blir 7700100-.
Bindestreken er definert i MOD11, men den kan by på problemer. Betalere kan overse den, og noen fakturasystemer tar ikke imot andre tegn enn sifre. Bruker du løpenummer, kan du unngå det ved å hoppe over de tallene som gir bindestrek.
Hvilken metode bør du velge?
Bruker systemet ditt allerede en av dem, eller har banken satt opp avtalen, er valget gjort. Starter du fra bunnen av, er MOD10 ofte det enkleste fordi kontrollsifferet alltid er et siffer.
| MOD10 | MOD11 | |
|---|---|---|
| Vekter fra høyre | 2, 1, 2, 1 … | 2, 3, 4, 5, 6, 7, 2 … |
| Summerer | Tverrsum av produktene | Hele produktene |
| Kontrollsiffer | Alltid 0–9 | 0–9 eller bindestrek |
| Eksempel: 482106 | 4821062 | 4821068 |
Kode du kan kopiere
Her er begge metodene i JavaScript. De tar inn underlaget som tekst og returnerer kontrollsifferet.
function mod10(underlag) {
let sum = 0, vekt = 2;
for (let i = underlag.length - 1; i >= 0; i--) {
let p = Number(underlag[i]) * vekt;
if (p > 9) p -= 9; // samme som tverrsum for tall opp til 18
sum += p;
vekt = vekt === 2 ? 1 : 2;
}
return String((10 - (sum % 10)) % 10);
}
function mod11(underlag) {
let sum = 0, vekt = 2;
for (let i = underlag.length - 1; i >= 0; i--) {
sum += Number(underlag[i]) * vekt;
vekt = vekt === 7 ? 2 : vekt + 1;
}
const r = 11 - (sum % 11);
if (r === 11) return "0";
if (r === 10) return "-";
return String(r);
}
mod10("482106"); // "2"
mod11("482106"); // "8"
Vanlige feil når du programmerer dette
- Starter fra venstre. Vektene skal alltid telles fra høyre. Starter du fra venstre, kan du få riktig svar på noen tall og feil på andre.
- Tar med kontrollsifferet i utregningen. Når du lager et KID, skal det siste sifferet ikke være med i underlaget.
- Lagrer KID som tall. Da forsvinner ledende nuller, og
0000000026blir26. Lagre det som tekst. - Kutter lange verdier. Får ikke ordrenummeret plass i formatet, må systemet gi feilmelding. Kutter det sifre, kan to ordrer få samme KID.
Test koden din med tallene i denne artikkelen, og sjekk også noen av dine egne tall i KID-kontrollen.
Kilder
KID og EHF er vårt eget produkt, så vi har en interesse i temaet. Artikkelen gir generell informasjon per 3. november 2026 og er ikke juridisk rådgivning eller regnskapsrådgivning. Sjekk gjerne med banken eller regnskapsføreren din.
Relaterte artikler
Hva er KID-nummer?
KID er referansen som kobler en innbetaling til riktig faktura. Se hvordan nummeret er bygget opp, hva det krever av banken, og hvordan du tar det i bruk.
3 min lesingSlik velger du KID-format og setter opp avtalen med banken
Løpenummer, ordrenummer eller kundenummer? Slik velger du KID-format som passer bankavtalen og ikke går tomt for tall når bedriften vokser.
3 min lesingUgyldig KID-nummer: årsaker og løsninger
Nettbanken sier at KID-nummeret er ugyldig. Se de vanligste årsakene og hva du gjør, enten du skal betale fakturaen eller har sendt den selv.
3 min lesing