Getting Started with qbill
qbill is an accredited System Integrator and Access Point Provider for the Nigeria Revenue Service (NRS) e-invoicing system. It validates your invoices, transforms them to the mandated schema, signs them, and transmits them to NRS — returning the IRN, cryptographic stamp (CSID) and QR code that make an invoice a valid tax document.
Who is this for?
qbill serves businesses of every size: SMEs creating invoices by hand from the dashboard, and enterprises integrating an ERP — SAP, Odoo, Microsoft Dynamics, QuickBooks, Zoho — through a connector or the submission API. Every ERP is served from day one; you don't need a native connector to be compliant. See Integration Guides for the full list of ways invoices get in.
Your first invoice
To submit an invoice via the API, authenticate with an API key and send a POST request to /api/v1/invoices. The organisation is resolved from the key itself, so there's no organisation id in the URL.
curl -X POST https://<your-qbill-host>/api/v1/invoices \
-H "x-api-key: $QBILL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"invoiceNumber": "INV-0001",
"invoiceDate": "2026-08-16",
"currency": "NGN",
"invoiceKind": "B2B",
"invoiceTypeCode": "380",
"customerName": "Acme Traders Ltd",
"customerTin": "12345678-0001",
"customerAddress": "14 Marina Road, Lagos",
"lineItems": [
{
"description": "Consulting services — August 2026",
"quantity": 1,
"unitPrice": 150000,
"taxRate": 7.5,
"itemType": "SERVICES",
"isicCode": "6202",
"serviceCategory": "IT consultancy"
}
]
}'A successful call returns the created invoice, including its id — your submission identifier. Unlike a dashboard draft, an invoice created through the API is already queued for NRS clearance.
{
"id": "3f7a2b10-9c4d-4e2a-8b5f-1d0e6a2c9f31",
"invoiceNumber": "INV-0001",
"status": "pending_clearance",
"invoiceKind": "B2B",
"createdAt": "2026-08-16T09:12:00Z"
}Once NRS clears it, the same record gains an irn, csid and qrCode — check the invoice's status, or view it in the dashboard.
If an invoice is rejected
