Skip to content

Complifly Technical Documentation

Applies to: All subscriptions

Purpose

Let a technically competent customer or partner team understand, install, configure, integrate, operate, monitor and troubleshoot Complifly without a call to Complifly for anything routine.

Every page is written to that standard. Where a page cannot yet meet it, the gap is recorded openly in the Self-Service Readiness Score rather than papered over.

Audience

Customer IT teams, system administrators, integration developers, implementation consultants, partners, and customer technical support.

Not for Complifly source-code contributors. Nothing here documents internal code structure, branching, continuous integration or engineering process.

Prerequisites

None to read. Individual pages state their own.

New readers should start with Product Overview and follow the reading order below.

Steps

Two documentation surfaces — do not confuse them

Complifly has two distinct documentation properties, with different audiences and different content. Content must not be duplicated between them.

In-product Help Centre This portal
Audience End users doing a task in a screen IT, administrators, integrators, partners
Answers "What does this field mean?" "Why is this button grey?" "How do I install, configure, integrate and operate this?"
Keyed on Field, error, status and permission identifiers the application emits Task and system topics

The rule: if the answer is needed while looking at a control, it belongs in the Help Centre. If it is needed while building, running or fixing the system, it belongs here. Cross-link; never copy.

Reading order

Path Read
New to Complifly Sections 01, then 02, then 03
Deploying it 03, 04, 05, 06, then post-installation verification
Integrating an ERP 10, then 11 — starting with The Integration Pattern
Running it 13 and 15, plus the daily routine
Fixing something now 14, or 12 if you have an error code
Implementing for a customer The Implementation Programme, which sequences the rest

The sections

# Section Answers
01 Product Overview What Complifly is, and what it deliberately does not do
02 Technical Architecture Components, data flow, tenancy, provider abstraction, topologies
03 Prerequisites What must be true before installation begins
04 Environment Requirements Sizing, network, database, TLS, egress
05 Installation Guide Getting to a working, verified environment
06 Configuration Guide Every setting, and what breaks if it is wrong
07 Authentication and Security Both authentication planes, isolation, hardening
08 Users and Roles Roles, permissions, segregation of duties, access, licensing
09 Module Configuration e-Invoice, e-Way Bill, Invoice Generation, TDS, Data Privacy
10 API Documentation Conventions, authentication, ingest, write-back, administration
11 Integration Guides SAP, Business One, Dynamics 365, Tally, Oracle, custom, GSTN and NIC
12 Error Code Reference Every code, classified by who can fix it
13 Monitoring and Health Probes, logs, metrics, alert thresholds
14 Troubleshooting Center Decision trees by observed symptom
15 Operations Guide Daily, weekly, monthly and year-end routines
16 Upgrade Procedures Upgrade, verify, roll back
17 Release Notes What changed, and what it obliges you to do
18 FAQ The questions that generate the most tickets
19 Knowledge Base How-to articles and diagnostic recipes
Implementation Programme New-customer onboarding, stage by stage
Reports Support-reduction register and readiness score

Building the site

Plain Markdown, building under either generator without modification.

There are three ways to read the portal, in increasing order of setup.

1. Offline preview — no install. Renders every page into one self-contained HTML file with sidebar navigation and full-text search. Open it in a browser; no server, no network:

node docs-portal/_meta/build-preview.js
# then open docs-portal/_preview/portal.html

2. MkDocs Material — the published site. Configuration is mkdocs.yml at the repository root (MkDocs requires the config to sit beside its docs_dir, not inside it). Run from the repository root:

pip install mkdocs-material
mkdocs serve            # http://127.0.0.1:8000  (port pinned in mkdocs.yml)
mkdocs build --strict   # fails the build on a broken internal link

3. Docusaurus. Sidebar in docs-portal/sidebars.js. Point docs.path at docs-portal/ and use the exported sidebar.

Both site generators are configured so the choice stays reversible — worth keeping, as the Material for MkDocs maintainers have signalled that MkDocs 2.0 will break plugins and theme overrides with no migration path.

Authoring standards

  • Markdown only. No generator-specific syntax in page bodies — blockquotes and tables render identically everywhere.
  • Front matter on every page: title, description, keywords. The description is the search-result snippet; write it for a human.
  • The seven-heading Page Contract on every page, in order.
  • Never hardcode a hostname. Use Domains and URLs.
  • Mark unverified content with a > **Verify:** callout and a row in the Assumptions Register.

Validation

The portal is healthy when:

Check Pass condition
Links resolve mkdocs build --strict completes with no warnings
Page contract met Every page carries the seven headings, in order
No fact stated twice A fact in two places is a future contradiction
Unverified claims marked Every one carries a callout and a register row
No duplication with the Help Centre This portal links to it rather than restating it
Owners and cadences current Per the Section Charter

Troubleshooting

Symptom Cause Action
A build fails on a link Relative paths resolve from the source file's directory From 05-installation/x.md to 06-configuration/y.md, write ../06-configuration/y.md
A page cannot be found by search The description is a label rather than a sentence Rewrite it, and add the terms customers actually use to keywords
Two pages contradict each other The same fact was written twice Delete one and link to the other
A reader asks something the portal covers A findability problem, not a content gap Improve the description and add inbound links
A reader asks something it does not cover A genuine gap Add it to the Assumptions Register and write the page