NAV Forespørsler
NAV forespørsler (employer inquiries) are requests from NAV (the Norwegian Labour and Welfare Administration) to employers for information about employees on sick leave. When an employee reports sick leave to NAV, the employer receives a forespørsel requesting income and employment details.
The API allows you to sync forespørsler from the NAV Sykepenger API and view them for your employees.
Endpoints
Sync Forespørsler
POST /api/v2/payroll/nav-forespoersler/sync
Fetches the latest active forespørsler from NAV for a client account’s organization. New forespørsler are created and existing ones are updated. Employee records are automatically matched by their personal number (fødselsnummer).
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| client_account_id | integer | Yes | The client account ID to sync forespørsler for |
Example Request
{
"client_account_id": 7
}
Response
Returns the list of synced forespørsel objects.
[
{
"id": 1,
"created_by_id": 7,
"created_at": "2024-06-01T10:00:00Z",
"client_account_id": 7,
"business_partner_id": 56,
"nav_referanse_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"loepenr": 1,
"orgnr": "123456789",
"fnr": "12345678901",
"status": "AKTIV",
"sykmeldingsperioder": [
{
"fom": "2024-05-15",
"tom": "2024-06-14",
"grad": 100
}
],
"egenmeldingsperioder": [
{
"fom": "2024-05-12",
"tom": "2024-05-14"
}
],
"inntektsdato": "2024-05-15",
"arbeidsgiverperiode_paakrevd": true,
"inntekt_paakrevd": true,
"opprettet_tid": "2024-05-16T08:00:00Z"
}
]
Sync Behavior
- Calls the NAV Sykepenger API via Maskinporten to fetch all active forespørsler for the organization
- For each forespørsel, checks if a record already exists (by
nav_referanse_id) - If existing: updates status, sick leave periods, and other fields
- If new: creates a new record and links it to the employee business partner by matching the personal number (fnr)
List Forespørsler
GET /api/v2/payroll/nav-forespoersler
Retrieves a paginated list of NAV forespørsler.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| client_account_id | integer | Yes | Filter by client account |
| business_partner_id | integer | No | Filter by employee |
| status | string | No | Filter by status (e.g., AKTIV) |
| page | integer | No | Page number (default: 1) |
| per_page | integer | No | Items per page (default: 100) |
Response
{
"data": [
{
"id": 1,
"created_by_id": 7,
"created_at": "2024-06-01T10:00:00Z",
"client_account_id": 7,
"business_partner_id": 56,
"nav_referanse_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"loepenr": 1,
"orgnr": "123456789",
"fnr": "12345678901",
"status": "AKTIV",
"sykmeldingsperioder": [],
"egenmeldingsperioder": [],
"inntektsdato": "2024-05-15",
"arbeidsgiverperiode_paakrevd": true,
"inntekt_paakrevd": true,
"opprettet_tid": "2024-05-16T08:00:00Z"
}
],
"meta": {
"page": 1,
"pages": 1,
"per_page": 100,
"records": 1
}
}
Get Forespørsel
GET /api/v2/payroll/nav-forespoersler/{id}
Retrieves a specific NAV forespørsel by ID.
Response
Returns a single forespørsel object (same shape as the list response items).
Attributes
| Attribute | Type | Description |
|---|---|---|
| id | integer | Unique identifier (read-only) |
| created_by_id | integer | ID of the user who synced this record (read-only) |
| created_at | datetime | Creation timestamp (read-only) |
| client_account_id | integer | ID of the client account (read-only) |
| business_partner_id | integer | ID of the linked employee, if matched (read-only) |
| nav_referanse_id | string | NAV’s unique reference ID for this forespørsel (read-only) |
| loepenr | integer | Running number from NAV (read-only) |
| orgnr | string | Employer’s organization number (read-only) |
| fnr | string | Employee’s personal number / fødselsnummer (read-only) |
| status | string | Status from NAV, e.g. AKTIV (read-only) |
| sykmeldingsperioder | array | Sick leave periods from NAV with fom (from), tom (to), and grad (percentage) (read-only) |
| egenmeldingsperioder | array | Self-reported sick periods with fom (from) and tom (to) (read-only) |
| inntektsdato | date | Income date relevant to the inquiry (read-only) |
| arbeidsgiverperiode_paakrevd | boolean | Whether the employer period (arbeidsgiverperiode) is required (read-only) |
| inntekt_paakrevd | boolean | Whether income reporting is required (read-only) |
| opprettet_tid | datetime | When NAV created this forespørsel (read-only) |
Sick Leave Period Structure
Each entry in sykmeldingsperioder contains:
| Field | Type | Description |
|---|---|---|
| fom | date | Start date of the sick leave period (fra og med) |
| tom | date | End date of the sick leave period (til og med) |
| grad | integer | Sick leave percentage (0–100) |
Each entry in egenmeldingsperioder contains:
| Field | Type | Description |
|---|---|---|
| fom | date | Start date of the self-reported sick period |
| tom | date | End date of the self-reported sick period |
Error Responses
| Status Code | Description |
|---|---|
| 400 | Invalid request (missing client_account_id) |
| 403 | Forbidden (no access to client account) |
| 404 | Forespørsel not found |
Business Rules
- Forespørsler are synced from NAV via the Maskinporten integration — the client account must have a valid organization number and Altinn integration enabled
- All fields are read-only — data comes from NAV and cannot be modified locally
- The sync operation performs an upsert: existing records are updated, new ones are created
- Employees are automatically linked by matching the personal number (fnr) against active business partners in the client account
- If an employee cannot be matched, the
business_partner_idwill benull
Related Resources
- NAV Refund Claims — submit refund claims (inntektsmeldinger) to NAV based on employee leaves
- Payroll Leaves — employee leave records
- Payroll Contracts — employment contracts
- Integrations — Altinn and Maskinporten integration setup