CheersagarGarment manufacturing and trade

Garment accounting software and reporting: what we built for Cheersagar

Cheersagar keeps its books in Zoho and its customer relationships in an internal CRM. We built the layer between them on FastAPI and PostgreSQL: the integrations, the reporting the business runs on, and an AI layer that writes the read on a number without ever producing the number. Job work reconciliation software and fabric valuation reporting are the two halves that decide whether a margin figure survives scrutiny.

Read the study

Build fingerprint

Where it runs, how we engaged, and what it was built on.

Market
India
Engagement
Dedicated resources
Platforms
Web
Stack
5 technologies

Technologies

  • FastAPI
  • Python
  • PostgreSQL
  • Zoho integration
  • Internal CRM integrations
Duration:
Three years
Public links:
None. Internal finance software.

Trusted by
Global Industry Leaders

Al Amri Express
Cheer Sagar
MRO Supply
BankSathi
DoraDori
Kroolo
StyleBank
Hire Right
Cintas
Up in the Air
Famepilot
Swedishness
Corrib Coil
iCare Heal
TWAM
NDC: National Distribution Company Oman
Moneteo
Algora
Numerology
G4Girl

What makes garment accounting software hard

What makes this problem genuinely hard - before any client name enters the page.

Goods move without a sale

Under Section 143 of the CGST Act a principal sends inputs or capital goods to a job worker without paying tax. They travel on a delivery challan under Rule 45, not an invoice, so the system has to issue a document that carries quantity and value but posts no revenue. Returns are declared in ITC-04, half yearly above 5 crore aggregate turnover and annually at or below. Inputs have one year to come back and capital goods three, or the dispatch is deemed a supply.

The rate depends on the piece, not the customer

Textile and apparel job work sits at a concessional 5 percent under SAC 9988, while residual job work went to 18 percent under the two slab change effective 22 September 2025. Garments are 5 percent up to 2,500 rupees per piece and 18 percent above. The threshold is per piece, so one invoice line can cross it while the line under it does not, and rate has to resolve from unit price at posting.

Compliance runs on clocks

E-invoicing applies from 5 crore aggregate annual turnover, and since 1 April 2025 taxpayers at 10 crore and above have 30 days to report a document to the IRP, after which no IRN is issued. E-way bills are needed above 50,000 rupees, including challan based job work movement, which most generic ERPs never emit.

Valuation is where the errors hide

Closing stock has to cover work in progress mid line with partial labour absorbed, goods at a third party, and fabric in transit. Consumption posts at actual issue against a cut order. Backflushing on finished goods receipt back-calculates from standard, erasing every yield variance the season had to teach.

The situation, and what we built

Cheersagar keeps its books in Zoho and its customer relationships in an internal CRM that predates the accounting move, and neither system knew the other existed. Any question crossing the two, which style is earning, which customer is slow, how this month reads against the last, meant exporting from both and joining by hand in a spreadsheet. The second problem was that nobody wanted a new place to look: the people who need these numbers are not the people who log into either system, and a garment business runs on a morning figure rather than an interactive one. So the brief was not a dashboard. It was to make the joined view exist, keep it current, and put a defensible read on top of it.

The Zoho integration and its token problem

One service owns everything that talks to Zoho: invoices, sale orders, credit notes, customers. It holds the OAuth refresh, so no other part carries a credential and rotating access is one change.

The internal CRM on the other side

The CRM holds what the accounting entries do not explain: who the customer is to the business, what was agreed, what is in flight. That is what turns a ledger row into something a person can act on.

A reporting model over PostgreSQL, not over either source

Accounting and CRM extracts land in one schema and join there, so reports read from a shape designed for reporting rather than two systems designed for transactions.

AI based business decisions, with the model kept off the arithmetic

The figures are computed first. The model then reads a completed row set and writes what moved, what it means and what to look at. It never produces the number it describes.

Tradeoffs

Decisions, and what each one cost

Every choice closed off something else. Those costs are stated, not hidden.

Zoho stays the book of record. The platform never posts the primary entry

Instead of: A ledger inside the product, with Zoho as one more destination. Statutory accounting has to live where the returns are filed from, and a second ledger creates a reconciliation nobody asked for.

What we acceptedEvery figure the platform shows is a derived copy, only as fresh as its last sync, so a report compared against Zoho mid afternoon can differ without either being wrong.

The model writes commentary over aggregates it did not compute

Instead of: Letting the model query and calculate. A language model drafts good narrative over a number that is already correct. It is not an arithmetic engine, and a wrong figure in a finance report costs more than a missing paragraph.

What we acceptedEvery number the commentary might cite has to exist before the model runs, so a new angle of analysis means a new aggregate, not a new prompt.

Join accounting to CRM once, centrally, rather than per report

