e-invoicing

Compliance Network Implementation Guide

Norway-specific codes

Code systems used in Norway e-invoicing, including SCICloudStatusCode values, error codes, validation rules, and VAT category codes.

Code systems overview

Three independent code systems apply to Norway. They appear in different contexts, don't use them interchangeably.

Code system Where it appears What it reflects
SCICloudStatusCode Notification payload (sciCloudStatusCode field) Sovos platform workflow status for the document
HTTP status codes Sovos API response on each request API call result (not document status)
Error codes (NS-*, M-NO-*, M-PPL-*) Notification payload (sciResponseCode or transaction reason field) alongside SCICloudStatusCode Routing, validation, or network error detail
Note:

HTTP 401 and SCICloudStatusCode 401 are unrelated. The collision is coincidental.

Document processing error codes (NS-*)

These codes appear in lifecycle notifications when a document fails during Sovos processing or routing. They are country-agnostic.

Code What triggers it Meaning Action
NS-17011002 Payload couldn't be converted to the validation format The document structure doesn't match the declared format ID. Verify the root element, namespaces, UBLVersionID, CustomizationID, and ProfileID. Confirm Mapping.InputSchema is set to ALL-PEPPOLBISUBL-3.0-INVOICE-1.0.
NS-17011004 Schematron validation produced fatal findings The document failed PEPPOL BIS Billing 3.0 or Norway-specific rules. Fix each reported rule ID and resubmit.
NS-17035002 No endpoint found after routing and dynamic discovery The buyer's participant identifier isn't registered in the PEPPOL network or ELMA, or the discovery process returned no result. Look up the buyer at 0192:<orgnr> in the PEPPOL Directory or ELMA. If absent, the buyer has no PEPPOL Access Point. Send by another channel or ask the buyer to register.
NS-17035003 Endpoint exists but is marked inactive The buyer's endpoint record is inactive. The buyer or their Access Point provider must reactivate the endpoint.
NS-17035005 Recipient party not populated on the document cac:AccountingCustomerParty or cbc:EndpointID is missing or empty. Include cac:AccountingCustomerParty/cac:Party/cbc:EndpointID schemeID="0192" with the buyer's 9-digit orgnr.
NS-17035006 Recipient endpoint identifier invalid The buyer's EndpointID value or @schemeID is incorrect. Use a bare 9-digit orgnr and set schemeID="0192".
NS-17020002 Partner not found in the communications gateway Routing completed but the buyer's provider isn't provisioned in the delivery gateway. Retry. If persistent, the buyer's Access Point provider may need to be re-established.
NS-17020003 / NS-17020004 Gateway communication failure or unexpected error Transient delivery failure. Retry. If persistent, contact Sovos support.

Norway endpoint and registration codes (M-NO-*)

