Hi,
I am a non techie but understand it like this.
First if you haven't already, maybe take a look at the link below.
http://www.viart.com/online_store_order_statuses.html
This talks you through the status applied (by default) at different stages in the order process.
You will then need to decide what settings to apply to best suit your own company.
This is what we do. If you only really want to allow "paid" orders, you could set all the prelimanary statuses to not reserve stock and only when the system has applied a paid status is the stock reserved. e.g if they pay by card.
You would then have to manage the orders which did not reach "paid" status by deleting them in the sales/orders section in the same way you could delete all "failed" orders. e.g if their card failed.
If however you allow clients to order online to perhaps send a cheque at a later date, you would need to also reserve stock for the status "confirmed by user" which is the final stage if using a personal payment system such as "pay by cheque" or you could create a whole new status which you could apply manually via admin after the order is received. There are so many options.
We change orders from "paid" to "being processed" to "picked" and then "shipped" (at which point the customers gets an auto email) this is to enhance the user side of things when they check orders in the my account section.
Sorry I was unclear on what you meant by this - "remove them from their cart before reaching the payment details"
Basically if all the status settings (except paid) where set to "release" stock. The stock figure for each item would stay the same until paid status was applied. This would not however remove items from their basket. After paid status is applied you could in theory then apply a "release" status e.g new order placed this would then put the items from the order back into stock, then if you applied paid status again the stock figure would reduce accordingly.
Hope this helps, and that I understood you correctly.