FAQ¶
Applies to: All subscriptions
Purpose¶
Answer the highest-volume questions in under a minute each. Answers here are deliberately short and link onward; the full explanation always lives in its own page.
This FAQ answers "what do we configure so this stops happening." The in-product Help Centre has its own FAQ, which answers "what do I do, right now, in front of this screen." The two are deliberately different documents for different people, and several questions below have a counterpart there written for the end user rather than for you.
Where a question has both halves, this page owns the configuration half and names the other. If a user has sent you a question in the second shape — "why is this button grey", "what does this error mean" — the Help Centre answers it faster than you can, on the screen where they met it. Press ? in the top bar of any Complifly screen, or open the public Help Centre URL listed in Domains and URLs.
Audience¶
Administrators, support staff, integration developers and implementation consultants — the people who can change something. Frequently the first page a customer's IT team opens.
Not for end users. Someone stopped mid-task by a greyed-out button, an error code or a field they do not recognise is answered faster by the in-product Help Centre, which is keyed on the exact identifier the screen showed them. Sending an end user here gives them the configuration answer to a question they cannot act on.
Prerequisites¶
None.
Reference¶
Access and permissions¶
Why can my colleague do this and I cannot? Almost always the maker-and-checker split: the person who prepares a document is not the person who commits it. That is a control working, not a fault. Second most common cause: the two people are on different registrations, and module switches are per registration. See Roles and Permissions for the matrix. The user asking you this can get the answer without you — hovering a greyed control in the product names the role that holds the permission.
A module we bought is not visible. Modules are enabled per registration, not per company. Check the flag for the specific registration, and allow about a minute for the change to take effect. See Modules and Licensing and Feature Flags.
This is one of the two things a user cannot distinguish from the screen — a module that is unlicensed and a module that is switched off look identical to them. Only you can tell which, which is why the Help Centre answer for this question is "ask your administrator".
The screen loads but shows no data. Where is our data? Almost certainly no access to the registration whose data you expect. Screens render, and the tenant filter returns nothing. See GSTIN Access Control.
Everything is greyed out. Your role does not hold the permission. This is different from a missing module — the screen is present. See Roles and Permissions.
Can we create a custom role? No. Seven roles are fixed, and there are no per-user overrides. Access is shaped by three levers only: role, registration access, and whether segregation of duties is enforced.
Why can our administrator not register a document? By design. Configuration authority and transactional authority are deliberately separate: the person who controls who has access should not also be able to commit transactions. An administrator who also needs to file holds a second, transactional role on a second account — not an override on the first. See Segregation of Duties.
Nobody can log in and nobody is getting reset emails. Check mail delivery first. Password reset, one-time codes and account activation all depend on email, and mail failures produce no error anywhere. See Email and Notifications.
Should I delete a departing employee's account? No — disable it. Deleting breaks the attribution of their past actions, which a compliance system must preserve.
Documents and validation¶
Where did my invoice go after upload? It was quarantined, not lost. Validation failed, so it is held in the Correction Cockpit with per-field messages. See Validation Error Codes.
Why was it rejected, and what do I fix? Every validation error names a field. Work from the field name, not only the message — it is the stable identifier. If many documents fail the same way, fix the mapping or the master data rather than the documents.
Every invoice fails on dispatch-from fields. The dispatch-from block is optional as a whole, but once any part of it is used, the rest becomes required. A mapping that populates one field "just in case" makes the whole block mandatory.
Why are my dates a month out? The date format declared in the mapping template does not match what the ERP actually sends. Test with an unambiguous date, such as the fifth of March, where a transposition is visible.
Why is my classification code rejected? Either the length is wrong for its family, or leading zeros were stripped somewhere in the chain. Carry codes as text end to end.
Registration with the government¶
Why is this document number rejected as a duplicate? The government consumes a document number permanently, per supplier, type and financial year. It is never released, even if the earlier document was cancelled. If this appears at volume, your ERP's numbering series has restarted or is shared with another system. See NIC Error Codes.
Can I cancel and re-issue under the same number? No. Cancelling does not release the number. There is no amendment mechanism in GST: if the original was wrong, the instrument is a credit or debit note.
What is the reporting window, and can it be extended? It is the period after the document date within which an invoice must be reported. It cannot be extended or reopened — not by configuration, not by escalation, not by support. Complifly enforces it at ingest so a stale document is caught on the day rather than at generation.
All our historical invoices were quarantined. They fall outside the reporting window. This is expected. Agree with your tax lead how historical documents are handled before loading a backlog.
The customer's registration is cancelled. What now? You cannot register a document against a cancelled registration, and nothing in your control changes that. The remaining actions are commercial: contact the counterparty.
Generation fails with no error code. The request did not reach the government. Run the provider connection test, check credential expiry, and check whether the egress address has changed.
Documents sit ready and nothing happens. Generation is a deliberate act unless automatic generation is enabled. Check who holds the authority — and check the reporting window, because a document waiting here is on a statutory clock.
Should we enable automatic generation? Only once validation quality is proven over real volume. Automating registration over a poor feed produces rejections at volume, each of which consumed a billed call.
e-Way Bill¶
Our goods were stopped although we had a bill. Almost always Part-B. A bill without vehicle details is not valid for movement. This is a dispatch-process problem: somebody must own completing Part-B before the vehicle leaves.
The bill expired in transit. Validity derives from distance. Extension is only possible within a window around expiry, so prevention is the real answer: set the expiry alert horizon from your actual dispatch and transport lead times.
Why can I not extend it? Extension is only available near expiry, not at any time. Statutory, and not configurable.
Validity is much shorter than expected. The distance is understated — usually a wrong postal code.
Why can I not cancel it? The cancellation window has closed, or it is already cancelled. After the window, rejection by the other party is the remaining route.
Consolidated bills are unavailable. Providers genuinely differ in what they support. A deliberately disabled operation is not a fault — it is the platform declining to fabricate a number the government never issued. See GSP Abstraction.
Why did our delivery challan not produce a reference number? Challans route to e-Way Bill only, by default. That is correct behaviour. See Document Type Routing.
Integration¶
The ERP does not have the reference number. Check three things, in order: is write-back enabled for that registration, is there a subscription, and is your consumer running? Write-back is off by default, and enabling it does not backfill history.
We enabled write-back and got nothing for old documents. Expected. Emission starts from the moment it is enabled. Seeding an ERP with existing compliance state is a separate exercise.
We received the same event twice. Delivery is at-least-once by design. Your consumer must deduplicate on the event identifier.
What do I do with a 403 on ingest? It is a credential scope problem, not a user permission problem: the document's supplier registration is outside the credential's scope. Checking the user's role is a dead end.
Which errors should I retry?
Retry 429, server errors, and timeouts. Never retry 422, 409 or 403 — they cannot succeed, and retrying them consumes rate-limit headroom that genuine traffic needs.
The call timed out. Should I resend? No — query the document's status first. A timeout means the outcome is unknown, and a blind resend creates a duplicate, which is permanent.
Our ERP is not on your list. Every integration is the same shape. See The Integration Pattern and Custom ERP.
The token is valid but we get 403. The required application role was not granted through admin consent. This is the most common OAuth stumble.
Configuration and operations¶
I changed a setting and nothing happened. Settings live in three layers with different change procedures: host settings need a restart, front-end settings need a rebuild, and per-registration settings need about a minute. See Configuration Guide.
What happens to existing documents if we switch provider? Nothing. Each document is serviced by the provider that issued it, indefinitely. But keep the old provider's credentials valid while any of its documents can still be acted on — withdrawing them strands every cancellation and extension.
All government operations stopped at once. Credentials expired, or the egress address changed. Check both. A new network path or failover address is a common cause.
The QR code will not scan from paper. It is rendered too small, cropped, or without enough quiet space. A code that scans on screen may not scan on paper — always test on a printed copy.
Printing fails and nothing else does. It depends which print you mean. Branded Print renders locally from the signed invoice and QR captured at generation, so its failure is a rendering or configuration problem. The official NIC-format copy is served by the government for only two days after generation — if it was never cached in that window, it is permanently unobtainable, and Branded Print is the answer.
Uploads never finish. The background worker or the queue is down. This produces no error in the interface — the application looks entirely healthy.
Is our data isolated from other customers? Yes, and it is enforced inside the database, not only in application code. See Multi-Tenancy and Row-Level Security, which also contains the procedure for evidencing it to an auditor.
What can we safely delete? Caches, raw ERP payloads and delivered events, after their retention periods. Not compliance evidence — reference numbers, signed QR codes and submission payloads are subject to statutory retention. See Housekeeping.
What should we check every day? Ten to fifteen minutes: alerts, documents ageing towards the reporting window, the correction queue, failed generations, bills near expiry, jobs, integration feeds, write-back backlog. See Daily Checks.
Validation¶
You are using this page well if:
| Check | Pass condition |
|---|---|
| The answer took under a minute | If not, it belongs in the Knowledge Base |
| You followed the link when you needed detail | FAQ answers are deliberately short |
| A statutory answer was recognised as such | No ticket can change one |
Troubleshooting¶
| Symptom | Cause | Action |
|---|---|---|
| Your question is not here | It is less common, or more detailed | Try Knowledge Base or Troubleshooting Center |
| The short answer is not enough | By design | Follow the link |
| Two answers seem to conflict | Different situations | Read both fully; the conditions differ |
Related Articles¶
- Troubleshooting Center — diagnostic paths
- Error Code Reference — every code
- Knowledge Base — longer how-to articles
- Support Reduction Register — the full question list
- The in-product Help Centre — the same questions answered for the person in the screen, keyed on the field, error, status and permission identifiers the application emits. Press ? in the top bar; the public URL is in Domains and URLs