Alternative Things:The Plan

From Altopedia
Jump to navigation Jump to search

Here is a rough plan of the activities that will be carried out in order to reach the 'Beta' stage of Alternative Things. See the Talk:Alternative Things:The Plan page for up to date information about the plan.

  1. Install latest OpenCart software onto http://www.deadsouls.co.uk (our test site for Alternative Things - this will also be referred to as TST)
  2. Clear out legacy data
    1. Clear out DEV & write clear-down script
    2. Test DEV still works (basic functionality)
    3. Verify clear-down script in TST
  3. Start building testing framework
    1. Set up test repository on Altopedia
    2. Add tests in a manner that works with automation (i.e. some form of keyword based language)
  4. Update DEV site with historic upgrades (the changes made before working on Altopedia)
  5. Update TST site with historic upgrades
  6. Add test data for Dead Souls t-shirts
    1. Add sample test data to DEV
    2. Add sample test data to TST
  7. Build automated testing framework
    1. Setup PHPUnit in DEV
    2. Setup Java based WebDriver in DEV and TST
    3. Ensure all new functionality has an automated test associated with it
  8. Build 'manage store' capability
    1. Add 'store login', which is a separate login for store admins
    2. Add 'manage stock' functionality to successful 'store login'
    3. Add 'add item' functionality to 'manage stock'
      1. Name
      2. Description
      3. Current stock
      4. Made to order?
      5. Base price
      6. Attributes
    4. Add 'modify item' functionality to 'manage stock', this allows modification of same categories as add item
    5. PayPal integration
      1. Integrate with PayPal using a single Alternative Things account
      2. Set up site so that PayPal integration is dependant on store
    6. Add 'manage payment details' functionality to 'manage store'
      1. Add 'payment via Alternative Things' payment profile (this profile is where the customer pays Alternative Things and in turn AT pays the store)
      2. Add 'PayPal account' payment profile (allows store to specify their PayPal account details_

The below processes are a summary of how a user would do something on Alternative Things, these will get moved to separate pages eventually

Checkout Process

Single store

  1. User adds one or more items to basket
  2. User clicks proceeds to checkout screen
  3. User fills in all necessary details to complete order, clicks pay with PayPal (only option) then completes PayPal payment process
  4. During PayPal payment process, if user cancels the transaction they are returned to the checkout screen if they complete the payment they are taken to the AT payment confirmation screen
  5. Order is forwarded to store email address(es)
  6. PayPal payment has been made to either AT or store. If AT, then AT will make payment to the store in accordance with the agreed terms (normally payment will be made to a store on a to-be-defined day of the month for the preceding month's order)


  1. Our thoughts here, it would be better to not allow the user to pay via AT and to pay directly to the store, although, we did have a plan for lumping all the payments together into the one window, but to make the payment to each store be handled separately.
  2. We're also considering Sage pay over Pay Pal, but this would be for the AT store within the AT site, but I would think that the individual stores would require the Pay Pal option.