Skip to content

[P2 MEDIUM] No reportedInGstr1 Flag on CreditNote or OrganizationInvoice #1370

Description

@teetangh

Summary

Neither CreditNote nor OrganizationInvoice has a reportedInGstr1 flag. When a GSTR-1 builder is eventually built (#1361), there is no way to track which invoices/credit notes have already been exported, risking double-reporting across months.

Priority: P2 MEDIUM


What Exists

  • TDSRecord.reportedInForm26Q — pattern exists for TDS
  • CreditNote — no reporting flag
  • OrganizationInvoice — no reporting flag

What's Missing

  1. CreditNote.reportedInGstr1 Boolean @default(false)
  2. OrganizationInvoice.reportedInGstr1 Boolean @default(false)
  3. CreditNote.reportedInGstr3b Boolean @default(false) (for future GSTR-3B builder)
  4. OrganizationInvoice.reportedInGstr3b Boolean @default(false)

Impact

  • Double-reporting risk — GSTR-1 export could include the same invoice in multiple months
  • Audit trail gap — no record of which invoices have been reported

Fix

  1. Add reportedInGstr1 Boolean @default(false) to both models
  2. Add reportedInGstr3b Boolean @default(false) to both models
  3. Stamp flags after GSTR-1/GSTR-3B export
  4. Add composite index for efficient filtering

Related: Part of Organizational Finance Deep Dive (2026-09-03). See bugs/financial-audit/10-org-finance-deep-dive.md. Pairs with #1361.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    complianceTax, regulatory, DPDP, consent, legal exposurefinancePayments, refunds, earnings, payouts, invoicing, ledgertech-debtRefactors, structure, dependency upgrades, cleanup

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions