SlideShare uma empresa Scribd logo
1 de 32
Baixar para ler offline
DrupalACT April 2012




Let's go shopping with Drupal!




    Ubercart & Recurring Payments
                   Justin Freeman
                             DrupalACT April 2012
About Agileware
Canberra company
●



Drupal web developers
●


●Our clients include: Federal Government,
Agencies, Non-profits, Associations, Department
of Defence, SMEs, International organisations
Your friendly, local Drupal dudes
●



http://agileware.com.au
●




                            agileware.com.au * DrupalACT April 2012
What we'll cover
How to build an Australian, Drupal shopping cart
●



Essential Drupal modules
●



Recommended third party services
●



Recommended payment options
●



Australian considerations
●



Subscriptions and recurring payments
●



Security
●



Costs
●




                            agileware.com.au * DrupalACT April 2012
Shopping cart, WTF?
●   Sell stuff on the Internet
●   Accept payment, deliver something in return
●   Sell things like: products, services, goods,
    information, access, downloads, events, tickets,
    auction sites
●   Catalog → product → price → payment →
    delivery




                                 agileware.com.au * DrupalACT April 2012
Examples
●   Standard sites:
       ●   http://postertext.com
       ●   http://audreyblue.com
●   Customised sites:
       ●   http://pawsforlife.com.au
       ●   http://agilemail.com.au
The competition!
●Good selection of open source shopping cart
software is available
Lot of it is “not so good” – OSCOMMERCE
●



Some of it is good – Magneto Commerce
●



But mostly they're “not so good”:
●


      ●   Poorly documented, no API
      ●   Customisations, difficult
      ●   Updates are PAINFUL
      ●   Fragmented community
      ●   No formal issue queue, standards etc.
                               agileware.com.au * DrupalACT April 2012
Why use Drupal?
Drupal has solved many of these project
●


