Purpose
Overview
WiseWage supports a controlled B2B commercial-invoice lifecycle: taxpayer setup, invoice drafting, NRS validation, internal approval, fiscalization, final PDF generation, and creation of a validated but unposted accounting-register row.
Draft creation and internal approval are WiseWage controls. Only NRS validation and fiscalization call the configured NRS environment. General-ledger posting remains a separate Management Accounts approval step.
Connection
Authentication
WiseWage authenticates to NRS from its server using environment-specific credentials issued for the integration. The API key, client secret, and system-integrator identifier are never embedded in browser code or displayed to company users.
Each managed business separately records its NRS-issued BusinessID and Taxpayer Service ID. These taxpayer identifiers must belong to the same enabled legal entity and are not interchangeable with WiseWage's system-integrator credentials.
Deployment
Sandbox and production environments
| Environment | Purpose | Controls |
|---|---|---|
| Sandbox | Integration testing, schema validation, and onboarding evidence. | Separate NRS URL and credentials; records are visibly identified as sandbox activity. |
| Production | Live fiscalization after NRS approval and customer enablement. | Environment-specific credentials, HTTPS, restricted server access, and explicit activation. |
Sandbox readiness does not imply production activation. Production use depends on NRS approval, valid production credentials, and enablement of the applicable taxpayer.
Lifecycle
Supported operations
- 1Associate an enabled taxpayer BusinessID and Taxpayer Service ID.
- 2Load supported NRS states, LGAs, product/service classifications, and tax treatments.
- 3Create an internal B2B commercial-invoice draft and permanent WiseWage invoice number.
- 4Generate an IRN and validate the invoice structure with NRS.
- 5Correct and resubmit validation failures while retaining prior attempts.
- 6Approve a validated invoice through WiseWage's internal control.
- 7Fiscalize once and retain the NRS response and verification details.
- 8Cancel eligible drafts without deleting their invoice number or audit history.
Payload
Request mappings
| WiseWage source | NRS invoice area | Control |
|---|---|---|
| NRS business profile | business_id and supplier party | UUID, taxpayer identity, and structured Nigerian address validation |
| Customer fiscal profile | accounting_customer_party | Country, state, and LGA codes must form a valid relationship |
| Invoice header | IRN, issue date, type 381, currency, and payment means | Permanent numbering and date/currency validation |
| Invoice lines | quantity, price, item, ISIC/HSN classification, and tax category | Official classification selection and line-level VAT treatment |
| Calculated totals | tax totals and legal monetary totals | Server-side recalculation before submission |
Reliability
Responses and error handling
WiseWage records the outcome of each NRS validation or fiscalization attempt, including the operation, time, HTTP outcome, and a sanitized business-facing explanation. Validation failures remain available for correction and retry; failed attempts do not create posted accounting entries.
Customer-facing messages identify an invalid field when NRS provides that detail. Secrets, raw database failures, stack traces, and private infrastructure information are not returned to the browser.
Authentication or access-denied responses stop the NRS operation and direct an administrator to verify the configured environment and credentials. Upstream unavailability is distinguished from invoice-data validation where the NRS response permits it.
Duplicate protection
Idempotency
Validation attempts are keyed to the invoice revision. Fiscalization uses a server-generated idempotency value derived from the invoice identity, revision, and payload fingerprint; the IRN is also sent as the NRS idempotency key.
Retries for an unchanged request reuse the controlled operation rather than intentionally creating another invoice or accounting-register row. A material draft correction creates a new revision and preserves earlier attempt history.
Controls
Security and data handling
See the WiseWage Security page, Privacy Policy, and NRS e-Invoicing SLA for related controls.
Reviewer resources
Technical evidence and samples
System integration use cases
Onboarding, validation, approval, fiscalization, cancellation, audit, and security scenarios.
Download PDFFictional UBL JSON sample
A non-production commercial-invoice example containing no real taxpayer or customer data.
Download JSONRendered fictional invoice
A visual PDF rendering of the fictional invoice sample for reviewer reference.
Download PDFAll published samples are fictional and must not be used as production taxpayer records.
Change record
Version history
Initial public system-integrator documentation covering authentication, environments, operations, mappings, responses, errors, idempotency, security, SLA, and fictional review artifacts.
For documentation or integration questions, contact hello@wisewagehr.com. For security reports, contact security@wisewagehr.com.
Official platform requirements remain controlled by NRS. Review the NRS onboarding guidance for current requirements.
