[Workflow question] Billing a project with a deposit

Hey all,

We use ERPNext primarily to bill time and material projects through the use of Project and Timesheet functionality. We are entering a world of quoted projects, and usually they come with a deposit, and progress draws. My first time trying this, I created a new sales invoice for the deposit, but the timesheets were linked when the invoice was saved. I’m trying to figure out if this will present any issues in the future if there are any Change Orders (that would be billed on a T&M basis) and needing to track the actual hours spent for them.

Is using Sales Invoice the right way to do this? Or should Sales Order be used? I noticed with the project Costing and Billing section, it doesn’t cover Sales Orders. I’m curious if the combination of billing formats present an issue that can’t be covered without creating a new project.

I think the first step would be to be able to override the automatic billable timesheet fetching in Sales Invoice (as much as we love it)

Any contractors out there facing this and utilizing project costing/billing accurately?


Can you please elaborate the idea of deposits? Are you referring to advance payment received from the Customer for a Project?

Yes! Exactly. Is this to be done through a purchase order to present the request for advance payment to the customer, and then use the advance payment against a new sales invoice?

If so, in a sales environment working from quotes, do sales invoices then just then contain a generic item name for the progress draws to balance those advance payments? (Progress draws meaning that Quoted projects would work by 25% percentages of quote cost based off of milestones).

Lastly, are purchase orders linked to project dashboards without making a cost center, or is there a better way to do this all together?


Hey @umair. Sorry to tag you again on this, but it sounds like you had a specific understanding of how the workflow should operate. Is there any chance to elaborate from the previous post?