Loading...
 
(Cached)

Shopping Cart Tiki7

Under work by CitadelRock. The following is the plan, still subject to review/adjustment/comments etc...

See attached screenshots for preliminary tracker definitions.

Step 1: Basic shopping cart


All profile and tracker driven, no new code or preferences needed.

Trackers:

  • Products tracker


Wiki pages:

  • Shop interface


Plugins used:

  • Add to cart


Modules used:

  • Cart
  • Payments outstanding

Step 2: Support for Product bundles


Code to extend add to cart for product type == “product bundle”. If yes, then look in Bundle Product Products tracker for products in tracker and add those individually.

Trackers:

  • Bundle Product Products


Wiki pages:

  • UI to add/edit bundles


New preferences needed:

  • Tracker ID of Bundle Product Products
  • Field ID of Bundle Product Products: Bundle Product ID
  • Field ID of Bundle Product Products: Product ID
  • Field ID of Bundle Product Products: Number of Product

Step 3: Inventory management


Profile will extend previous step. User will have to provide existing tracker ID of Products tracker.

Trackers:

  • Shared Inventory tracker
  • Additional tracker fields in Profile tracker
    • Inventory type: none, internal, shared
    • Inventory total
    • Inventory on hold
    • Shared inventory ID


Wiki pages:

  • Extended UI to modify products (with inventory settings)
  • UI to create shared inventory


New preferences needed:

  • Tracker ID of Products Tracker
    • Field ID of Products: Product ID
    • Field ID of Products: Inventory type
    • Field ID of Products: Inventory total
    • Field ID of Products: Inventory on hold
    • Field ID of Products: Shared Inventory ID
  • Tracker ID of Shared Inventory Tracker
    • Field ID of Shared Inventory: Shared Inventory ID
    • Field ID of Shared Inventory: Inventory total
    • Field ID of Shared Inventory: Inventory on hold


New code needed:

  • When Add to Cart happens, to modify Inventory on Hold
  • When Purchase is completed, to modify Inventory Total
  • User cart timing out (with warning to user to complete shopping by x time)
  • When user cart times out, to modify Inventory on Hold
  • Add to cart to have sold out message based on inventory checking, including message to say that there may be stock but currently on hold by users (i.e. Try again later, perhaps they will become available)

Step 4: Store purchase details in tracker


Profile will extend previous step. User will have to provide existing tracker ID of Products tracker.

Trackers:

  • Orders tracker
  • Order items tracker


Wiki pages:

  • UI for shop owner to review orders


New preferences needed:

  • Tracker ID of Orders Tracker
    • Field ID of Orders: User
    • Field ID of Orders: Time
    • Field ID of Orders: Order Total
    • Field ID of Orders: Tiki Payments ID
  • Tracker ID of Order Items Tracker
    • Field ID of Order Items: Order ID
    • Field ID of Order Items: Product ID
    • Field ID of Order Items: Price paid
    • Field ID of Order Items: Amount bought


New code to execute when order is made to record details of order.

To check (when reporting) if order is in fact paid for, the code will have to check the Tiki Payments database table, for this, maybe a new field type could be used to display the status.

Step 5: Taxes

Trackers:

  • Taxes tracker
  • Product taxes tracker


Wiki pages:

  • UI to create/edit different taxes


New preferences needed:

  • Tracker ID of taxes tracker
    • Field ID of Taxes: Tax ID
    • Field ID of Taxes: Tax type (percentage/flat rate)
    • Field ID of Taxes: Tax percentage rate
    • Field ID of Taxes: Tax flat rate
    • Field ID of Taxes: Tax on tax
  • Tracker ID of product taxes tracker
    • Field ID of Product Taxes: Product ID
    • Field ID of Product Taxes: Tax ID
    • Field ID of Product Taxes: Apply only when (Vertical bar separated conditions in the form trackerId:fieldId=value where tracker trackerId is a user tracker, for example, "1:10=Quebec|1:11=Canada" where tracker 1 is the user profile tracker specifying the shipping info and 10/11 is the fieldId for Province and Country respectively.)
  • Tax note to display to users (e.g. Tax registration number)


New code:

  • To select active taxes to apply for each product
  • Tiki Payment to be enhanced to apply taxes on each item, and to show the amount for each item, and totalling it up.

Step 6: Discount coupons


