Compiere does Jboss-posting of confirmed documents such as Invoices to the Accounting Fact table after they have been processed Complete. In your case, u may not want to Complete them until u update the InvoiceDate.
U may try sumtin like turn off the JBoss Service to post the accounts so that it doesnt until u are ready, but this sounds non-elegant.
U said u allowed the InvoiceDate to be still modifiable, then u can check if the aging still comes out right, even after Complete (which post to accounts that will not change its dates as its completed and non deletable)
I trust u are using a development instance. So u can experiment with various scenarios and feedback what the Aging (and Accounts) says.
U said that Compiere doesnt have that customer confirmation date in Invoice. Well, lets say u created that one, then what happened? U still wait about 5 days max for customer to sign and return and u update back rite? And its not considered invoiced, until delivered, the date stated on the customer return slip (rite?). So u still have to worry how to capture and save that piece of info.
If so, and in a more elegantly presented form, why not use the Shipment (Customer) instead of Invoice to capture the confirmation of delivery to customer? Then u will need to modify the AgingAnalysis program to take ShipmentDate instead and that for a Java programmer isnt too difficult.
Accounting consquences are as stated in the Compiere User Manual which u must have bought from www.compiere.org
Do tell me where your mortars land. Have a nice day