Skip to main content

Filing, period close & statutory reports

The obligation calendar

Obligations are generated from your active registrations crossed with rolling periods. Each one carries its statutory frequency, due date and reporting currency.

India

ReturnMonthly filerQRMP filer
GSTR-111th of the following month13th of the month following the quarter
GSTR-3B20th of the following month22nd (Category X states) or 24th (Category Y states)
GSTR-931 December following the financial year (April–March)

The Category X / Category Y split is why jurisdiction normalisation matters: an unnormalised state string falls through to Category Y and moves the due date by two days — a missed statutory deadline, not a display bug.

Other regimes

RegimeDue date
UK VATOne month and seven days after the period end
EU OSSEnd of the month following the quarter
US sales tax20th of the following month (state variations apply)

Due dates are not shifted for weekends. That is statutorily correct — the statute says the date, not the next business day. Government extensions are handled by a due-date override on the period, which the calendar honours.

The five-step close

StepWhat it does
ComputeEvery order in the period has a computation. Backfill historical periods here
ReconcileDiscrepancies in your blocking set are cleared
PrepareSnapshots the liability, due date and FX rates for the period
FinalizeLocks the period. Requires the gate to pass and a second person
FileRecord the filing reference and acknowledgement, or e-file directly

Prepare-all runs the prepare step across every open obligation at once, which is how a multi-state Indian merchant starts a month.

Safe-to-file gating

The gate answers "is it safe to file this?" and separates blockers from warnings.

BlockerWhy
Open reconciliationsIn your policy's blocking set
Report not generatedA statutory return must exist before the period can be closed
Invalid registrationThe tax ID does not validate
Missing buyer GSTIN on B2B (India)B2B invoices without a counterparty GSTIN are rejected at the portal
Invalid or short HSN (India)HSN codes missing or below the required digit count
Open blocker queriesAn accountant query marked as blocking
WarningWhy
No registration for a jurisdiction with activityYou may have a nexus obligation
Unregistered supplies presentTax charged where you are not registered
Unmapped productsFallback tax classification was used
Outstanding balanceThe portal will require payment before filing

The report-readiness check is scoped to the specific jurisdiction, so a state-27 return cannot satisfy the gate for state-29's period.

Nil periods skip the artefact checks — but declaring nil is itself guarded: a period with computed tax, or one already filed, cannot be marked nil.

Statutory reports

ReportRegimeWhat it is
GSTR-1IndiaOutward supplies — B2B, B2C large, B2C small, credit and debit notes, HSN summary
GSTR-3BIndiaThe summary return, including reverse-charge
GSTR-9IndiaAnnual return
Sales registerIndiaThe invoice-wise Excel your accountant validates before GSTR-1
VAT OSSEUOne-stop-shop return
UK 9-boxUKThe standard VAT return boxes
US nexusUSNexus and liability by state

The sales register

The sales register is the accountant's working document: one row per invoice, with buyer name, buyer GST number, state and country, taxable value, and the CGST, SGST and IGST percentages and amounts split out.

Where an invoice carries a single tax slab the percentages are the clean statutory figures; where it mixes slabs they are blended — and either way the amounts reconcile exactly to the total. Zero-rated and exempt supplies appear with nil GST, and refunds appear as negative credit-note rows.

Credit notes are split, not netted

GSTR-1 places credit notes in their own tables rather than netting them into the invoice tables, while the summary and HSN sections net them. That is what the portal expects — and it is why the HSN table must net them too. An HSN section built from positive values only will not reconcile against the return's own summary, and the portal's cross-check rejects it.

Pre-file validation

Before you file, two validators run over GSTR-1:

  • HSN validation — flags missing, unspecified or too-short HSN codes
  • B2B GSTIN validation — flags counterparty GSTINs that do not match the 15-character structure

Both surface as gate blockers rather than as portal rejections a day later.

Export formats

Every report renders from a single view model into:

FormatUse
ExcelThe accountant's working copy — real multi-sheet workbooks
PDFA filing summary for records
CSVSectioned, with every section present
JSONMachine-readable
PortalGSTN offline-utility, HMRC MTD and EU OSS shapes

Reports are versioned: generating again supersedes the prior version rather than overwriting it, and each version carries a content hash and the currency it was rendered in. Every download is written to the audit log.

CSV exports are guarded against formula injection while leaving plain numbers untouched, so a value beginning with = cannot execute when the file is opened in a spreadsheet.

Payments, amendments and books

FeatureWhat it does
Payment ledgerRecord remittances against a period; the outstanding balance is what the gate checks
AmendmentsPost-close adjustments open an amendment period rather than reopening a filed one
Book reconciliationCompare the return against your accounting system — manual, with adapters for Xero, QuickBooks, Tally and Zoho
Late chargesFor India, section 50 interest and section 47 late fees are estimated on the net cash shortfall after input tax credit, not on gross output tax

Recording a filing requires an acknowledgement reference, and a period with an outstanding balance cannot be marked filed on a payable return — because the portal itself enforces pay-before-file.

Input tax credit and e-invoicing

FeatureWhat it does
GSTR-2B importImport your input tax credit statement from CSV; available versus blocked credit is summarised
Consistency checkCompares GSTR-1 against GSTR-3B box by box, within a ₹1 tolerance
E-invoice registryImport your IRN registry and reconcile it against B2B supplies, reporting coverage and flagging un-invoiced B2B

An import that parses to zero usable rows is refused rather than applied — a CSV with unrecognised headers would otherwise wipe the period's ledger and turn into a false under-claim.

Accountant workflow

FeatureWhat it does
Assign a reviewerRoute a period to your accountant
Query threadRaise and resolve questions against the period
Sign-offName plus professional membership number, recorded on the period
Buyer GSTIN directoryA counterparty registry with CSV import, matched onto invoices at report time

The buyer GSTIN directory enriches reports at generation time by matching on customer ID, then email, then legal name. It never rewrites the immutable computation — enrichment is a reporting-layer concern.

Sign-off requires a finalised period with no open blockers.

Portfolio view

For merchants filing in several jurisdictions, the portfolio header gives an FX-normalised roll-up: how many periods are closed out of how many, total outstanding, and late exposure broken down by state.

Evidence packs

One click produces a ZIP containing a manifest, the generated reports, and CSVs of the period's computations, reconciliations, payments and audit entries.

This is the artefact you hand to an auditor. It is generated from stored data rather than recomputed, so it reflects what was actually filed.

Plan tiers

CapabilityFreeStarterProAgencyEnterprise
Obligation calendar and close
Safe-to-file gate
Statutory reports, all formats
Payments, amendments, book reconciliation
ITC import and consistency check
E-invoice reconciliation
Accountant review and sign-off
Evidence packs
Multi-jurisdiction portfolio

Best practices

  • Prepare early in the month, not on the due date. Prepare snapshots the liability and FX rates; doing it late means diagnosing a blocked gate under time pressure.
  • Generate the sales register before GSTR-1. It is the document your accountant will actually check, and errors are cheaper to find there.
  • Import GSTR-2B every period. Without it, the credit side of the return is a guess.
  • Never mark nil to get past the gate. It is guarded, and the guard is there because filing real liability as nil is a serious matter.
  • Keep the evidence pack. Regenerating one years later is possible; having it at the time is better.

See also