Precisely; it depends. A site with a single item or up to say, 10 items, "buy now" should lead to a single page on SSL with the items and checkout all in one.
In general, there are usually a few more things to consider, it's going to depend. The short answer is as few as possible. Here's our scenario.
Add To Cart: One submit, and brings back to the page you were on with "Successfully added" (paraph.) at the top. This is where Javascript is a REAL enhancement, if a required option is not selected, you capture it immediately (but of course, it duplicated on back end.).
Bad: click the item, it brings you to a add to cart verify, then a worthless success page that offers no "return to where I was." Even worse for the shopper (IMO) are any number of upsell pages on the way, goDaddy is an upsell nightmare in this respect.
Checkout: If your shipping and other items are pre-set or otherwise compartmentalized, you can do this in one click. Hit the "cart" or "check out" icon and it should be a single point at which you can check out or update the cart.
Ours is a little different. It uses calculated shipping, and takes an extra stock to help the shopper along in reference to out of stock items, both of which which require a few parameters. So we have it down to 4, represented by a "1-2-3-4" graphic across the top to let the shopper know where they are at any given point and how close they are to done.
1. Select country and enter zip code if country is U.S.
2. Check stock: our server-side programming checks items in the cart, and if they are in stock. If items are out of stock, this page allows them to select
a. Send in-stock items now, the rest when they come in at no additional charge
b. Hold entire order until all items are in
c. Remove out of stock items from my order
3. The next steps makes adjustments (if C is selected above) and uses the country and zip information to connect with USPS/UPS real-time and returns not one, but ALL of the available shipping. They see any number of links:
"Select the shipping method:
- USPS Express Mail - $40.00 - 2 day delivery
- USPS Priority Mail - $12.00 - 3-5 business days
- USPS Parcel Post - $8.00 - 5-14 business days
"
4. Enter CC info, which silently connects to our processor and the visitor never leaves the site.