---
id: "nl_onderwijsnummer"
kind: "datatype"
status: "stable"
is_pii: true
categories: ["pii", "persons", "education"]
country: ["NL"]
langs: ["nl"]
quality: 100
url: "http://registry.apicrafter.io/datatype/nl_onderwijsnummer"
---

# Dutch education number (onderwijsnummer) (`nl_onderwijsnummer`)

Onderwijsnummer, the 9-digit number that the Dienst Uitvoering Onderwijs (DUO) gives to a pupil or student in government-funded education in the Netherlands who has no citizen service number (BSN), for example a pupil from abroad. It starts with 10 and uses the weights of the BSN 11-proef, but the weighted sum leaves a remainder of 5 when divided by 11 instead of 0, which tells the two numbers apart. When the pupil gets a BSN, the BSN replaces it in school records.

- Personal data (PII): yes
- Categories: Personally identifiable information (pii), Person related (persons), Education (education)
- Countries: Netherlands (NL)
- Languages: Dutch (nl)
- Classification: identifier

## Detection

Regular expression (Python `re`):

```
^10\d{7}$
```

Check digit algorithm: `nl_onderwijsnummer`

## Examples

- `101222331` — python-stdnum reference value
- `108148380` — Synthetic number with a valid check digit
- `100252333` (invalid example) — The weighted sum does not leave 5 (python-stdnum reference value)
- `1081483807` (invalid example) — Ten digits

## Mappings

- stdnum: `nl.onderwijsnummer`

## Supported by tools

- `dataprep`
- `pythonstdnum`

## Translations

- nl: Onderwijsnummer: Negencijferig nummer dat DUO toekent aan een leerling of student zonder burgerservicenummer; begint met 10 en voldoet aan een variant van de elfproef (rest 5).
- ru: Учебный номер учащегося Нидерландов (onderwijsnummer): Девятизначный номер, который DUO присваивает учащемуся без BSN; начинается с 10, взвешенная сумма по правилу 11-proef даёт остаток 5.

## Sources

- wikipedia: <https://nl.wikipedia.org/wiki/Onderwijsnummer>
- other: <https://arthurdejong.org/python-stdnum/doc/2.2/stdnum.nl.onderwijsnummer.html>
- other: <https://docs.dataprep.ai/user_guide/clean/clean_nl_onderwijsnummer.html>

## Quality

Score 100/100.

JSON: <http://registry.apicrafter.io/api/v1/datatypes/nl_onderwijsnummer.json> · Edit: <https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/NL/education/nl_onderwijsnummer.yaml>
