Please use more descriptive subject line ('enhancement' could mean very many things) - this blog might be useful.
Even though I agree with honorary Laskhmipathi and others regarding the process, we have done something similar in the past but only with the orders. The requirement was to reject the order lines after the partial delivery has been completed. Such partial deliveries were usually because of material being out of stock. The business didn't want to attempt filling in the remaining quantities because the stock was taking a while to get and if we delivered more goods later, it was more likely to result in the customer return.
I'm not that familiar with the contracts (and am not sure what specific type we're talking about), but it might be possible that if the order line is rejected, it will update the contract without any additional effort (this piece seems quite reasonable). So essentially your requirement seems very similar to the above.
The technical update itself was done by standard BAPI, but how to identify such orders and when to update them is a different story (you'd need to get more specific requirements for that).
Still since this is not really best practice, I'd also suggest to check with the client what exactly are they trying to achieve and why. It's your responsibility to explain to them the SAP functionality and how it can be used for their business instead of just blindly applying the legacy functionality to SAP.