Instead of: Each system reporting on itself, the join left to the reader. Every question worth asking crosses the two, and a join repeated per report is a join that disagrees with itself.

What we acceptedA Zoho customer to CRM account mapping somebody has to maintain. When it drifts, the failure is a quietly missing row rather than an error.

Reusable

Garment movements, and the document each one actually needs

Most accounting packages can only emit an invoice.

MovementDocumentRateAlso required
Inputs out to a job workerDelivery challan, Rule 45No tax on the movementE-way bill above 50,000; ITC-04 as sent
Processed goods returningChallan against the originalNo taxITC-04 as received; back in one year, three for capital goods
Job work billed backJob worker's tax invoice5 percent textile and apparel, SAC 9988; 18 percent residualNothing further
Garment sold, 2,500 rupees or less per pieceTax invoice5 percentIRN from 5 crore AATO
Garment sold, above 2,500 rupees per pieceTax invoice18 percentIRN from 5 crore AATO

Row one is where stock leaves the books entirely if the system can only emit invoices.

Delivery

What shipped

Capabilities delivered and the scope of the build - not results attributed to it.

Capabilities

  • Zoho integration covering invoices, sale orders, credit notes and customers, with OAuth refresh held in one service
  • Internal CRM integration, bringing the commercial record next to the accounting record
  • A reporting model on PostgreSQL where the two sources join
  • Operational and financial reports the business runs on
  • AI written commentary over completed figures

Scope

  • Scope, not results: two source systems reconciled into one reporting model
  • Three year engagement on dedicated resources

Scope of the build, not results attributed to it.

Building something with the same constraints?

Bring us the part you think is hardest.

Risk, ownership and commercials

Credentials

Zoho authentication and token refresh sit in one service, so rotating access is one change in one place.

Book of record

Zoho stays the book of record and the reporting model is a derived copy, so a disputed figure is settled in Zoho, never in a report.

Handover

What transfers is the mapping and the definitions: how a Zoho customer resolves to a CRM account, and what each reported figure counts. The code is the smaller half.

Engagement model
Fixed scope
Team
3 backend, 2 frontend, 1 QA, 0.5 DevOps and a part time project manager
Rate band
40 to 100 USD per hour by role, blending to 60 to 70
How we quote
No fixed price before a discovery that produces the integration inventory and the report list.

Reflection

What we would do differently

The customer mapping between Zoho and the CRM is maintained by hand, and it should have had an owner and an exception report on day one rather than after the first argument about a missing account. It is the quietest failure in the system, because a broken mapping produces a report that is complete looking and wrong. Second, the commentary is only as good as the figures beneath it: given a style with thin history the model still writes a confident paragraph. A minimum evidence gate is the next change.

Why send goods to a job worker on a challan instead of an invoice?

Section 143 of the CGST Act lets a principal move inputs or capital goods without paying tax, and Rule 45 makes the delivery challan the document. An invoice would record a sale that never happened and take stock off the books while the principal still owns it. The movement goes into ITC-04 instead.

Does the AI produce the numbers in these reports?

No. Every figure is computed before the model is called, and the model writes over a finished aggregate. Once a model computes a number in a finance report, nobody downstream can tell a rounding error from an invention.

Why does the same garment carry two different GST rates?

The threshold is per piece: 5 percent at or below 2,500 rupees, 18 percent above. Rate resolves from unit price at posting, not from a customer or item setting.

Context

Where this sits in our work

Talk to an engineer, not a salesperson

Tell us what your operation runs on today.

Our Success Stories

Real feedback from the people we've proudly partnered with.

Brooklyn Foster profile

Brooklyn Foster

Sales Director |Cintas

United States

GoodFirms
"

Zyneto Global Technologies provided excellent project management and technical expertise throughout the engagement. The team was responsive, collaborative, and adaptive, ensuring the project met our expectations and set a strong foundation for future growth.

"
Verified Review
Rating: 5 out of 5
Krystian Chlebek profile

Krystian Chlebek

Founder & CEO |Moneteo

TechBehemoths
"

We engaged Zyneto to design and develop a custom web platform for Moneteo, aimed at improving project management, data tracking, and collaboration across internal teams and external partners. Their work included full-stack web development, custom modules for workflow automation, API integration, and comprehensive testing.

"
Verified Review
Rating: 5 out of 5
Kevin Scott profile

Kevin Scott

CEO |E-Commerce Platform

Clutch
"

Overall, their responsiveness and timely deliveries contributed positively to the project's success. The client achieved better data management and quality. The service provider delivered the project on time and ensured prompt responsiveness throughout the engagement. Their innovative approach was outstanding.

"
Verified Review
Rating: 5 out of 5
WhatsApp
Email
Book a Meeting