management issues and QA is good.
(Don't take my word for it – try the competition!)
●



Highly customisable, extensible
●



Drupal does have good shopping cart modules:
●


    ●   Ubercart (Drupal 6 & 7)
         http://drupal.org/project/ubercart
          ●


    ● Commerce (Drupal 7 only)


          ●   http://drupal.org/project/commerce

                               agileware.com.au * DrupalACT April 2012
Build your website
Do the usual Drupal build steps:
●


    ●   Install Drupal and required modules
    ●   Design or select required theme
    ●   Customise installation, as required
    ●   Test, test and test some more
Common areas for customisation:
●


    ●   Catalog (less clicks)
    ●   Product display (make it sexy!)
    ●   Pricing options (making choice easier)
    ●   Checkout process (reduce steps)

                                  agileware.com.au * DrupalACT April 2012
Demos
1.Default Drupal, Ubercart site
2.Standard shopping cart workflow
3.Customised user experience and workflow




                                  agileware.com.au * DrupalACT April 2012
Essential modules
Ubercart, http://drupal.org/project/ubercart
●


    ●   Available for Drupal 6 or 7
Ubercart VAT, http://drupal.org/project/uc_vat
●


    ●   Required for Ubercart, Drupal 6 only
Ubercart SSL, http://drupal.org/project/uc_ssl
●


    ●   Force SSL connection on Ubercart pages
    ●   Secure Pages is another option




                                      agileware.com.au * DrupalACT April 2012
Recommended modules
Ubercart EWAY, http://drupal.org/project/uc_eway
●


    ●   For EWAY integration to process credit card
         transactions
●Google Analytics,
http://drupal.org/project/google_analytics
    ●   Track conversions from Google Adwords
Ubercart Views, http://drupal.org/project/uc_views
●


    ●   Views integration, custom reports




                                 agileware.com.au * DrupalACT April 2012
For Australian carts
●Import “Australia” into Country data and disable
America & Canada (unless selling o/s).
     ●   admin/store/settings/countries/edit
Change US currency, measurements
●


     ●   admin/store/settings/store/edit/format
Configure UC_VAT, set up GST +10% tax.
●


     ●   Required to display price as: $9.95 GST inc
     ●   All prices should be stored ex-GST
     ●   Apply only to orders for Australian customers
            ●   admin/store/settings/taxes/vat

                                    agileware.com.au * DrupalACT April 2012
For Australian carts
 Change default Invoice template
 ●


     ●   Need to add information: Tax Invoice & ABN
 Copy and modify these files:
 ●


     ●   ubercart/uc_order/templates/
            uc_order-customer.tpl.php
            ●


          ● uc_order.tpl.php (make blank)


     ● active admin theme eg. sites/all/themes/rubik


     ●   active site theme eg.
          sites/default/themes/agilemail
     ●   Symlink admin theme files to active theme
 Acquia Prosper theme has /invoice set up correctly
 ●


                                agileware.com.au * DrupalACT April 2012
Demo
 GST tax rules
 ●



 GST inclusive, /admin/store/settings/taxes/vat
 ●



 Tax Invoice
 ●




                            agileware.com.au * DrupalACT April 2012
Recommended services
EWAY, http://eway.com.au
●


    ●   More on these guys shortly
SSL certificate, http://rapidssl.com
●


    ●   Decent price, quick to deliver, good compatibility
Paypal, http://paypal.com.au
●


    ●   Your customers may not trust you, but
         (unfortunately) they will trust Paypal
Mailchimp, http://mailchimp.com
●


    ●   Stay in touch with your customers, send
          newsletters


                                  agileware.com.au * DrupalACT April 2012
Why EWAY?




            agileware.com.au * DrupalACT April 2012
Why EWAY?
API agnostic:
●


    ●   Banks can have different credit card APIs
    ●   Drupal modules exist for specific Banks
    ●   General one which covers multiple Banks, see
         http://drupal.org/project/uc_migs
    ●   EWAY is a credit card processor, talks to all Banks
    ●   Provides independence from any single Bank




                                  agileware.com.au * DrupalACT April 2012
Why EWAY?
Security:
●


    ●   Storing credit cart details is a very bad idea
    ●   You become a target and are liable for breaches.
    ●   Security is your problem.
    ●   This is not a nice problem to have.
    ●   So let someone else have this stress, EWAY!
    ●   All credit card details are sent to EWAY over the
          wire, processed in real-time and never stored.
    ●   Great anti-scam, anti-fraud features



                                    agileware.com.au * DrupalACT April 2012
Why EWAY?
Features:
●


    ●   Have rich XML post-response based API,
         http://www.eway.com.au/Developer/eway-api/
    ●   Support token-based recurring transactions
    ●   SMS transaction report
    ●   Web control panel: reports, refunds, manual
         transactions
    ●   Based in Canberra, Phillip
    ●   Great phone and developer support (they listen!)
    ●   Affordable


                                     agileware.com.au * DrupalACT April 2012
New contender - FatZebra
New Canberra startup
●



Payment processor
●



Cheaper than EWAY
●



Similar API and features
●



JSON based API
●



Young and energetic team
●



https://fatzebra.com.au
●




                           agileware.com.au * DrupalACT April 2012
Recommended payment options
Don't force customers to pay using credit card
●



Provide payment options, make the sale!
●


    ●   EFT (direct deposit)
    ●   Cheque
    ●   Paypal
    ●   Credit card




                               agileware.com.au * DrupalACT April 2012
Recurring payments
Drupal module, http://drupal.org/uc_recurring
●



Maintained by this guy, Chris Hood (thanks Chris!)
●


    ●   chris@univate.com.au, http://univate.com.au




                                agileware.com.au * DrupalACT April 2012
Recurring payments
●   Ability to set up recurring billing schedules:
        ●   For individual products
        ●   Entire orders (bunch of products)
●   Can notify customer when payment due
●   Or even better - bill the customer automatically
    if credit card details are stored (eek!)
●   EWAY integration utilises tokenised payments,
    100% secure
●   Token used to bill customer, not CC stored
    (YAY!)

                                      agileware.com.au * DrupalACT April 2012
Recurring payments
●   Workflow overview (recurring & EWAY):
       1.Customer submits order and credit card details
       2.Customer details and credit card sent to EWAY
       3.EWAY returns token
       4.Drupal stores token with order
       5.Each billing cycle, token sent to EWAY with bill
          amount
       6.EWAY uses token to bill customer
       7.EWAY returns success / fail to Drupal



                                 agileware.com.au * DrupalACT April 2012
Recurring payments
●   Watch for expiring credit cards, notify the
    customer to update their details
●   This modules was developed to solve this
    problem,
    http://drupal.org/project/uc_recurring_cc_notify
●   Automatically notifies customer




                               agileware.com.au * DrupalACT April 2012
Demo
●   Recurring payments configuration, products
    and order




                             agileware.com.au * DrupalACT April 2012
Security
Keep software up to date
●



Disable modules not being used
●



Complex passwords
●



Do not store credit card details, at all
●



Dodgy hosting
●



Backups
●



SSL
●



Check logs and investigate errors
●




                              agileware.com.au * DrupalACT April 2012
Scams and fraud
Merchant beware
●



Stolen credit cards
●



Dodgy orders
●



EWAY helps protect against fraud
●



Merchant diligence
●




                          agileware.com.au * DrupalACT April 2012
Startup and running costs
Paypal reduces startup costs
●


●Not recommended for large transactions, best to
use EFT for those (protect the margin!)
Banks will charge:
●


      ●   2% to 3% per transaction
      ●   plus annual fee
      ●   plus account keeping fee
      ●   Plus plus plus...



                              agileware.com.au * DrupalACT April 2012
Startup and running costs
EWAY will charge
●



    ●
        Annual fee (free in 1st year)
    ●   0.50c per transaction
SSL certificate $75 to $150 per year
●


●Your time to process orders and update website
(this does not happen automagically!)




                                agileware.com.au * DrupalACT April 2012
Final thoughts
Website performance matters, a lot
●



Customers do not tolerate mistakes
●



Your competitor is one click away
●



Process refunds quickly
●



Verify each transaction is legitimate
●



Treat security seriously
●



Optimising the user experience does work
●



Automate and monitor what you can
●




                            agileware.com.au * DrupalACT April 2012
Questions?




     agileware.com.au * DrupalACT April 2012

Mais conteúdo relacionado

Semelhante a Let's go shopping with Drupal!

AdWords API - How to build a platform
AdWords API - How to build a platformAdWords API - How to build a platform
AdWords API - How to build a platformTimoBoz
 
Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Alan Hood
 
Why use ad words api
Why use ad words apiWhy use ad words api
Why use ad words apisupergigas
 
Ecommerce as an Engine
Ecommerce as an EngineEcommerce as an Engine
Ecommerce as an Enginestephskardal
 
Pure Storage Company presentation - Ruben Wu
Pure Storage Company presentation - Ruben WuPure Storage Company presentation - Ruben Wu
Pure Storage Company presentation - Ruben WuRuben Wu
 
[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
 
How to make Headless Commerce Strategy.
How to make Headless Commerce Strategy.How to make Headless Commerce Strategy.
How to make Headless Commerce Strategy.Aureate Labs
 
Promoting your organisation online with drupal
Promoting your organisation online with drupalPromoting your organisation online with drupal
Promoting your organisation online with drupalTroodon
 
Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website?
Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website? Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website?
Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website? ElínAnna Jónasdóttir
 
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...Chris Schalk
 
How to build a platform
How to build a platformHow to build a platform
How to build a platformsupergigas
 
Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle mgarg82
 
Drupal Commerce in Drupal 7
Drupal Commerce in Drupal 7Drupal Commerce in Drupal 7
Drupal Commerce in Drupal 7infowonders
 
Drupal 8, tricks and tips learned from the first 6 months
Drupal 8, tricks and tips learned from the first 6 monthsDrupal 8, tricks and tips learned from the first 6 months
Drupal 8, tricks and tips learned from the first 6 monthsIztok Smolic
 
Case study - Google's Polymer web components let us develop tomorrow's digita...
Case study - Google's Polymer web components let us develop tomorrow's digita...Case study - Google's Polymer web components let us develop tomorrow's digita...
Case study - Google's Polymer web components let us develop tomorrow's digita...Henry D Amm
 

Semelhante a Let's go shopping with Drupal! (20)

AdWords API - How to build a platform
AdWords API - How to build a platformAdWords API - How to build a platform
AdWords API - How to build a platform
 
Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Is Being Agile a Good Thing?
Is Being Agile a Good Thing?
 
Why use ad words api
Why use ad words apiWhy use ad words api
Why use ad words api
 
Ecommerce as an Engine
Ecommerce as an EngineEcommerce as an Engine
Ecommerce as an Engine
 
Pure Storage Company presentation - Ruben Wu
Pure Storage Company presentation - Ruben WuPure Storage Company presentation - Ruben Wu
Pure Storage Company presentation - Ruben Wu
 
[Comparison] Choosing the Right eCommerce Platform
[Comparison] Choosing the Right eCommerce Platform[Comparison] Choosing the Right eCommerce Platform
[Comparison] Choosing the Right eCommerce Platform
 
Odoo Akeneo Connector
Odoo Akeneo ConnectorOdoo Akeneo Connector
Odoo Akeneo Connector
 
How to make Headless Commerce Strategy.
How to make Headless Commerce Strategy.How to make Headless Commerce Strategy.
How to make Headless Commerce Strategy.
 
Promoting your organisation online with drupal
Promoting your organisation online with drupalPromoting your organisation online with drupal
Promoting your organisation online with drupal
 
Django Shop
Django ShopDjango Shop
Django Shop
 
Common Sense Agile
Common Sense AgileCommon Sense Agile
Common Sense Agile
 
Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website?
Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website? Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website?
Odoo Experience 2018 - Tutorial: How to Create an Awesome eCommerce Website?
 
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
 
How to build a platform
How to build a platformHow to build a platform
How to build a platform
 
Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle
 
Drupal Commerce in Drupal 7
Drupal Commerce in Drupal 7Drupal Commerce in Drupal 7
Drupal Commerce in Drupal 7
 
Drupal 8, tricks and tips learned from the first 6 months
Drupal 8, tricks and tips learned from the first 6 monthsDrupal 8, tricks and tips learned from the first 6 months
Drupal 8, tricks and tips learned from the first 6 months
 
Case study - Google's Polymer web components let us develop tomorrow's digita...
Case study - Google's Polymer web components let us develop tomorrow's digita...Case study - Google's Polymer web components let us develop tomorrow's digita...
Case study - Google's Polymer web components let us develop tomorrow's digita...
 
PouyaKarimiv12
PouyaKarimiv12PouyaKarimiv12
PouyaKarimiv12
 
How to sell drupal 8
How to sell drupal 8How to sell drupal 8
How to sell drupal 8
 

Mais de agileware

Budget May 2016
Budget May 2016Budget May 2016
Budget May 2016agileware
 
Open . Social . Now
Open . Social . NowOpen . Social . Now
Open . Social . Nowagileware
 
How To Build And Launch A Successful Globalized App From Day One Or All The ...
How To Build And Launch A Successful Globalized App From Day One  Or All The ...How To Build And Launch A Successful Globalized App From Day One  Or All The ...
How To Build And Launch A Successful Globalized App From Day One Or All The ...agileware
 
Zimbra Collaboration Suite Vs Microsoft Exchange 2008
Zimbra Collaboration Suite Vs Microsoft Exchange 2008Zimbra Collaboration Suite Vs Microsoft Exchange 2008
Zimbra Collaboration Suite Vs Microsoft Exchange 2008agileware
 
Zimbra Collaboration Suite Vs Microsoft Exchange 2007
Zimbra Collaboration Suite Vs Microsoft Exchange 2007Zimbra Collaboration Suite Vs Microsoft Exchange 2007
Zimbra Collaboration Suite Vs Microsoft Exchange 2007agileware
 
Zimbra Collaboration Suite And Google Apps
Zimbra Collaboration Suite And Google AppsZimbra Collaboration Suite And Google Apps
Zimbra Collaboration Suite And Google Appsagileware
 

Mais de agileware (6)

Budget May 2016
Budget May 2016Budget May 2016
Budget May 2016
 
Open . Social . Now
Open . Social . NowOpen . Social . Now
Open . Social . Now
 
How To Build And Launch A Successful Globalized App From Day One Or All The ...
How To Build And Launch A Successful Globalized App From Day One  Or All The ...How To Build And Launch A Successful Globalized App From Day One  Or All The ...
How To Build And Launch A Successful Globalized App From Day One Or All The ...
 
Zimbra Collaboration Suite Vs Microsoft Exchange 2008
Zimbra Collaboration Suite Vs Microsoft Exchange 2008Zimbra Collaboration Suite Vs Microsoft Exchange 2008
Zimbra Collaboration Suite Vs Microsoft Exchange 2008
 
Zimbra Collaboration Suite Vs Microsoft Exchange 2007
Zimbra Collaboration Suite Vs Microsoft Exchange 2007Zimbra Collaboration Suite Vs Microsoft Exchange 2007
Zimbra Collaboration Suite Vs Microsoft Exchange 2007
 
Zimbra Collaboration Suite And Google Apps
Zimbra Collaboration Suite And Google AppsZimbra Collaboration Suite And Google Apps
Zimbra Collaboration Suite And Google Apps
 

Último

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 

Último (20)

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 

Let's go shopping with Drupal!

  • 1. DrupalACT April 2012 Let's go shopping with Drupal! Ubercart & Recurring Payments Justin Freeman DrupalACT April 2012
  • 2. About Agileware Canberra company ● Drupal web developers ● ●Our clients include: Federal Government, Agencies, Non-profits, Associations, Department of Defence, SMEs, International organisations Your friendly, local Drupal dudes ● http://agileware.com.au ● agileware.com.au * DrupalACT April 2012
  • 3. What we'll cover How to build an Australian, Drupal shopping cart ● Essential Drupal modules ● Recommended third party services ● Recommended payment options ● Australian considerations ● Subscriptions and recurring payments ● Security ● Costs ● agileware.com.au * DrupalACT April 2012
  • 4. Shopping cart, WTF? ● Sell stuff on the Internet ● Accept payment, deliver something in return ● Sell things like: products, services, goods, information, access, downloads, events, tickets, auction sites ● Catalog → product → price → payment → delivery agileware.com.au * DrupalACT April 2012
  • 5. Examples ● Standard sites: ● http://postertext.com ● http://audreyblue.com ● Customised sites: ● http://pawsforlife.com.au ● http://agilemail.com.au
  • 6. The competition! ●Good selection of open source shopping cart software is available Lot of it is “not so good” – OSCOMMERCE ● Some of it is good – Magneto Commerce ● But mostly they're “not so good”: ● ● Poorly documented, no API ● Customisations, difficult ● Updates are PAINFUL ● Fragmented community ● No formal issue queue, standards etc. agileware.com.au * DrupalACT April 2012
  • 7. Why use Drupal? Drupal has solved many of these project ● management issues and QA is good. (Don't take my word for it – try the competition!) ● Highly customisable, extensible ● Drupal does have good shopping cart modules: ● ● Ubercart (Drupal 6 & 7) http://drupal.org/project/ubercart ● ● Commerce (Drupal 7 only) ● http://drupal.org/project/commerce agileware.com.au * DrupalACT April 2012
  • 8. Build your website Do the usual Drupal build steps: ● ● Install Drupal and required modules ● Design or select required theme ● Customise installation, as required ● Test, test and test some more Common areas for customisation: ● ● Catalog (less clicks) ● Product display (make it sexy!) ● Pricing options (making choice easier) ● Checkout process (reduce steps) agileware.com.au * DrupalACT April 2012
  • 9. Demos 1.Default Drupal, Ubercart site 2.Standard shopping cart workflow 3.Customised user experience and workflow agileware.com.au * DrupalACT April 2012
  • 10. Essential modules Ubercart, http://drupal.org/project/ubercart ● ● Available for Drupal 6 or 7 Ubercart VAT, http://drupal.org/project/uc_vat ● ● Required for Ubercart, Drupal 6 only Ubercart SSL, http://drupal.org/project/uc_ssl ● ● Force SSL connection on Ubercart pages ● Secure Pages is another option agileware.com.au * DrupalACT April 2012
  • 11. Recommended modules Ubercart EWAY, http://drupal.org/project/uc_eway ● ● For EWAY integration to process credit card transactions ●Google Analytics, http://drupal.org/project/google_analytics ● Track conversions from Google Adwords Ubercart Views, http://drupal.org/project/uc_views ● ● Views integration, custom reports agileware.com.au * DrupalACT April 2012
  • 12. For Australian carts ●Import “Australia” into Country data and disable America & Canada (unless selling o/s). ● admin/store/settings/countries/edit Change US currency, measurements ● ● admin/store/settings/store/edit/format Configure UC_VAT, set up GST +10% tax. ● ● Required to display price as: $9.95 GST inc ● All prices should be stored ex-GST ● Apply only to orders for Australian customers ● admin/store/settings/taxes/vat agileware.com.au * DrupalACT April 2012
  • 13. For Australian carts Change default Invoice template ● ● Need to add information: Tax Invoice & ABN Copy and modify these files: ● ● ubercart/uc_order/templates/ uc_order-customer.tpl.php ● ● uc_order.tpl.php (make blank) ● active admin theme eg. sites/all/themes/rubik ● active site theme eg. sites/default/themes/agilemail ● Symlink admin theme files to active theme Acquia Prosper theme has /invoice set up correctly ● agileware.com.au * DrupalACT April 2012
  • 14. Demo GST tax rules ● GST inclusive, /admin/store/settings/taxes/vat ● Tax Invoice ● agileware.com.au * DrupalACT April 2012
  • 15. Recommended services EWAY, http://eway.com.au ● ● More on these guys shortly SSL certificate, http://rapidssl.com ● ● Decent price, quick to deliver, good compatibility Paypal, http://paypal.com.au ● ● Your customers may not trust you, but (unfortunately) they will trust Paypal Mailchimp, http://mailchimp.com ● ● Stay in touch with your customers, send newsletters agileware.com.au * DrupalACT April 2012
  • 16. Why EWAY? agileware.com.au * DrupalACT April 2012
  • 17. Why EWAY? API agnostic: ● ● Banks can have different credit card APIs ● Drupal modules exist for specific Banks ● General one which covers multiple Banks, see http://drupal.org/project/uc_migs ● EWAY is a credit card processor, talks to all Banks ● Provides independence from any single Bank agileware.com.au * DrupalACT April 2012
  • 18. Why EWAY? Security: ● ● Storing credit cart details is a very bad idea ● You become a target and are liable for breaches. ● Security is your problem. ● This is not a nice problem to have. ● So let someone else have this stress, EWAY! ● All credit card details are sent to EWAY over the wire, processed in real-time and never stored. ● Great anti-scam, anti-fraud features agileware.com.au * DrupalACT April 2012
  • 19. Why EWAY? Features: ● ● Have rich XML post-response based API, http://www.eway.com.au/Developer/eway-api/ ● Support token-based recurring transactions ● SMS transaction report ● Web control panel: reports, refunds, manual transactions ● Based in Canberra, Phillip ● Great phone and developer support (they listen!) ● Affordable agileware.com.au * DrupalACT April 2012
  • 20. New contender - FatZebra New Canberra startup ● Payment processor ● Cheaper than EWAY ● Similar API and features ● JSON based API ● Young and energetic team ● https://fatzebra.com.au ● agileware.com.au * DrupalACT April 2012
  • 21. Recommended payment options Don't force customers to pay using credit card ● Provide payment options, make the sale! ● ● EFT (direct deposit) ● Cheque ● Paypal ● Credit card agileware.com.au * DrupalACT April 2012
  • 22. Recurring payments Drupal module, http://drupal.org/uc_recurring ● Maintained by this guy, Chris Hood (thanks Chris!) ● ● chris@univate.com.au, http://univate.com.au agileware.com.au * DrupalACT April 2012
  • 23. Recurring payments ● Ability to set up recurring billing schedules: ● For individual products ● Entire orders (bunch of products) ● Can notify customer when payment due ● Or even better - bill the customer automatically if credit card details are stored (eek!) ● EWAY integration utilises tokenised payments, 100% secure ● Token used to bill customer, not CC stored (YAY!) agileware.com.au * DrupalACT April 2012
  • 24. Recurring payments ● Workflow overview (recurring & EWAY): 1.Customer submits order and credit card details 2.Customer details and credit card sent to EWAY 3.EWAY returns token 4.Drupal stores token with order 5.Each billing cycle, token sent to EWAY with bill amount 6.EWAY uses token to bill customer 7.EWAY returns success / fail to Drupal agileware.com.au * DrupalACT April 2012
  • 25. Recurring payments ● Watch for expiring credit cards, notify the customer to update their details ● This modules was developed to solve this problem, http://drupal.org/project/uc_recurring_cc_notify ● Automatically notifies customer agileware.com.au * DrupalACT April 2012
  • 26. Demo ● Recurring payments configuration, products and order agileware.com.au * DrupalACT April 2012
  • 27. Security Keep software up to date ● Disable modules not being used ● Complex passwords ● Do not store credit card details, at all ● Dodgy hosting ● Backups ● SSL ● Check logs and investigate errors ● agileware.com.au * DrupalACT April 2012
  • 28. Scams and fraud Merchant beware ● Stolen credit cards ● Dodgy orders ● EWAY helps protect against fraud ● Merchant diligence ● agileware.com.au * DrupalACT April 2012
  • 29. Startup and running costs Paypal reduces startup costs ● ●Not recommended for large transactions, best to use EFT for those (protect the margin!) Banks will charge: ● ● 2% to 3% per transaction ● plus annual fee ● plus account keeping fee ● Plus plus plus... agileware.com.au * DrupalACT April 2012
  • 30. Startup and running costs EWAY will charge ● ● Annual fee (free in 1st year) ● 0.50c per transaction SSL certificate $75 to $150 per year ● ●Your time to process orders and update website (this does not happen automagically!) agileware.com.au * DrupalACT April 2012
  • 31. Final thoughts Website performance matters, a lot ● Customers do not tolerate mistakes ● Your competitor is one click away ● Process refunds quickly ● Verify each transaction is legitimate ● Treat security seriously ● Optimising the user experience does work ● Automate and monitor what you can ● agileware.com.au * DrupalACT April 2012
  • 32. Questions? agileware.com.au * DrupalACT April 2012