Designing the Check Out Processes


Introduction.  I repeat earlier statements in this page, most everyone has done some sort of shopping on the internet.  The cleaner and easier the shopping experience can be made for the shopper, the better.  Certain standard designs exist, but shoppers are always likely to see something different someplace.

For our checkout process we want shoppers to

  • not be able to enter the check out process unless they have ordered something
  • access a pre-existing profile to be able to make use of shipping and billing information already stored
    • create a new profile to be written to the profile table OR
    • access an existing profile from profile table that can't be updated here
  • modify their shipping information for this purchase only
    • written to order_data table
  • display/select shipping and billing information
  • determine shipping and taxes
    • written to basket table
  • display the order/shopping basket with all costs

We are intentionally not allowing the shopper to update their profile during this process as it overly complicates the flow and will likely result in confusion.  If a shopper wants to update their profile they can do this via the links and pages we have already developed.

We will need to access information from tax and shipping tables in order to calculate this information.  We have also chosen to write some of our information to the basket table since in this configuration we can easily find out things like

  • what percentage of shoppers start ordering items but don't actually purchase
  • data mine other information like total costs including taxes and shipping