SlideShare a Scribd company logo
1 of 40
echo $msg->welcome;

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
echo $user->name;
●

Bob Bloom

●

Joomla consultant since 2007

●

JUGT since 2009

●

ecomm right from the get-go with Virtuemart

●

Tienda in 2010 – wrote Canadian add-on

●

Fork Tienda for J!1.5 = LaSalleMart 1

●

Fork Tienda for J!2.5 = LaSalleMart 2

●

New fresh LaSalleMart 3 for J!3 using FoF

●

Podcast = SouthLaSalleMedia.com

●

Blog = blog.SouthLaSalleCommerce.com

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
echo $msg->jugt

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
echo $msg->jugt;
●

Joomla User Group Toronto = local JUG

●

we are all volunteers

●

Wonderful group

●

Connection to the Joomla project, and networking with other
local pros, has been a critical aspect of my independent
consulting professional life

●

Toronto.Joomla.ca

●

I co-run Meetup.com/Joomla-User-Group-Toronto/ with Niv

●

Special Nov 07th workshop

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
echo $msg->topic;
Thank you for being here this evening.
The topic is Joomla ecommerce.
Focus on checkout this evening, based on questions from
JUGT over the last while; and, based on gi-nor-mous
mistakes my clients consistently make.
I invite questions as we go along.

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
echo $msg->caveat
Information contained herein have been obtained
from sources believed to be reliable, but are not
guaranteed.
No person or organization connected with this
presentation is responsible for the accuracy
herein; nor, is responsible for your reliance on
information so presented.

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
echo $msg->LaSalleMart
●

LaSalleMart 3 is from-scratch ecomm technology for Joomla 3+

●

Based on Akeeba's kick-ass Framework-on-Framework

●

This month is about prototyping concepts with FoF and building out first suite of
components with FoF

●

Initial release will have basic product/checkout functions

●

Vision of Joomla ecommerce is coming to fruition

●

Sep 2010 podcast sheds light: http://www.southlasallemedia.com/2010/tbbs21

●

FoF makes LaSalleMart 3 feel like Joomla ecomm feel like it should be

●

FoF will be included in Joomla 3.2, to be released in early Nov 2013

●

I will create my first Joomla distro with J!3.2. http://LaSalleCMS.com

●

See my LaSalleMart.com, blog site, and monthly podcasts, for updates.

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
if ($work == “hard”) { echo “success”; }
else { echo “blame consultant”; }
●

●

●

●

I can whip up a blog site fairly quickly. But I cannot
“whip up” an ecomm site.
ecomm sites involve a lot of detail and content
Dear Client: it's your site, not mine. It's your strategy,
not mine. It's your responsibility to make the site
profitable, not mine. Unless we have an arrangement,
which I aggressively avoid 110% of the time
There's this thing called User Testing. Clients who avoid
it tend to have crappy site revenue. I should call UAT
“revenue acid test”

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
if ($think) { echo “ka-ching”; }
else { echo “blame consultant”; }
●

There are hundreds of thousands, if not millions, of ecommerce sites. The days of “build it and
they will come” are way over. Successful concepts attract serious investment from competitors.

●

Brain Fart Alert: no online & offline (yes, offline!) e-strategy

●

Brain Fart Alert: eye-candy fetish + resist checkout issues

●

Brain Fart Alert: clients play their little games because they feel out-of-their-depth and out-ofcontrol with ecomm, but feel compelled to be in ecomm

●

Brain Fart Alert: clients refuse to learn any “e” in ecommerce

●

Brain Fart Alert: clients forget that we are in the Golden Age of Tech Start-ups

●

●

Brain Fart Alert: clients are completely oblivious to the need to own/control their domain
registration & website hosting – time and again I'm told to “just take care of it” --> Doh!
Brain Fart Alert: obsessed about site design + oblivious to cart abandonment issues

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
echo strrev("BACKWARDS!!");
●
●

●

●

●

emphasis frequently skewed to front-end
Shipping methods, payment methods, order
workflow are as integral as front-end
Shipping and payment method issues pose
show-stopper issues
You want the benefit of time to deal with these
issues before they can derail your launch date
!!S-D-R-A-W-K-C-A-B <<== REMEMBER!

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Checkout
●

Comprised of:
–

Customer registration;

–

Address management;

–

Shipping method;

–

Payment method;

–

Order confirmation;

–

Order processing;

–

Thank you!

●

Need to beta test – if you don't, your customers will!

●

Save some budget for customizing checkout

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Lead a Horse to Water
●
●

