Running a solar EPC business

    Billing, cash flow and receivables for solar EPCs

    Staged payments, long final milestones and bank guarantees turn profit into a cash problem. How to track milestones, retention and guarantees as dated obligations.

    GC
    GarunaCDX Editorial
    Editorial team
    Oct 19, 2026 2 min read
    Key takeaways
    • Profit and cash run on different clocks.
    • In our illustrative example, a project needs 37.5% of contract value funded at peak while 15% profitable.
    • A milestone is a trigger plus evidence plus a date.
    • Retention and bank guarantees are dated obligations; alert before they lapse.
    • Do not state a GST rate for your contract without confirming with a CA.

    Quick answer

    Track receivables by milestone and expected date, not by invoice. Record for each milestone the contractual trigger, the evidence needed to bill and the blocker if late. Track retention and bank guarantees as dated obligations with alerts. Watch three numbers: peak funding need per project, days waiting on approvals, and age of the final milestone. Confirm GST treatment of your contract structure with your chartered accountant.

    The cash gap

    You pay suppliers early and collect in stages. In the illustrative example in receivables and working capital, an Rs 80 lakh project at 15% margin needs Rs 30 lakh funded at its lowest point, 37.5% of contract value, and stays negative three months longer if commissioning slips.

    37.5%
    Peak funding / contract

    Illustrative, assumed numbers

    15%
    Planned margin

    Same example

    +3 months
    Stay negative if commissioning slips

    Same example

    These are scenario numbers, not results from any project.

    What to put in the system

    • Milestone record: trigger, evidence, trigger date, invoice date, expected and actual collection, blocker, owner.
    • Retention: amount, release condition, defect-liability end, alert 30 and 60 days ahead.
    • Bank guarantees: type, amount, bank, beneficiary, issue date, expiry, claim period, fee, release owner; alert at 90, 60 and 30 days.
    • Link to approvals: if a milestone waits on commissioning or a meter, show the approval status beside it. See approvals.

    The GST caution

    Reported sources say most solar goods moved to a 5% GST rate from 22 September 2025, but the pages we checked disagreed on how installation and a combined supply-and-install contract are treated. We state no rate for your contract. Confirm with a chartered accountant and the current notifications. This is not tax advice.

    Where to go deeper

    Do this first

    List your open bank guarantees with expiry dates, and your three largest unbilled milestones with what evidence each lacks.

    Next: approvals, net metering and subsidy. Back to start here.

    Cash figures are from our assumed worked example in the linked article. GST: a Tally Solutions page reports 5% on most solar products as of 22 September 2025 and is inconsistent on the installation split; no rate is stated here.

    Your verdict
    Was this article useful?
    GC
    Written by
    GarunaCDX Editorial
    Editorial team

    Engineers, product and growth folks at GarunaCDX writing about the systems we build for clients.

    View all articles
    Share
    All guides

    Keep going with the next handbook.

    Chapter-by-chapter guides from the engineers who build these systems for clients.

    Browse guides
    FAQ

    Frequently asked questions

    Suppliers are paid early and customers pay in stages, so the EPC funds the gap. A stalled approval stretches it.

    Milestones with trigger, evidence, expected date and blocker, plus retention release dates and bank guarantee expiries.

    The GarunaCDX build log

    Industry insights, once a month

    New case studies, healthcare, marketplace, B2B SaaS and industrial breakdowns, and the engineering notes behind what we ship. One short email a month, no fluff.

    We never share your data — see our Privacy Policy for details.