Hi,
That sounds like an interesting project. Please send us a link when it is up and running.
What you need to do is to call createOrder() and only call saveOrder() when all of the details have been confirmed. The method createAndSaveOrder() that you are using was created to simplify the process but you lose some flexibility along the way. An example of how to create and save an order can be found here :
http://www.konakart.com/apiexamplesfaq.php#CanYouShowMeAnExample by downloading the zip file.
The createOrder() method, returns a partially populated Order object which hasn’t yet been saved in the DB. To change the billing address, you can just edit the order object directly. To change the delivery address, you should make an API call since this modification could affect the tax rates applied on the products.
When all of the details are finally confirmed by the user, you can then save the order and it will be persisted in the DB.
Good luck,
Julie