●
●

SEO stops at checkout
Once your customer enters your checkout,
want to consummate the sale
Once in checkout, need to avoid abandonment
Nice infographic at
http://wikimotive.com/wikiblog/fight-digital-cartabandonment-infographic/

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
SSL
●

“Secure Socket Layer”

●

Your buyers expect to see “https://” during checkout

●

Payment processors require SSL when accepting CC's directly on your site

●

$$ range from Nominal to Nutty

●

Sequence of installing SSL:
–

1) buy your domain;

–

2) buy & set-up your webhost;

–

3) change your DNS;

–

4) decide if your domain “www” or “non-www”

–

5) buy and install SSL certificate (host usually do this for you)

–

6) note: need dedicated IP for SSL

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Storing CC Info -> Don't!
●

Buyer enters CC number and other info on your
site

●

Cart sends CC info to your payment processor

●

Your cart puts the CC info into its database

●

●

You are making a huge mistake if you store CC
info!
Very strict requirements for storing CC info –
the usual MySQL set-up will not satisfy 'em

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
CC info -con't
●

CC info gets hacked:
–
–

From your house to the big house

–

●

Knock on the door

–

●

Publicity, none of it good

Sales go to zero

Do not store CC info
Offer PayPal Standard, or other pmt that
redirects to payment site

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Payment Methods
●

Watch the vig
–

3% to 4%

–

FX translation: convert yourself

●

Tons and tons of payment methods available

●

SoL Alert: your cart needs software for your payment processor

●

●

SoL Alert: that wonderful feature your payment processor very
probably needs specific software in your cart
SoL Alert: your payment processor changes its ways, your cart's
software may need upgrading:
–

REST

–

Return codes

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
PayPal
●

Standard vs Professional

●

PP wants to understand your transactions

●

Complaints = hassle from PP + PP “slap”

●

Do everything you can to verify with PP

●

Associate bank account with PP account

●

Sweep from PP takes 3 to 4 days

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
PayPal Professional
●

Your customers never leave your site

●

Need SSL

●

Can take two weeks-ish to set-up

●

Sellers skew to wanting “Pro”

●

API Username, API Password

●

PP Pro settings required

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
PayPal Standard
●
●

●

●

Your customers redirect to https://PayPal.com
Upon paying at paypal.com, your customers
click a link to return to your site
Buyers skew to “Standard” -- more than you
think!
Sign-up same day

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
IPN
●

●

●

Instant Payment Notification
“The IPN service notifies you when an event occurs that
pertains to a transaction. Typically, these events
represent various kinds of payments; however, the
events may also represent authorizations, Fraud
Management Filter actions and other actions, such as
refunds, disputes, and chargebacks... IPN is a message
service that PayPal uses to notify you about events...”

https://developer.paypal.com/webapps/developer/docs/class

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
IPN – con't
// Log the IPN data
$this->logIPN($data,
$isValid);
// Fraud attempt? Do
nothing more!
if(!$isValid)
{ return false; }

case 'Canceled_Reversal':
case 'Completed':
$newStatus = 'C';
break;
case 'Created':
case 'Pending':
case 'Processed':
$newStatus = 'P';
break;
case 'Denied':
case 'Expired':
case 'Failed':
case 'Refunded':
case 'Reversed':
case 'Voided':

October 22, 2013

Bob Bloom
info@LaSalleMart.com

default:
// Partial refunds can only by
issued by the merchant. In that
case,
// we don't want the subscription
to be cancelled. We have to let
the
// merchant adjust its
parameters if needed.
if($isPartialRefund)
{$newStatus = 'C';
} else {
$newStatus = 'X';
}
Break;
( plugins/akpayment/paypalpay
mentspro/paypalpaymentspro.p
hp)

Joomla User Group Toronto
Toronto.Joomla.ca
IPN – con't
Feature or bug:
PayPal Payment Status = "Completed"
AND
Order Status NOT Updated via IPN
Answer: feature!
You have to double check that PayPal actually
received the money from your customer. Then, you
go to order management and update the order.
October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
IPN – con't

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
IPN – con't

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Shipping
●

Embrace shipping as part of your business strategy

●

Shipping a huge source of cart abandonment

●

What are your shipping rules?

●

Top source of “BTW” scope creep

●

Can your cart handle your shipping rules?

●

●

All predicate info must exist for your cart's shipping
methods to work
Usually, one shipping method (and payment method) per
order

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Standard Shipping Types
(https://southlasalle.atlassian.net/wiki/display/lasallemartkb/Standard+Shipping+Types?
src=contextnavchildmode)
Type 0: Flat Rate Per Item
●

