Thank you for the compliment
I likely won’t head in the direction of using a separate product table with a document as the template. In doing so you will not be able to leverage the power of ditto, ajaxsearch, wayfinder, etc. I do not know how large your shop is, MODx can handle roughly 5000 documents/products.
Here is the breakdown of have everything gets tied together:
The site has a plugin called gSession, which monitors for any items being added to the cart.
The site has a template with a call to a snippet named gCart.
gCart takes templates contained in chunks to output the cart.
The listing of Categories, Items within a category, and Policies is done by using a Wayfinder call. Categories are a document that is the parent of items. The category document’s content has a ditto call that grabs the pertinent information from all its children and has a chunk that displays the add to cart form.
The items (children of the category documents) contain TVs that hold its weight, price, discount code, etc.
I hope as this evolves, it will provide for seamless integrations for anyone that chooses to use it.