I was looking to post a feature request around this area, but since one is already open I thought it best to add my thoughts here.
For me, I often issue estimates which contain multiple services. For example (for our graphic design work) we might include design of Letterhead, Business Cards and a website, plus printing of the Letterhead and business cards.
Often these are completed at different times - i.e the Letter Head and Business Card are designed and printed, but the website isn’t completed until a few weeks later when we get the content from the client.
For me the option to open an advanced dialogue box and say per line on the estimate “invoice X qty of this line”. For example (I hope the table displays ok):
In the “to invoice” box you enter a value up to the number quoted and remaining would be reduced. Therefore you could invoice some lines and not others, and indeed invoice part lines.
This is effectively what Sage Line 50 does (or at least used to when I last used it). They also allowed decimal ‘To Invoice’ values although this is more complex and I’m not sure is necessary.
In the backend you would need to track how many items have been invoiced which I assume would require an extra database field, and a new interface / pop up for the form - but shouldn’t need to be too complex. Possible also adding an new status of Part Invoiced would also make sense.
For those invoicing in stages, the estimate could be split into multiple lines. For example the original poster on this thread could create an estimate with 3 lines and then bill each line separately. Or the person with the deposit could have the deposit and balance on separate lines.
You could even leave the existing system as is (so most customers don’t see an extra screen) but have an ‘advanced invoice’ link for those of us who do need this. This also allows the potential to report on how much work is on the books but not yet invoiced (i.e. Work In Progress calculations).
Sorry for the long reply!