Skip to content

Print Configuration

Applies to: e-Invoice · e-Way Bill · Which modules do I have?

Purpose

Configure how Complifly renders compliant documents: which template, whose branding, and how the statutory elements appear. Also covers the rendering dependency whose absence produces a system that works perfectly until someone prints.

Audience

System administrators and implementation consultants, with the customer's tax lead for statutory content.

Prerequisites

  • Installation Guide complete, including the rendering dependencies
  • Branding assets collected — see Information Checklist
  • Statutory declarations supplied by the customer's tax lead
  • Administrator access

Steps

1. Understand what printing does and does not do

There are two print formats, and the difference between them is the single most important thing on this page.

Format Rendered by Available
NIC format The government, fetched through the provider Only for 2 days after generation
Branded Print Complifly, from the signed invoice and signed QR captured at generation Always

Branded Print is the one that always works. It renders from data captured at generation time and held locally, which is what makes an e-invoice print valid. It needs no provider call and is unaffected by a provider outage.

The NIC format has a hard two-day window. The government stops serving the official copy two days after generation. Complifly caches that copy at generation time precisely so it remains available afterwards — but if the copy was never cached and two days pass, it is permanently unobtainable. No retry, escalation or support action reopens the window.

Two further behaviours follow from this:

  • A cached NIC copy prints with no provider call — fast, free, and available during an outage.
  • The cache is deliberately bypassed when the e-Way Bill was updated after the copy was cached, so the reprint reflects current bill details. That forces a fresh provider call, and therefore can fail if the window has since closed.

Diagnose accordingly: a print failure is not always local. Branded Print failing is a rendering or configuration problem. NIC format failing may be the closed two-day window — which is a statutory-style constraint, not a fault, and whose answer is Branded Print.

2. Confirm the rendering dependencies

Rendering runs a headless browser on the application host. On minimal server images the system libraries it needs are frequently absent, and their absence produces a system where everything works until someone prints.

Verify with a real render, not by reading a package list.

3. Choose the template

Templates control layout and which fields appear where. Select per company, and per GSTIN where they differ.

Consideration Guidance
Statutory elements must be present and legible The signed QR code, IRN, acknowledgement number and date
Customer branding Logo, colours, footer
Language and formatting Number and date formats consistent with the customer's convention
Paper size and margins Confirm against the customer's actual stationery and printers

4. Load branding

Asset Requirement
Logo Legible at print size. A high-resolution logo scaled down often is not. Test on paper
Footer text Supplied by the tax lead, not drafted by the implementer
Declarations Statutory wording, supplied by the customer

5. Get the signed QR code right

The signed QR code is the evidence of registration and the element most likely to be got wrong in a way nobody notices until an inspection.

Requirement Why
Present on every registered document Statutory
Large enough to scan reliably A QR that scans on screen may not scan when printed at a smaller size
Not overlapped or cropped Template changes are the usual cause
Sufficient quiet space around it Scanners need the margin
Verified by scanning a printed copy Not a screen preview. Print it and scan it with a phone

The last row is the check that matters. A QR code that renders on screen and fails on paper is a compliance failure discovered by an inspector.

6. Configure per GSTIN where needed

Different registrations may need different templates, logos or declarations — a group with distinct trading names, for instance. Configure per GSTIN rather than forcing one template on all.

7. Test a real print

Print a real document, on the customer's own printer and stationery, and check it as a physical artefact:

Check Why it fails on paper but not on screen
QR scans Scaling and print quality
Logo legible Downscaling
Nothing cropped Margins and paper size
Text readable Font size at actual scale
Fits the page count expected Multi-line documents overflow unexpectedly

Validation

Check Method Pass condition
Rendering works at all Render one document A PDF is produced
Signed QR present Inspect the output Present on every registered document
QR scans from paper Print it and scan with a phone Scans reliably. Do not accept a screen scan as evidence
Statutory fields present Compare against the customer's compliance checklist IRN, acknowledgement number and date all present
Branding correct Print and inspect Logo legible, footer correct
Per-GSTIN templates apply Print one document per registration Each carries its own branding
Multi-line documents render Print a document with many lines Paginates correctly; nothing cropped or lost
Bulk print works at real volume Print a realistic batch Completes without exhausting memory
Download works Download a rendered document Downloads successfully. Failure here is usually the content-security policy, not printing
Cached documents remain valid Reprint a document printed earlier Identical output

Troubleshooting

Symptom Cause Action
Printing fails, everything else works Rendering system libraries absent on the host Install them. This is an operating-system dependency, not a setting
Bulk print fails while single prints succeed Memory exhausted by concurrent rendering Reduce batch size, or raise memory. See Sizing and Capacity
QR scans on screen, not on paper Rendered too small, cropped, or without quiet space Adjust the template and re-test on paper
QR absent Document not registered, or the template omits it Check the document's status first. An unregistered document has no QR to print
Logo illegible High-resolution image downscaled, or wrong aspect ratio Supply an asset sized for print
Wrong branding on some documents Configuration set per company where it should be per GSTIN Configure per registration
Content cropped at the margins Paper size or margins mismatched to the customer's stationery Correct the template and print again
Download link fails Download origin blocked by proxy or content-security policy Downloads use a separate origin by design. See Domains and URLs
Print looks different after an upgrade Template changed in the release Check the release notes and re-verify the QR on paper
A document cannot be printed at all Outside the retrievable print horizon Check the configured horizon. See Environment Variables