Configure API credentials and register your PEPPOL participant identifier for Norway e-invoicing through Compliance Network.
Confirm the following before starting credential setup:
Norway doesn't require a tax authority digital certificate and uses the PEPPOL network for invoice exchange. Your business must be registered as a PEPPOL participant with a valid organisasjonsnummer before you can send or receive invoices.
Sovos manages PEPPOL participant registration on your behalf. You provide your organisasjonsnummer; Sovos handles registration with ELMA and publishes your participant identifier to the PEPPOL network. You don't interact with ELMA directly.
Important: Sovos holds PEPPOL Access Point membership (seat POP000249). No separate Digdir service-provider agreement is required beyond standard PEPPOL AP membership. PEPPOL participant registration is available in UAT (testing against the staging PEPPOL network). Production ELMA registration will be available at go-live. Contact your Sovos implementation team to confirm production readiness for your launch date.
- Understand the PEPPOL participant identifier scheme for Norway.
The platform constructs your PEPPOL participant identifier using the scheme (0192:<organisasjonsnummer>) from the organisasjonsnummer registered on your company during onboarding.
At onboarding, the participant is registered in ELMA, Norway's national SMP with its supported document processes. This publication is what makes your business discoverable on the PEPPOL network: senders resolve the identifier (via the SML, which points to ELMA) to find your Access Point and route invoices to you.
- Obtain Sovos API credentials.
Your API credentials authenticate your system's calls to the Compliance Network API.
Important:
To submit and retrieve invoices through the Sovos API, you need API credentials. To generate API credentials, see API authentication page.
- Authenticate to the API.
Use your API key and secret key to obtain a bearer token for all API requests.
- Request
-
POST /oauth/token
Authorization: Basic {base64(apiKey:secretKey)}
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials
Where {base64(apiKey:secretKey)} is the Base64-encoded string apiKey:secretKey.
- Response
-
{
"access_token": "{bearer-token}",
"token_type": "Bearer",
"expires_in": 3600
}
Include the bearer token in all subsequent API requests:
Authorization: Bearer {bearer-token}
Tokens expire after 3600 seconds. Implement token refresh logic in your integration.
- Test your configuration in UAT using the https://api-test.sovos.com/v1/documents API base URL.
- Obtain a bearer token using your UAT API credentials.
- Proceed to Configure network to register your PEPPOL participant identifier.
- After endpoint creation, confirm that
registeredDirectories in the response contains "Peppol". An empty array means SMP registration didn't complete.
- Submit a test invoice. See Send invoices for the submission process.
- Verify notifications are returned when polling. See Monitor transmission for details.
Note:
Norway UAT has the following constraints that differ from production:
-
UAT publishes to the staging SMP in ELMA, not the production PEPPOL network. Participant identifiers registered in UAT aren't visible to production trading partners.
-
Production PEPPOL participant registration capability is pending. Contact your Sovos implementation team to confirm production readiness for your launch date.