shipping rate a set rate per item;

●

(flat rate and handling free from the first record rates) * qty, regardless of number of records:

●

that is, first shipping_method_id in #_lasallemart_shippingrate.

Type 1: Weight Based Per Item
●

shipping rate based on the weight of each product in the cart;

●

sum each product: shipping rate * qty + handling fee * qty.

Type 2: Weight Based Per Order
●

shipping rate based on the total weight of all products in the cart;

●

sum each product: (shipping rate * qty) + handling fee charged just once.

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Standard Shipping Types
Type 3: Flat Rate Per Order
●

regardless of the number of products in the cart, the shipping rate is the rate + handling fee (charged just once).

Type 4: Price Based on Percentage of Item Subtotal
●

shipping rate is a percentage of items pre-tax price;

●

shipping rate is per item;

●

shipping rate is sum for each product:

●

(pre-tax price of product * shipping rate percentage * quantity) + (handling fee * quantity)

●

percentage and handling free from the first record rates, regardless of number of records

Type 5: Quantity Based Per Order
●

uses a range of quantities;

●

shipping rate = (shipping rate per item + handling fee).

Type 6: Price Based on Order Subtotal
●

shipping rate based on after-tax product total (aka "Subtotal" in the cart);

●

uses a range of Subtotals;

●

shipping rate = (shipping rate per order + handling fee).

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Online Shipping Rates
●

●

●

●

●

Shippers provide shipping rates to your site via their own
servers
SSL not required
Usually requires separate credentialled process. So, not
associated with your actual shipping account
Getting API access codes can be a PITA, and can take
time. Like, a week or two
Must check that online rates are ok. Sometimes you have
to phone to ensure your special shipping rates are
associated with your online access code

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
UPS
●

●

●

●

●

UPS issues API access credentials
Their website is called “Developer Kit”, but, Dear
Client, this site is for you, not me!
http://www.ups.com/content/ca/en/bussol/browse/cat/
developer_kit.html
I am not going to use my API access on your site
You need your own separate access credentials to
associate with your actual shipping account

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
UPS: Dev Kit Not For Devs!

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
UPS: Online Access Signup

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Registration & Address Mgmt
●

Joomla itself handles user registration

●

Cart component handles address mgmt

●

This separation cause of woes

●

●