These codes appear when Sovos performs PEPPOL endpoint management operations for your organization through ELMA (Norway's national SMP, operated by Digdir).

Endpoint registration
Code Meaning Action
M-NO-3001002 The organisasjonsnummer is invalid (fails MOD-11 checksum) Verify the 9-digit orgnr against Enhetsregisteret (Brønnøysundregistrene).
M-NO-3001006 The participant couldn't be registered in ELMA Check ELMA service status (Digdir). Retry if transient or contact Sovos support if persistent.
M-NO-3001007 The participant is already registered in ELMA under another service provider Contact the current service provider to arrange a migration or SMP transfer before re-registering.
M-NO-3001009 ELMA credentials were rejected Sovos configuration issue, contact Sovos support.
M-NO-3001010 ELMA requires a contact name for this registration Supply contact.name and contact.email on your endpoint (both are required when either is provided).
M-NO-3001012 The organisasjonsnummer has an invalid format (not exactly 9 digits) Use a bare 9-digit orgnrm with no prefix, nor separators.
M-NO-3001014 Outbound endpoint creation isn't supported for this document type Outbound endpoints accept only LifeCycle document types. Invoice and CreditNote belong on the inbound endpoint.
M-NO-3001018 The organisasjonsnummer wasn't found in Brønnøysundregistrene Verify the orgnr is a registered, active Norwegian entity.
M-NO-3001019 Organisasjonsnummer is required Include codeComponents with field: "IDENTIFIER" and the 9-digit orgnr.
M-NO-3001022 No ELMA process could be resolved for this endpoint The document type or process being registered isn't a supported BIS Billing 3.0 process. Confirm the product ID and supported document types.
Dynamic discovery (buyer lookup)
Code Meaning Action
M-NO-3004003 The buyer isn't registered in ELMA/PEPPOL, document must fall back to PDF Verify the buyer's organisasjonsnummer in BRREG and check whether the buyer is registered in the PEPPOL Directory or ELMA. If not registered, deliver the invoice by another channel or ask the buyer to register with a PEPPOL Access Point.
M-NO-3004004 PEPPOL dynamic discovery couldn't be completed (technical failure) Transient discovery failure. Retry; if persistent, check ELMA/PEPPOL Directory service status.
M-NO-3004005 Buyer's organisasjonsnummer has an invalid format Correct the EndpointID value in the invoice, must be a bare 9-digit orgnr.
M-NO-3004006 Buyer's organisasjonsnummer fails MOD-11 validation Verify the buyer's orgnr against Enhetsregisteret.
M-NO-3004007 Dynamic discovery isn't available in this deployment PEPPOL SMP lookup is disabled; the buyer endpoint must be created manually using the trading partner API.
Organisation number validation
Code Meaning Action
M-NO-3008003 Organisasjonsnummer is mandatory Include the orgnr in the request.
M-NO-3008004 Invalid format, must be exactly 9 digits Use a bare 9-digit orgnr.
M-NO-3008005 Must be unique, this orgnr is already in use in the workspace Reuse the existing endpoint record rather than creating a duplicate.
M-NO-3009001 Company country code must be NO Set the company country to NO in your endpoint configuration.

PEPPOL network codes (M-PPL-*)

These codes appear when events occur at the PEPPOL network layer during routing and delivery.

Code Meaning Action
M-PPL-2104006 No data found in dynamic discovery. The buyer's participant identifier wasn't found in the PEPPOL network or ELMA. Verify the buyer's 0192:<orgnr> in the PEPPOL Directory or ELMA before sending. If the buyer is absent, deliver by another channel or ask the buyer to register with a PEPPOL Access Point.
M-PPL-2104005 Dynamic discovery service call failed. Transient failure in the PEPPOL SMP lookup service. Retry; if persistent, contact Sovos support.

Validation rules

Norway-specific PEPPOL BIS Billing 3.0 validation rules. These appear as rule IDs in schematron validation errors alongside NS-17011004.

Rule Severity Trigger Resolution
NO-R-001 Fatal Supplier country is NO and the supplier VAT identifier (cac:PartyTaxScheme[VAT]/cbc:CompanyID) isn't in the format NO + 9-digit orgnr (MOD-11 valid) + MVA. Use exactly NO<orgnr>MVA . Example: NO123456789MVA). The 9 digits must be a real orgnr that passes MOD-11.
NO-R-002 Warning Supplier country is NO and the supplier doesn't carry Foretaksregisteret in cac:PartyTaxScheme[TAX]/cbc:CompanyID. Required for AS, ASA, and NUF entity types. Add a second cac:PartyTaxScheme block with TaxScheme/cbc:ID = TAX and cbc:CompanyID = Foretaksregisteret. Severity is warning, doesn't block delivery, but required for legal compliance.
PEPPOL-COMMON-R041 Fatal Any cbc:EndpointID, cbc:ID, or cbc:CompanyID carrying schemeID="0192" isn't a valid 9-digit orgnr or fails MOD-11. Use a bare 9-digit orgnr everywhere schemeID="0192" appears. Don't include NO prefix, MVA suffix, or separators.
PEPPOL-COMMON-R040 Fatal schemeID="0088" value isn't a valid GLN (Global Location Number). Fix the GLN check digit.