Difference between revisions of "Web Stores and Shopping Carts"

From SOBAC Wiki
Jump to navigation Jump to search
(Clean up meeting notes)
(Separate out the Meeting Notes)
Line 17: Line 17:
 
* [https://www.techsoupcanada.ca/en/shopify-donation-for-lower-budget-organizations/product/advanced-shopify-plan-6-month-initial-subscr Shopify from TechSoup Canada]
 
* [https://www.techsoupcanada.ca/en/shopify-donation-for-lower-budget-organizations/product/advanced-shopify-plan-6-month-initial-subscr Shopify from TechSoup Canada]
  
−
 
+
* [[Web Stores and Shopping Carts/Meeting Notes 2018-07-16]]
−
==== Meeting Notes ====
 
−
===== Introductions =====
 
−
* Where is everyone coming from? Sam Nabi will tailor his tour to our needs.
 
−
** Nonprofit org wants online registrations with payment
 
−
** Bookseller
 
−
** Online donations
 
−
** Goods and Services
 
−
** Media Production (rental of cameras, lights, &c)
 
−
* People want to make things easier for sellers and buyers
 
−
 
 
−
 
 
−
* Sam started as a city planner, moved to a startup doing web development
 
−
** Then, Sam bought a retail store, [https://www.fullcirclefoods.ca/ Full Circle Foods]
 
−
** ...the inherited system is a series of linked spreadsheets :/
 
−
** Full Circle Foods has 90 suppliers. Seems a lot, but many are small, local businesses
 
−
** Lots to be done digitizing the order system of Full Circle Foods
 
−
 
 
−
 
 
−
===== Shopkit =====
 
−
* https://github.com/samnabi/shopkit
 
−
* Plugin for CMS called "Kirby" https://getkirby.com/
 
−
* Sam sells code for other developers to use on their websites
 
−
** Doesn't want to deal with the actual credit card processing
 
−
** Or poor installations by those developers
 
−
 
 
−
* Self-hosted PHP-based solution
 
−
** Sold as a subscription service
 
−
** Sam would hold the code and provides the online webhosting
 
−
 
 
−
 
 
−
* Using [https://stripe.com/ca Stripe] and [https://squareup.com/ca Square]
 
−
 
 
−
* Sample sites:
 
−
** an indiegogo type site: https://coblisher.com/shop
 
−
** retail business: http://gourmetpassions.ca/kirby
 
−
 
 
−
 
 
−
* Sam provides the code, and can work it into the design of an existing web page
 
−
 
 
−
 
 
−
* Had an idea to pool resources for pooled shipping, delivery, advertising
 
−
** (not sure if this is a feature of ShopKit --Bob.)
 
−
 
 
−
 
 
−
* Sam is part of the Kirby CMS community
 
−
** Didn't have an ecommerce plugin, but there was an appetite for it
 
−
** Working over three years to develop Shopkit with the Kirby developers
 
−
** Kirby is a file-based PHP CMS (we like that)
 
−
*** Files are written in Markdown, still accessible if Web connection goes down
 
−
*** But there is a good GUI as well (good for marketers)
 
−
*** UI is decoupled from the data
 
−
 
 
−
 
 
−
* Sam gives a quick tour of a sample installation on GitHub
 
−
** https://github.com/samnabi/shopkit-sample-content/
 
−
** Kirby has multi-language support, i18n, l10n
 
−
** Also has categories, which Shopkit links to
 
−
** It's a system of API hooks, launched from the plugin to Kirby
 
−
** but Shopkit has all the templates for, eg. slideshows, created by Sam
 
−
 
 
−
 
 
−
* Purchasing flow:
 
−
** Select product, increase/decrease quantity, totals are updated
 
−
** Uses AJAX, but the site is not Javascript dependent
 
−
*** [https://adactio.com/ Jeremy Keith] is Sam's inspiration, he knows about good design.
 
−
** There can be different shipping rules, different tax rates for different localities
 
−
** Add personal details (name, e-mail)
 
−
 
 
−
 
 
−
* Tour of the back end
 
−
** Resetting passwords :)
 
−
** Sam has tried to make it easy for front-end users
 
−
** Adding products, adding categories
 
−
*** Products have variants with different prices, options that don't affect price
 
−
**** Small oversight: Options don't have different SKUs, no separate inventory
 
−
*** Changing the use of SKUs is not dependent on the purchasing process
 
−
** A "Featured Product" is displayed in the sidebar
 
−
** Feature request by developers: "Items Remaining In Stock"
 
−
** Another request: Individual e-mails for restocking
 
−
** Shipping Rules:
 
−
*** Can be different for all countries, one country,
 
−
*** Shipping rules UI created by Sam, but as part of the plugin (even though it shows in the Kirby UI)
 
−
*** Tax and shipping rules can be defined by the developer, but not through the WebUI
 
−
*** Sam take us for a deep dive into the shipping selection code
 
−
 
 
−
 
 
−
* Reporting in Shopkit
 
−
** Done from the Shopkit backend
 
−
** Invoices are created by PHP into PDF files using "dompdf" https://github.com/dompdf/dompdf
 
−
** Report invoices are generated dynamically every time, but from a static "transactions" file
 
−
** Added some widgets on the dashboard, eg. "Abandoned, Pending, Paid/Shipped"
 
−
** There are also site stats based on another Kirby plugin
 
−
 
 
−
 
 
−
* Payment Processing
 
−
** Implemented at "gateways" in Shopkit
 
−
*** Each gateway has a "process" and a "callback"
 
−
** Some processors (Square) expect money values to be in cents
 
−
*** Performing only integer operations on cents seems to be best practice
 
−
** There are thousands of processors, so Sam has created an open system for processor gateways
 
−
*** This separates the payment processing from Shopkit itself, absolving Sam of dealing with payment issues
 
−
** Payment processors provide an SDK for the gateway code
 
−
*** Each payment processor has its own API, unique for each installation.
 
−
 
 
−
 
 
−
* Testing
 
−
** No formal testing methodology
 
−
** Tries new code on a test site, Sam's own site
 
−
** Most bugs are caught by end-users (developers)
 
−
 
 
−
 
 
−
* Shopkit and Kirby aren't quite Free Software: Code is available for inspection, modification, but not necessarily for redistribution. But payment is on the honour system.
 
−
 
 
−
 
 
−
* There have been 200 issues logged in the Shopkit issue tracker; most are from Sam himself.
 
−
** Top question: Can I add Shopkit to an existing (Kirby) site?
 
−
*** Not really, Shopkit is a standalone application,
 
−
*** Shopkit is a good intermediate between a simple button, and a full-fledged e-commerce system.
 
−
* Shopkit's changes to Kirby are mostly in the "snippets", which might conflict with another Kirby installation's snippets
 
−
* Shopkit is a full point version behind the Kirby, always on the stable version.
 
−
 
 
−
 
 
−
* A look at the data: Order file
 
−
** A YAML file that builds up as order information is entereed
 
−
** Based on server's session ID (uniqueness?)
 
−
** File locking? Kirby has some file locking built in
 
−
** Sessions are now the same across tabs, but that may break with new Chrome tab isolation
 
−
 
 
−
 
 
−
'''Shopkit is a ''kit'', a standalone, turnkey application'''
 
−
 
 
−
 
 
−
* Kirby developer, Bastian Allgeier,  is known for Zootool, and making a living off Kirby
 
−
 
 
−
 
 
−
 
 
−
 
 
−
[[Category:KWNPSA Meeting Notes]]
 
−
 
 
−
 
 
−
==== General Business ====
 
−
* [http://bob.jonkman.ca/blogs/2018/07/06/sysadminday-dinner-2018-at-abe-erb-in-kitchener/ SysAdminDay Dinner] - 6:00pm on Friday, 27 July 2018 at Abe Erb Restaurant in Kitchener
 
−
** All System Administrators, Non-Profit, For-Profit, and their friends and relations are invited!
 
−
 
 
−
 
 
−
 
 
−
==== Future Topics ====
 
−
* See [[KWNPSA Requested Topics]]
 
−
* Need a topic for Monday, 20 August 2018 (Bob can't do I2P)
 
−
** [[Scripting Languages]] - August
 
−
** [[Purchasing and Procurement]] - September with Kris Braun
 
−
** [[Training]] - October
 
−
 
 
−
 
 
−
 
 
  
 
[[Category:NPSA]]
 
[[Category:NPSA]]
 
[[Category:Events]]
 
[[Category:Events]]

Revision as of 06:07, 19 July 2018

Web Stores and Shopping Carts

Date
Monday 16 July 2018 from 7:00pm to 9:00pm
Meetup Event
https://www.meetup.com/NetSquared-Kitchener-Waterloo/events/250380630/
Location
Room 1301 -- Conrad Grebel University College, 140 Westmount Rd. N., Waterloo, Ontario Map
Event Announcement
Web Stores and Shopping Carts/Announcement 2018-07-16

Does your NonProfit organization sell things? Does it provide paid services? Do you need a web presence for your sales? Will you need a separate server for your web store? Or can you add a shopping cart to your existing web site? Or is it better to outsource all online commerce?

Meet our guest speaker Sam Nabi, developer of Shopkit, and let's discuss what a System Administrator needs to join a NonProfit organization to the world of web commerce.

--Marc Paré & Bob Jonkman

Resources