Orakel Docs
Data sources

Helsedirektoratet TBR

Norwegian alcohol and tobacco sales licenses — which companies are licensed to sell what.

Source attribution

Source: Helsedirektoratet (TBR — Tobakks- og alkoholregister)
Data: Alcohol and tobacco sales licenses
License: NLOD 2.0
Attribution required: Yes — "Helsedirektoratet"
Link: https://tbr.helsedirektoratet.no
Update cadence: Weekly full refresh (Monday 07:00), all three sub-registers

What it is

TBR is Norway's central register for alcohol and tobacco sales licenses. It covers three sub-registers: alcohol licenses (Alkoholsbevilling), tobacco licenses (Tobakksbevilling), and tobacco sales registrations. Each record links to a company by orgNumber and specifies the license type (pouring, retail, wholesale, import), the product groups covered, the venue, the issuing municipality, and the validity period.

Orakel fetches each register in full once a week and upserts on (licenseNumber, registerType).

Fields provided

FieldTypeNotes
licenseNumberintBevillingsnummer (or Registreringsnummer for tobacco sales) — unique within a registerType
orgNumberstring (9 digits)Norwegian organisation number of the license holder
holderNamestringInnehaver as filed
venueNamestringSted — the venue or selling location
venueOrgNumberstringSub-unit org number of the venue where different from the holder
registerTypestringAlkoholsbevilling or Tobakksbevilling (both tobacco licenses and tobacco sales use the latter)
licenseTypeCode / licenseTypeDescstringTillatelsestype — e.g. 01SKJE (pouring), 11ENGR (wholesale), 18TBIM (tobacco import), 19TBEK (tobacco retail)
productGroupsstring[]Varegrupper — GRP1 (≤4.7% beer), GRP2 (4.7–22% wine), GRP3 (>22% spirits), TROY (smoking tobacco), TINN (non-smoking tobacco)
address / postnr / poststedstringVenue address
municipality / municipalityNostringIssuing municipality (name + SSB 4-digit code)
validFrom / validTodateLicense validity window
syncedAtdatetimeLast time Orakel refreshed this record

Endpoints that surface this data

  • GET /api/licenses — search licenses; filter by orgNumber, registerType, licenseTypeCode, municipalityNo, or activeOnly=true (validTo ≥ today). Cursor-paginated.

Limitations

  • Coverage is licensed sellers only — the vast majority of Norwegian companies have no TBR record.
  • License type vocabulary follows Helsedirektoratet's scheme. Per-municipality quirks exist upstream but are not re-mapped here.
  • Expired licenses are retained. Use activeOnly=true or filter on validTo to exclude them.

Gotchas

  • One company can hold many licenses — one per venue and per register type. Join on orgNumber rather than assuming a single row.
  • venueOrgNumber can differ from orgNumber: the parent holds the license, the sub-unit is the physical venue. A value of "0" upstream is normalised to null.
  • Some tobacco sales records carry Registreringsnummer rather than Bevillingsnummer — both land in licenseNumber, with registerType disambiguating.

On this page