Joomla cart extensions usually take over user
registration, in whole or in part
LaSalleMart 2: huge effort went into integrating
registration, address management, and the cart.
Result pretty good – but(!) need better Decision Tree
(aka: rules based) algorithm in LM3

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Coupon Types
(https://southlasalle.atlassian.net/wiki/display/lasallemartkb/Coupons?src=contextnavchildmode)
Tax Handling with Coupons:
●

Tax is based on the pre-discount (ie, original) product price.

Discount Applies to:
●

Shipping only;

●

Product's price only.

Value Type:
●

Flat Rate = a straight money amount;

●

Percentage = well, the percent, such as "10% off".

Max Uses:
●

the maximum number of times the coupon can be used;

●

-1 = unlimited uses.

Max Uses Per User:
●

the maximum number of times the coupon can be used by each customer;

●

-1 = unlimited uses.

Valid From:
●

coupon is live starting on this date;

●

leave blank if not applicable.

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Coupon Types – con't
Expires On:
●

coupon is not live starting on this date;

●

leave blank if not applicable – that is, if coupon never expires.

Application:
●

Price discounts can apply to the order, or per product.

●

Shipping discounts apply to the order only.

Coupons are Submitted How?
●

●

User Submitted = your buyers must enter the coupon code
Automatic = the applicable coupon is automatically applied – test
first b/c I've not tested all scenarios

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Coupons – con't
●
●

Coupons are surprisingly complicated
If your cart lack a coupon type you need,
customizing it might be a PITA. Why?
–
–

●

●

The Matrix!
New cart functions!

Per shopper group, shipper, location, who you
like to win the Super Bowl, etc...
Two-fers, stealth bonuses

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Downloads
●

Sell PDFs and videos

●

DocMan

●

Set 'em up as products

●

always fun for your buyers to confront shipping when
buying a PDF – then can't proceed through checkout

●

Sell large files?

●

Auto-bundling of multiple files into one?

●

Time series downloads – email autoresponder??

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Subscriptions
●

Site subscriptions

●

Downloadable or subscription?

●

Akeeba Subscriptions

●

Akeeba Subs + Akeeba Release System

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Akeeba Subscriptions

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Persuing a Modelling Career
●

●

Product model: how you envision your products
vs how you shoehorn your products into your
cart's database
Attributes, groups, bundles, downloads,
subscriptions, ...

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca
Front-end
●
●

●

●

Typically perceived as “ecommerce” -> NO
Use Joomla as much as possible for front-end,
b/c front-end = Joomla's strength
Use “add-to-cart” content plugin to “buy” button
to link your front-end to your cart
People lavish time & money on front-end, and
starve checkout

October 22, 2013

Bob Bloom
info@LaSalleMart.com

Joomla User Group Toronto
Toronto.Joomla.ca

More Related Content

Similar to eCommerce Presentation, Joomla User Group Toronto, Oct 22, 2013

Can my underperforming law firm website be saved?
Can my underperforming law firm website be saved?Can my underperforming law firm website be saved?
Can my underperforming law firm website be saved?Dan Jaffe
 
Ecommerce Marketing & Optimization Workshop
Ecommerce Marketing & Optimization WorkshopEcommerce Marketing & Optimization Workshop
Ecommerce Marketing & Optimization WorkshopBrendan Tully
 
Alexandr Vronskiy "Evolution of Ecommerce Application"
Alexandr Vronskiy "Evolution of Ecommerce Application"Alexandr Vronskiy "Evolution of Ecommerce Application"
Alexandr Vronskiy "Evolution of Ecommerce Application"Fwdays
 
Integrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree paymentsIntegrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree paymentsWieteke den Uijl
 
Let's go shopping with Drupal!
Let's go shopping with Drupal!Let's go shopping with Drupal!
Let's go shopping with Drupal!agileware
 
eCommerce and Open Source: Pot, PHP, and Unlimited Potential
eCommerce and Open Source: Pot, PHP, and Unlimited PotentialeCommerce and Open Source: Pot, PHP, and Unlimited Potential
eCommerce and Open Source: Pot, PHP, and Unlimited PotentialBen Marks
 
Build and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsBuild and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsJeff Hull
 
Building bootstrapped businesses_srikrishna_2010_mar_unpluggd
Building bootstrapped businesses_srikrishna_2010_mar_unpluggdBuilding bootstrapped businesses_srikrishna_2010_mar_unpluggd
Building bootstrapped businesses_srikrishna_2010_mar_unpluggdK. Srikrishna
 
Tech Essentials Workshop at NEAR
Tech Essentials Workshop at NEARTech Essentials Workshop at NEAR
Tech Essentials Workshop at NEARStacey Alcorn
 
Ramy othman resume
Ramy othman resumeRamy othman resume
Ramy othman resumeRamy Othman
 
Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2Exposure Ninja
 
[Comparison] Choosing the Right eCommerce Platform
[Comparison] Choosing the Right eCommerce Platform[Comparison] Choosing the Right eCommerce Platform
[Comparison] Choosing the Right eCommerce PlatformRichard James McGirr
 
Protecting Your Web Presence
Protecting Your Web PresenceProtecting Your Web Presence
Protecting Your Web PresenceRich Benjamin
 
KIC - WTIA Startup Bootcamp Day 3
KIC - WTIA Startup Bootcamp Day 3KIC - WTIA Startup Bootcamp Day 3
KIC - WTIA Startup Bootcamp Day 3Dave Parker
 
Before and after hitting the publish button
Before and after hitting the publish buttonBefore and after hitting the publish button
Before and after hitting the publish buttonAlbert De Nova Santana
 
Joomla Paid Membership Extensions #jd11de
Joomla Paid Membership Extensions #jd11deJoomla Paid Membership Extensions #jd11de
Joomla Paid Membership Extensions #jd11deSander Potjer
 

Similar to eCommerce Presentation, Joomla User Group Toronto, Oct 22, 2013 (20)

Can my underperforming law firm website be saved?
Can my underperforming law firm website be saved?Can my underperforming law firm website be saved?
Can my underperforming law firm website be saved?
 
Ecommerce Marketing & Optimization Workshop
Ecommerce Marketing & Optimization WorkshopEcommerce Marketing & Optimization Workshop
Ecommerce Marketing & Optimization Workshop
 
Lets be a Joomla Entrepreneur
Lets be a Joomla EntrepreneurLets be a Joomla Entrepreneur
Lets be a Joomla Entrepreneur
 
Alexandr Vronskiy "Evolution of Ecommerce Application"
Alexandr Vronskiy "Evolution of Ecommerce Application"Alexandr Vronskiy "Evolution of Ecommerce Application"
Alexandr Vronskiy "Evolution of Ecommerce Application"
 
wanelo clone script
wanelo clone scriptwanelo clone script
wanelo clone script
 
Integrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree paymentsIntegrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree payments
 
Let's go shopping with Drupal!
Let's go shopping with Drupal!Let's go shopping with Drupal!
Let's go shopping with Drupal!
 
eCommerce and Open Source: Pot, PHP, and Unlimited Potential
eCommerce and Open Source: Pot, PHP, and Unlimited PotentialeCommerce and Open Source: Pot, PHP, and Unlimited Potential
eCommerce and Open Source: Pot, PHP, and Unlimited Potential
 
Build and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsBuild and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 Mins
 
Building bootstrapped businesses_srikrishna_2010_mar_unpluggd
Building bootstrapped businesses_srikrishna_2010_mar_unpluggdBuilding bootstrapped businesses_srikrishna_2010_mar_unpluggd
Building bootstrapped businesses_srikrishna_2010_mar_unpluggd
 
Tech Essentials Workshop at NEAR
Tech Essentials Workshop at NEARTech Essentials Workshop at NEAR
Tech Essentials Workshop at NEAR
 
Ramy othman resume
Ramy othman resumeRamy othman resume
Ramy othman resume
 
Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2
 
WCR Tech Class
WCR Tech ClassWCR Tech Class
WCR Tech Class
 
Hinting at a better web
Hinting at a better webHinting at a better web
Hinting at a better web
 
[Comparison] Choosing the Right eCommerce Platform
[Comparison] Choosing the Right eCommerce Platform[Comparison] Choosing the Right eCommerce Platform
[Comparison] Choosing the Right eCommerce Platform
 
Protecting Your Web Presence
Protecting Your Web PresenceProtecting Your Web Presence
Protecting Your Web Presence
 
KIC - WTIA Startup Bootcamp Day 3
KIC - WTIA Startup Bootcamp Day 3KIC - WTIA Startup Bootcamp Day 3
KIC - WTIA Startup Bootcamp Day 3
 
Before and after hitting the publish button
Before and after hitting the publish buttonBefore and after hitting the publish button
Before and after hitting the publish button
 
Joomla Paid Membership Extensions #jd11de
Joomla Paid Membership Extensions #jd11deJoomla Paid Membership Extensions #jd11de
Joomla Paid Membership Extensions #jd11de
 

Recently uploaded

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

eCommerce Presentation, Joomla User Group Toronto, Oct 22, 2013

  • 1. echo $msg->welcome; October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 2. echo $user->name; ● Bob Bloom ● Joomla consultant since 2007 ● JUGT since 2009 ● ecomm right from the get-go with Virtuemart ● Tienda in 2010 – wrote Canadian add-on ● Fork Tienda for J!1.5 = LaSalleMart 1 ● Fork Tienda for J!2.5 = LaSalleMart 2 ● New fresh LaSalleMart 3 for J!3 using FoF ● Podcast = SouthLaSalleMedia.com ● Blog = blog.SouthLaSalleCommerce.com October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 3. echo $msg->jugt October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 4. echo $msg->jugt; ● Joomla User Group Toronto = local JUG ● we are all volunteers ● Wonderful group ● Connection to the Joomla project, and networking with other local pros, has been a critical aspect of my independent consulting professional life ● Toronto.Joomla.ca ● I co-run Meetup.com/Joomla-User-Group-Toronto/ with Niv ● Special Nov 07th workshop October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 5. echo $msg->topic; Thank you for being here this evening. The topic is Joomla ecommerce. Focus on checkout this evening, based on questions from JUGT over the last while; and, based on gi-nor-mous mistakes my clients consistently make. I invite questions as we go along. October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 6. echo $msg->caveat Information contained herein have been obtained from sources believed to be reliable, but are not guaranteed. No person or organization connected with this presentation is responsible for the accuracy herein; nor, is responsible for your reliance on information so presented. October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 7. echo $msg->LaSalleMart ● LaSalleMart 3 is from-scratch ecomm technology for Joomla 3+ ● Based on Akeeba's kick-ass Framework-on-Framework ● This month is about prototyping concepts with FoF and building out first suite of components with FoF ● Initial release will have basic product/checkout functions ● Vision of Joomla ecommerce is coming to fruition ● Sep 2010 podcast sheds light: http://www.southlasallemedia.com/2010/tbbs21 ● FoF makes LaSalleMart 3 feel like Joomla ecomm feel like it should be ● FoF will be included in Joomla 3.2, to be released in early Nov 2013 ● I will create my first Joomla distro with J!3.2. http://LaSalleCMS.com ● See my LaSalleMart.com, blog site, and monthly podcasts, for updates. October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 8. if ($work == “hard”) { echo “success”; } else { echo “blame consultant”; } ● ● ● ● I can whip up a blog site fairly quickly. But I cannot “whip up” an ecomm site. ecomm sites involve a lot of detail and content Dear Client: it's your site, not mine. It's your strategy, not mine. It's your responsibility to make the site profitable, not mine. Unless we have an arrangement, which I aggressively avoid 110% of the time There's this thing called User Testing. Clients who avoid it tend to have crappy site revenue. I should call UAT “revenue acid test” October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 9. if ($think) { echo “ka-ching”; } else { echo “blame consultant”; } ● There are hundreds of thousands, if not millions, of ecommerce sites. The days of “build it and they will come” are way over. Successful concepts attract serious investment from competitors. ● Brain Fart Alert: no online & offline (yes, offline!) e-strategy ● Brain Fart Alert: eye-candy fetish + resist checkout issues ● Brain Fart Alert: clients play their little games because they feel out-of-their-depth and out-ofcontrol with ecomm, but feel compelled to be in ecomm ● Brain Fart Alert: clients refuse to learn any “e” in ecommerce ● Brain Fart Alert: clients forget that we are in the Golden Age of Tech Start-ups ● ● Brain Fart Alert: clients are completely oblivious to the need to own/control their domain registration & website hosting – time and again I'm told to “just take care of it” --> Doh! Brain Fart Alert: obsessed about site design + oblivious to cart abandonment issues October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 10. echo strrev("BACKWARDS!!"); ● ● ● ● ● emphasis frequently skewed to front-end Shipping methods, payment methods, order workflow are as integral as front-end Shipping and payment method issues pose show-stopper issues You want the benefit of time to deal with these issues before they can derail your launch date !!S-D-R-A-W-K-C-A-B <<== REMEMBER! October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 11. Checkout ● Comprised of: – Customer registration; – Address management; – Shipping method; – Payment method; – Order confirmation; – Order processing; – Thank you! ● Need to beta test – if you don't, your customers will! ● Save some budget for customizing checkout October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 12. Lead a Horse to Water ● ● ● ● SEO stops at checkout Once your customer enters your checkout, want to consummate the sale Once in checkout, need to avoid abandonment Nice infographic at http://wikimotive.com/wikiblog/fight-digital-cartabandonment-infographic/ October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 13. SSL ● “Secure Socket Layer” ● Your buyers expect to see “https://” during checkout ● Payment processors require SSL when accepting CC's directly on your site ● $$ range from Nominal to Nutty ● Sequence of installing SSL: – 1) buy your domain; – 2) buy & set-up your webhost; – 3) change your DNS; – 4) decide if your domain “www” or “non-www” – 5) buy and install SSL certificate (host usually do this for you) – 6) note: need dedicated IP for SSL October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 14. Storing CC Info -> Don't! ● Buyer enters CC number and other info on your site ● Cart sends CC info to your payment processor ● Your cart puts the CC info into its database ● ● You are making a huge mistake if you store CC info! Very strict requirements for storing CC info – the usual MySQL set-up will not satisfy 'em October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 15. CC info -con't ● CC info gets hacked: – – From your house to the big house – ● Knock on the door – ● Publicity, none of it good Sales go to zero Do not store CC info Offer PayPal Standard, or other pmt that redirects to payment site October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 16. Payment Methods ● Watch the vig – 3% to 4% – FX translation: convert yourself ● Tons and tons of payment methods available ● SoL Alert: your cart needs software for your payment processor ● ● SoL Alert: that wonderful feature your payment processor very probably needs specific software in your cart SoL Alert: your payment processor changes its ways, your cart's software may need upgrading: – REST – Return codes October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 17. PayPal ● Standard vs Professional ● PP wants to understand your transactions ● Complaints = hassle from PP + PP “slap” ● Do everything you can to verify with PP ● Associate bank account with PP account ● Sweep from PP takes 3 to 4 days October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 18. PayPal Professional ● Your customers never leave your site ● Need SSL ● Can take two weeks-ish to set-up ● Sellers skew to wanting “Pro” ● API Username, API Password ● PP Pro settings required October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 19. PayPal Standard ● ● ● ● Your customers redirect to https://PayPal.com Upon paying at paypal.com, your customers click a link to return to your site Buyers skew to “Standard” -- more than you think! Sign-up same day October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 20. IPN ● ● ● Instant Payment Notification “The IPN service notifies you when an event occurs that pertains to a transaction. Typically, these events represent various kinds of payments; however, the events may also represent authorizations, Fraud Management Filter actions and other actions, such as refunds, disputes, and chargebacks... IPN is a message service that PayPal uses to notify you about events...” https://developer.paypal.com/webapps/developer/docs/class October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 21. IPN – con't // Log the IPN data $this->logIPN($data, $isValid); // Fraud attempt? Do nothing more! if(!$isValid) { return false; } case 'Canceled_Reversal': case 'Completed': $newStatus = 'C'; break; case 'Created': case 'Pending': case 'Processed': $newStatus = 'P'; break; case 'Denied': case 'Expired': case 'Failed': case 'Refunded': case 'Reversed': case 'Voided': October 22, 2013 Bob Bloom info@LaSalleMart.com default: // Partial refunds can only by issued by the merchant. In that case, // we don't want the subscription to be cancelled. We have to let the // merchant adjust its parameters if needed. if($isPartialRefund) {$newStatus = 'C'; } else { $newStatus = 'X'; } Break; ( plugins/akpayment/paypalpay mentspro/paypalpaymentspro.p hp) Joomla User Group Toronto Toronto.Joomla.ca
  • 22. IPN – con't Feature or bug: PayPal Payment Status = "Completed" AND Order Status NOT Updated via IPN Answer: feature! You have to double check that PayPal actually received the money from your customer. Then, you go to order management and update the order. October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 23. IPN – con't October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 24. IPN – con't October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 25. Shipping ● Embrace shipping as part of your business strategy ● Shipping a huge source of cart abandonment ● What are your shipping rules? ● Top source of “BTW” scope creep ● Can your cart handle your shipping rules? ● ● All predicate info must exist for your cart's shipping methods to work Usually, one shipping method (and payment method) per order October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 26. Standard Shipping Types (https://southlasalle.atlassian.net/wiki/display/lasallemartkb/Standard+Shipping+Types? src=contextnavchildmode) Type 0: Flat Rate Per Item ● shipping rate a set rate per item; ● (flat rate and handling free from the first record rates) * qty, regardless of number of records: ● that is, first shipping_method_id in #_lasallemart_shippingrate. Type 1: Weight Based Per Item ● shipping rate based on the weight of each product in the cart; ● sum each product: shipping rate * qty + handling fee * qty. Type 2: Weight Based Per Order ● shipping rate based on the total weight of all products in the cart; ● sum each product: (shipping rate * qty) + handling fee charged just once. October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 27. Standard Shipping Types Type 3: Flat Rate Per Order ● regardless of the number of products in the cart, the shipping rate is the rate + handling fee (charged just once). Type 4: Price Based on Percentage of Item Subtotal ● shipping rate is a percentage of items pre-tax price; ● shipping rate is per item; ● shipping rate is sum for each product: ● (pre-tax price of product * shipping rate percentage * quantity) + (handling fee * quantity) ● percentage and handling free from the first record rates, regardless of number of records Type 5: Quantity Based Per Order ● uses a range of quantities; ● shipping rate = (shipping rate per item + handling fee). Type 6: Price Based on Order Subtotal ● shipping rate based on after-tax product total (aka "Subtotal" in the cart); ● uses a range of Subtotals; ● shipping rate = (shipping rate per order + handling fee). October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 28. Online Shipping Rates ● ● ● ● ● Shippers provide shipping rates to your site via their own servers SSL not required Usually requires separate credentialled process. So, not associated with your actual shipping account Getting API access codes can be a PITA, and can take time. Like, a week or two Must check that online rates are ok. Sometimes you have to phone to ensure your special shipping rates are associated with your online access code October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 29. UPS ● ● ● ● ● UPS issues API access credentials Their website is called “Developer Kit”, but, Dear Client, this site is for you, not me! http://www.ups.com/content/ca/en/bussol/browse/cat/ developer_kit.html I am not going to use my API access on your site You need your own separate access credentials to associate with your actual shipping account October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 30. UPS: Dev Kit Not For Devs! October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 31. UPS: Online Access Signup October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 32. Registration & Address Mgmt ● Joomla itself handles user registration ● Cart component handles address mgmt ● This separation cause of woes ● ● Joomla cart extensions usually take over user registration, in whole or in part LaSalleMart 2: huge effort went into integrating registration, address management, and the cart. Result pretty good – but(!) need better Decision Tree (aka: rules based) algorithm in LM3 October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 33. Coupon Types (https://southlasalle.atlassian.net/wiki/display/lasallemartkb/Coupons?src=contextnavchildmode) Tax Handling with Coupons: ● Tax is based on the pre-discount (ie, original) product price. Discount Applies to: ● Shipping only; ● Product's price only. Value Type: ● Flat Rate = a straight money amount; ● Percentage = well, the percent, such as "10% off". Max Uses: ● the maximum number of times the coupon can be used; ● -1 = unlimited uses. Max Uses Per User: ● the maximum number of times the coupon can be used by each customer; ● -1 = unlimited uses. Valid From: ● coupon is live starting on this date; ● leave blank if not applicable. October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 34. Coupon Types – con't Expires On: ● coupon is not live starting on this date; ● leave blank if not applicable – that is, if coupon never expires. Application: ● Price discounts can apply to the order, or per product. ● Shipping discounts apply to the order only. Coupons are Submitted How? ● ● User Submitted = your buyers must enter the coupon code Automatic = the applicable coupon is automatically applied – test first b/c I've not tested all scenarios October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 35. Coupons – con't ● ● Coupons are surprisingly complicated If your cart lack a coupon type you need, customizing it might be a PITA. Why? – – ● ● The Matrix! New cart functions! Per shopper group, shipper, location, who you like to win the Super Bowl, etc... Two-fers, stealth bonuses October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 36. Downloads ● Sell PDFs and videos ● DocMan ● Set 'em up as products ● always fun for your buyers to confront shipping when buying a PDF – then can't proceed through checkout ● Sell large files? ● Auto-bundling of multiple files into one? ● Time series downloads – email autoresponder?? October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 37. Subscriptions ● Site subscriptions ● Downloadable or subscription? ● Akeeba Subscriptions ● Akeeba Subs + Akeeba Release System October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 38. Akeeba Subscriptions October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 39. Persuing a Modelling Career ● ● Product model: how you envision your products vs how you shoehorn your products into your cart's database Attributes, groups, bundles, downloads, subscriptions, ... October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca
  • 40. Front-end ● ● ● ● Typically perceived as “ecommerce” -> NO Use Joomla as much as possible for front-end, b/c front-end = Joomla's strength Use “add-to-cart” content plugin to “buy” button to link your front-end to your cart People lavish time & money on front-end, and starve checkout October 22, 2013 Bob Bloom info@LaSalleMart.com Joomla User Group Toronto Toronto.Joomla.ca

Editor's Notes

  1. Welcome to the Joomla User Group Toronto workshop on ecommerce. Every month JUGT holds a workshop on various topics. Please consult the JUGT website to see what is happening.
  2. Joomla! User Group Toronto is local user group for Joomla!. http://Toronto.Joomla.ca Facebook site Twitter @jugt Meetup.com The exec team made today&apos;s workshop happen: Doug Pickett Niv Froelich Alan Langford Vic Garbutt Alison Meeks .. and Yours Truly
  3. * visual cues in checkout -&gt; more “wizard” like * have people go through your checkout on all sorts of computers &amp; devices
  4. * owned by eBay * eBay “cleaned up” things * big revenue generator due to “vig” per transaction
  5. * to show you that there is somewhere on your site that receives IPN info * to show you that the “return codes” from PP exist within your site&apos;s cart software
  6. * go through your checkout for downloadable products, just like your customers would, to see what they go through. Adjust your workflow accordingly. * Sometimes you have to make trade-offs between convenience-security-cart_abandonment
  7. * customers want free shipping * cart abandonment happens a lot at shipping * have a page describing your shipping policies, separate from your terms of service * shipping rate figured out after order is placed + order paid for post order. Can software: enter shipping rate in admin order details &amp; buyer pay from invoice/re-enter checkout?
  8. * Surprising how many times a “simple” product is not so simple. * product attributes: sometimes need own product_id so adds complexity * t-shirt: colour = attribute, where want just one product_id and simple selection within add-to-cart form * many times have to reconcile your model into your cart&apos;s capabilities
  9. * mini websites * seasonal templates – Joomla can handle multiple templates! * blog style product pages – Tell Your Story * K2Mart linking VM to K2 intriguing * content plugin add-to-cart form