Trackers:

  • Discount coupons
  • Discount coupon usage


Wiki pages:

  • UI to create/edit discount coupons
  • UI for shop owner to review discount coupon usage


New modified Tiki Payments UI to:

  • Check for discount coupon feature
  • Allow applying of discount coupon leading to modifying of invoice


New preferences needed:

  • Tracker ID of Discount coupons
    • Field ID of Discount coupons: Discount coupon ID
    • Field ID of Discount coupons: Discount coupon code
    • Field ID of Discount coupons: Start validity
    • Field ID of Discount coupons: End validity
    • Field ID of Discount coupons: Reusable
    • Field ID of Discount coupons: Last used
    • Field ID of Discount coupons: Discount type (flat rate/percentage)
    • Field ID of Discount coupons: Fixed value
    • Field ID of Discount coupons: Percentage value
    • Field ID of Discount coupons: Only good for product
  • Tracker ID of Discount coupon usage
    • Field ID of Discount coupons usage: Discount coupon ID
    • Field ID of Discount coupons usage: User
    • Field ID of Discount coupons usage: Used at
    • Field ID of Discount coupons usage: Associated Order
    • Field ID of Discount coupons usage: Amount redeemed


Code to:

  • Check validity of discount coupon code entered
  • Apply and modify invoice based on application of coupon
  • Record discount coupon usage

Keywords

The following is a list of keywords that should serve as hubs for navigation within the Tiki development and should correspond to documentation keywords.

Each feature in Tiki has a wiki page which regroups all the bugs, requests for enhancements, etc. It is somewhat a form of wiki-based project management. You can also express your interest in a feature by adding it to your profile. You can also try out the Dynamic filter.

Accessibility (WAI & 508)
Accounting
Administration
Ajax
Articles & Submissions
Backlinks
Banner
Batch
BigBlueButton audio/video/chat/screensharing
Blog
Bookmark
Browser Compatibility
Calendar
Category
Chat
Comment
Communication Center
Consistency
Contacts Address book
Contact us
Content template
Contribution
Cookie
Copyright
Credits
Custom Home (and Group Home Page)
Database MySQL - MyISAM
Database MySQL - InnoDB
Date and Time
Debugger Console
Diagram
Directory (of hyperlinks)
Documentation link from Tiki to doc.tiki.org (Help System)
Docs
DogFood
Draw -superseded by Diagram
Dynamic Content
Preferences
Dynamic Variable
External Authentication
FAQ
Featured links
Feeds (RSS)
File Gallery
Forum
Friendship Network (Community)
Gantt
Group
Groupmail
Help
History
Hotword
HTML Page
i18n (Multilingual, l10n, Babelfish)
Image Gallery
Import-Export
Install
Integrator
Interoperability
Inter-User Messages
InterTiki
jQuery
Kaltura video management
Kanban
Karma
Live Support
Logs (system & action)
Lost edit protection
Mail-in
Map
Menu
Meta Tag
Missing features
Visual Mapping
Mobile
Mods
Modules
MultiTiki
MyTiki
Newsletter
Notepad
OS independence (Non-Linux, Windows/IIS, Mac, BSD)
Organic Groups (Self-managed Teams)
Packages
Payment
PDF
Performance Speed / Load / Compression / Cache
Permission
Poll
Profiles
Quiz
Rating
Realname
Report
Revision Approval
Scheduler
Score
Search engine optimization (SEO)
Search
Security
Semantic links
Share
Shopping Cart
Shoutbox
Site Identity
Slideshow
Smarty Template
Social Networking
Spam protection (Anti-bot CATPCHA)
Spellcheck
Spreadsheet
Staging and Approval
Stats
Survey
Syntax Highlighter (Codemirror)
Tablesorter
Tags
Task
Tell a Friend
Terms and Conditions
Theme
TikiTests
Federated Timesheets
Token Access
Toolbar (Quicktags)
Tours
Trackers
TRIM
User Administration
User Files
User Menu
Watch
Webmail and Groupmail
WebServices
Wiki History, page rename, etc
Wiki plugins extends basic syntax
Wiki syntax text area, parser, etc
Wiki structure (book and table of content)
Workspace and perspectives
WYSIWTSN
WYSIWYCA
WYSIWYG
XMLRPC
XMPP




Useful Tools