From programming point of view, time, spent on save or on update, depends on the number of items on the order or invoice matrix.
As for every row you have to run record check , to update support registers, to create invoice transaction and etc.
Do they usually have many items in one record ? Do they have some customization with order/invoice record actions ?