Thank you for your solution. It does partially work. Here is why;
When raising an estimate you are still not sure that the client or customer will give you the project so creating it under a project will make us have thousands of projects which we will eventually have to delete to remain with the ones clients confirmed estimates and thus we converted to invoices for payment.
To me, it feels like double work.
Secondly, your solution of deleting an invoice then editing an estimate to a new invoice under projects creates a new invoice number all together which confuses the client which invoice was the actual one. Unless you do say you can always change the invoice number of an invoice once created.