SlideShare a Scribd company logo
1 of 27
Download to read offline
Experience the power of
Drupal as a platform for
content and commerce
Vimal Joseph
Senior Manager, Technology
Scalable cloud based e-commerce platform on Drupal with a
common back office for managing sales of entry passes to multiple events
Vimal Joseph
Senior Manager, Technology – Zyxware Technologies
Lead the solutions team at Zyxware
Solving problems using Drupal since 2010
Zyxware Technologies
Zyxware technologies, since 2006, has been an
exclusive Drupal service provider and has
contributed several modules and themes for Drupal.
https://www.drupal.org/u/zyxware
www.zyxware.com
The story...
On-line ticket selling platform allowing vendors to
manage ticket sales, purchases, order provisioning,
order reconciliation and accounting
Back-office operations such as ticket acquisition,
several refunds, and custom reports
Intelligent display system that prevent copying of
price by web scrapers
Fast search
Story (cont..)
The system should support any kind of events
Music concerts
Tennis matches
Movie tickets
Live shows
Etc...
Each type of events should be hosted in its own
domain
Each of these domains should be multilingual
Option to display same event with different pricing
and content in a different domain
Story (cont..)
And the customer also want to build a system that
automatically generate content for display based on
a template he create.
Eg:
[xyz:team-name] rugby tickets are available for sale
online. Book your [xyz:team-name] rugby tickets
and receive the best value for your money’s worth.
We work hard to keep our customers satisfied. Book
your [xyz:team-name] tickets and enjoy the match.
Decision criteria
Time constrain
Focus on a single event type and add other features
iteratively
The core architecture should be flexible enough to
achieve the goal – No rebuild later
Building something from scratch was out of the
question – considering the time lines
Technology
Drupal was the obvious choice to build this platform
Drupal is our default choice to build anything that
need to be extended further
Features
Domain based access control
E-Commerce features
Search
Multi language support
Back office features – Ticket acquisition and
allotment, Accounting, Reports etc..
Technology (cont...)
Drupal 7
Drupal Commerce
Domain
ApacheSolr
Views
Rules
Lots of custom modules
Statistics
140 contributed modules
30 features – exported configuration (around
60,000 lines of code)
17 custom modules
57810 lines of custom code
7980 commits
4 developers scaled up to 8 and then back to 4
Initial version delivered in 4 months
After the initial release, development continues for
more than 1.5 years with a team of 4 developers
Development Environment
Git repository was hosted internally with gitolite
Branch per feature GIT workflow
Redmine for issue tracking – integrated with gitolite
Development → Testing → Staging → Production
servers
System overview
Core data structure
Implementing the data
structure
Venue, Tournament, Team/Artist – Taxonomy
Display Entities – Node
Event – Custom Entity
Ticket – Commerce Product
Event Display
Venue Display
Content Template System
Token module can do wonders :)
Template entity to store token based templates,
which will be used to generate content for the
display nodes
Bulk upload data to the system
Feeds
Commerce Feeds
Custom feed importer plugin
Create/update events and products
Create/update venues, teams, tournaments
All entities in the system uses UUID
Rules to automate tasks
System will automatically create products for all
available seating categories set in the venue
Automatically archive or change display information
of events when the event expire
Generate the content for display nodes by applying
relevant templates when an event changes
Batch API to process large data
set
Bulk upload
Export events
Bulk price update
Complex reports
Drupal helped a lot
With out Drupal, this project will not be a success
Drupal helped us reduce the development time
many folds by utilizing its API as well as the
contributed modules
Views
Rules
Commerce
Domain Access
Metatags
Tokens
Feeds
...
Challenges
Configuration management was a mess
Feature module has its own limitations
It took lots of effort to make the live deployment
perfect – especially when there are a lot of
configuration changes
The project was very dynamic – priority changes
frequently, so we have to switch between features
frequently. Discarding features that were already in
staging was common.
Thanks to GIT – it offers a whole lot of techniques
to mange these kind of situations, but recreating
development, testing and staging branches were
common..
Lesson learned
Continuous integration and Unit test cases are must
It will take some time initially to setup a proper
workflow that fits the need of the project
It is worth spending time on that – it will save a lot
of time.
Automated code style checks, automatic branch
recreation, unit testing
Technical planning – it helps
And of-course – Drupal is the best platform to build
another platform
Contributions
A whole bunch of technical articles and how-tos at
www.zyxware.com
Modules in pipeline
Payment gateway integrations
G2S
EFT
A module that provide a block to publish context
based advertisements
Questions
Thank you
vimal.joseph@zyxware.com
https://www.drupal.org/u/zyxware
www.zyxware.com

More Related Content

Similar to Experience the power of Drupal as a platform that combines content and commerce

Google Cloud Fundamentals
Google Cloud Fundamentals Google Cloud Fundamentals
Google Cloud Fundamentals Omar Fathy
 
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
 Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos... Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...Senturus
 
Seminar presentation 05042011_v7_with_cl
Seminar presentation 05042011_v7_with_clSeminar presentation 05042011_v7_with_cl
Seminar presentation 05042011_v7_with_clmiket60
 
19507334023_NURISMA Z.D._PPT P PRADANA.pptx
19507334023_NURISMA Z.D._PPT P PRADANA.pptx19507334023_NURISMA Z.D._PPT P PRADANA.pptx
19507334023_NURISMA Z.D._PPT P PRADANA.pptxnurismazenitad12
 
Near real-time anomaly detection at Lyft
Near real-time anomaly detection at LyftNear real-time anomaly detection at Lyft
Near real-time anomaly detection at Lyftmarkgrover
 
ICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPTICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPTDr. Haxel Consult
 
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...WSO2
 
DNN Connect 2014 - Enterprise Ecommerce and DotNetNuke
DNN Connect 2014 - Enterprise Ecommerce and DotNetNukeDNN Connect 2014 - Enterprise Ecommerce and DotNetNuke
DNN Connect 2014 - Enterprise Ecommerce and DotNetNukeThomas Stensitzki
 
Digital Reinvention by NRB
Digital Reinvention by NRBDigital Reinvention by NRB
Digital Reinvention by NRBWilliam Poos
 
For linked in part 2 no template
For linked in part 2  no templateFor linked in part 2  no template
For linked in part 2 no templatePankaj Tomar
 
Serverless projects at Myplanet
Serverless projects at MyplanetServerless projects at Myplanet
Serverless projects at MyplanetDaniel Zivkovic
 
Digital Transformation: Connected API Ecosystems
Digital Transformation: Connected API EcosystemsDigital Transformation: Connected API Ecosystems
Digital Transformation: Connected API EcosystemsHARMAN Services
 
E-commerce in Action
E-commerce in ActionE-commerce in Action
E-commerce in ActionExove
 
Serverless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaServerless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaData Science Milan
 
Confluent Partner Tech Talk with BearingPoint
Confluent Partner Tech Talk with BearingPointConfluent Partner Tech Talk with BearingPoint
Confluent Partner Tech Talk with BearingPointconfluent
 
[WSO2Con EU 2017] Deriving Insights for Your Digital Business with Analytics
[WSO2Con EU 2017] Deriving Insights for Your Digital Business with Analytics[WSO2Con EU 2017] Deriving Insights for Your Digital Business with Analytics
[WSO2Con EU 2017] Deriving Insights for Your Digital Business with AnalyticsWSO2
 
The role of AWS in the Datalandscape of a fast growing Startup
The role of AWS in the Datalandscape of a fast growing StartupThe role of AWS in the Datalandscape of a fast growing Startup
The role of AWS in the Datalandscape of a fast growing StartupMaximilian Ehrlich
 
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data PlatformsData Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data PlatformsAnant Corporation
 

Similar to Experience the power of Drupal as a platform that combines content and commerce (20)

Google Cloud Fundamentals
Google Cloud Fundamentals Google Cloud Fundamentals
Google Cloud Fundamentals
 
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
 Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos... Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
 
Seminar presentation 05042011_v7_with_cl
Seminar presentation 05042011_v7_with_clSeminar presentation 05042011_v7_with_cl
Seminar presentation 05042011_v7_with_cl
 
19507334023_NURISMA Z.D._PPT P PRADANA.pptx
19507334023_NURISMA Z.D._PPT P PRADANA.pptx19507334023_NURISMA Z.D._PPT P PRADANA.pptx
19507334023_NURISMA Z.D._PPT P PRADANA.pptx
 
Near real-time anomaly detection at Lyft
Near real-time anomaly detection at LyftNear real-time anomaly detection at Lyft
Near real-time anomaly detection at Lyft
 
ICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPTICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPT
 
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
 
DNN Connect 2014 - Enterprise Ecommerce and DotNetNuke
DNN Connect 2014 - Enterprise Ecommerce and DotNetNukeDNN Connect 2014 - Enterprise Ecommerce and DotNetNuke
DNN Connect 2014 - Enterprise Ecommerce and DotNetNuke
 
1 App,
1 App, 1 App,
1 App,
 
Digital Reinvention by NRB
Digital Reinvention by NRBDigital Reinvention by NRB
Digital Reinvention by NRB
 
For linked in part 2 no template
For linked in part 2  no templateFor linked in part 2  no template
For linked in part 2 no template
 
Serverless projects at Myplanet
Serverless projects at MyplanetServerless projects at Myplanet
Serverless projects at Myplanet
 
Digital Transformation: Connected API Ecosystems
Digital Transformation: Connected API EcosystemsDigital Transformation: Connected API Ecosystems
Digital Transformation: Connected API Ecosystems
 
E-commerce in Action
E-commerce in ActionE-commerce in Action
E-commerce in Action
 
Serverless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaServerless machine learning architectures at Helixa
Serverless machine learning architectures at Helixa
 
Confluent Partner Tech Talk with BearingPoint
Confluent Partner Tech Talk with BearingPointConfluent Partner Tech Talk with BearingPoint
Confluent Partner Tech Talk with BearingPoint
 
Ml ops on AWS
Ml ops on AWSMl ops on AWS
Ml ops on AWS
 
[WSO2Con EU 2017] Deriving Insights for Your Digital Business with Analytics
[WSO2Con EU 2017] Deriving Insights for Your Digital Business with Analytics[WSO2Con EU 2017] Deriving Insights for Your Digital Business with Analytics
[WSO2Con EU 2017] Deriving Insights for Your Digital Business with Analytics
 
The role of AWS in the Datalandscape of a fast growing Startup
The role of AWS in the Datalandscape of a fast growing StartupThe role of AWS in the Datalandscape of a fast growing Startup
The role of AWS in the Datalandscape of a fast growing Startup
 
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data PlatformsData Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
 

Recently uploaded

The Rise of Subscription-Based Digital Services.pdf
The Rise of Subscription-Based Digital Services.pdfThe Rise of Subscription-Based Digital Services.pdf
The Rise of Subscription-Based Digital Services.pdfe-Market Hub
 
一比一定制(USC毕业证书)美国南加州大学毕业证学位证书
一比一定制(USC毕业证书)美国南加州大学毕业证学位证书一比一定制(USC毕业证书)美国南加州大学毕业证学位证书
一比一定制(USC毕业证书)美国南加州大学毕业证学位证书Fir
 
一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理
一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理
一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理AS
 
一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书
一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书
一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书B
 
一比一原版布兰迪斯大学毕业证如何办理
一比一原版布兰迪斯大学毕业证如何办理一比一原版布兰迪斯大学毕业证如何办理
一比一原版布兰迪斯大学毕业证如何办理A
 
一比一原版澳大利亚迪肯大学毕业证如何办理
一比一原版澳大利亚迪肯大学毕业证如何办理一比一原版澳大利亚迪肯大学毕业证如何办理
一比一原版澳大利亚迪肯大学毕业证如何办理SS
 
一比一原版英国创意艺术大学毕业证如何办理
一比一原版英国创意艺术大学毕业证如何办理一比一原版英国创意艺术大学毕业证如何办理
一比一原版英国创意艺术大学毕业证如何办理AS
 
TOP 100 Vulnerabilities Step-by-Step Guide Handbook
TOP 100 Vulnerabilities Step-by-Step Guide HandbookTOP 100 Vulnerabilities Step-by-Step Guide Handbook
TOP 100 Vulnerabilities Step-by-Step Guide HandbookVarun Mithran
 
Beyond Inbound: Unlocking the Secrets of API Egress Traffic Management
Beyond Inbound: Unlocking the Secrets of API Egress Traffic ManagementBeyond Inbound: Unlocking the Secrets of API Egress Traffic Management
Beyond Inbound: Unlocking the Secrets of API Egress Traffic Managementseank14
 
I’ll See Y’All Motherfuckers In Game 7 Shirt
I’ll See Y’All Motherfuckers In Game 7 ShirtI’ll See Y’All Motherfuckers In Game 7 Shirt
I’ll See Y’All Motherfuckers In Game 7 Shirtrahman018755
 
Washington Football Commanders Redskins Feathers Shirt
Washington Football Commanders Redskins Feathers ShirtWashington Football Commanders Redskins Feathers Shirt
Washington Football Commanders Redskins Feathers Shirtrahman018755
 
Free on Wednesdays T Shirts Free on Wednesdays Sweatshirts
Free on Wednesdays T Shirts Free on Wednesdays SweatshirtsFree on Wednesdays T Shirts Free on Wednesdays Sweatshirts
Free on Wednesdays T Shirts Free on Wednesdays Sweatshirtsrahman018755
 
原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样
原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样
原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样AS
 
一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样
一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样
一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样Fi
 
Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...
Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...
Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...Varun Mithran
 
一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样
一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样
一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样AS
 
VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...
VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...
VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...Model Neeha Mumbai
 
一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书
一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书
一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书c6eb683559b3
 
原版定制美国加州大学河滨分校毕业证原件一模一样
原版定制美国加州大学河滨分校毕业证原件一模一样原版定制美国加州大学河滨分校毕业证原件一模一样
原版定制美国加州大学河滨分校毕业证原件一模一样A
 
Free scottie t shirts Free scottie t shirts
Free scottie t shirts Free scottie t shirtsFree scottie t shirts Free scottie t shirts
Free scottie t shirts Free scottie t shirtsrahman018755
 

Recently uploaded (20)

The Rise of Subscription-Based Digital Services.pdf
The Rise of Subscription-Based Digital Services.pdfThe Rise of Subscription-Based Digital Services.pdf
The Rise of Subscription-Based Digital Services.pdf
 
一比一定制(USC毕业证书)美国南加州大学毕业证学位证书
一比一定制(USC毕业证书)美国南加州大学毕业证学位证书一比一定制(USC毕业证书)美国南加州大学毕业证学位证书
一比一定制(USC毕业证书)美国南加州大学毕业证学位证书
 
一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理
一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理
一比一原版(Dundee毕业证书)英国爱丁堡龙比亚大学毕业证如何办理
 
一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书
一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书
一比一定制(Temasek毕业证书)新加坡淡马锡理工学院毕业证学位证书
 
一比一原版布兰迪斯大学毕业证如何办理
一比一原版布兰迪斯大学毕业证如何办理一比一原版布兰迪斯大学毕业证如何办理
一比一原版布兰迪斯大学毕业证如何办理
 
一比一原版澳大利亚迪肯大学毕业证如何办理
一比一原版澳大利亚迪肯大学毕业证如何办理一比一原版澳大利亚迪肯大学毕业证如何办理
一比一原版澳大利亚迪肯大学毕业证如何办理
 
一比一原版英国创意艺术大学毕业证如何办理
一比一原版英国创意艺术大学毕业证如何办理一比一原版英国创意艺术大学毕业证如何办理
一比一原版英国创意艺术大学毕业证如何办理
 
TOP 100 Vulnerabilities Step-by-Step Guide Handbook
TOP 100 Vulnerabilities Step-by-Step Guide HandbookTOP 100 Vulnerabilities Step-by-Step Guide Handbook
TOP 100 Vulnerabilities Step-by-Step Guide Handbook
 
Beyond Inbound: Unlocking the Secrets of API Egress Traffic Management
Beyond Inbound: Unlocking the Secrets of API Egress Traffic ManagementBeyond Inbound: Unlocking the Secrets of API Egress Traffic Management
Beyond Inbound: Unlocking the Secrets of API Egress Traffic Management
 
I’ll See Y’All Motherfuckers In Game 7 Shirt
I’ll See Y’All Motherfuckers In Game 7 ShirtI’ll See Y’All Motherfuckers In Game 7 Shirt
I’ll See Y’All Motherfuckers In Game 7 Shirt
 
Washington Football Commanders Redskins Feathers Shirt
Washington Football Commanders Redskins Feathers ShirtWashington Football Commanders Redskins Feathers Shirt
Washington Football Commanders Redskins Feathers Shirt
 
Free on Wednesdays T Shirts Free on Wednesdays Sweatshirts
Free on Wednesdays T Shirts Free on Wednesdays SweatshirtsFree on Wednesdays T Shirts Free on Wednesdays Sweatshirts
Free on Wednesdays T Shirts Free on Wednesdays Sweatshirts
 
原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样
原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样
原版定制(LBS毕业证书)英国伦敦商学院毕业证原件一模一样
 
一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样
一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样
一比一原版(Soton毕业证书)南安普顿大学毕业证原件一模一样
 
Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...
Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...
Subdomain enumeration is a crucial phase in cybersecurity, particularly durin...
 
一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样
一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样
一比一原版(毕业证书)新加坡南洋理工学院毕业证原件一模一样
 
VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...
VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...
VIP ℂall Girls Bangalore 8250077686 WhatsApp: Me All Time Serviℂe Available D...
 
一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书
一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书
一比一原版(NYU毕业证书)美国纽约大学毕业证学位证书
 
原版定制美国加州大学河滨分校毕业证原件一模一样
原版定制美国加州大学河滨分校毕业证原件一模一样原版定制美国加州大学河滨分校毕业证原件一模一样
原版定制美国加州大学河滨分校毕业证原件一模一样
 
Free scottie t shirts Free scottie t shirts
Free scottie t shirts Free scottie t shirtsFree scottie t shirts Free scottie t shirts
Free scottie t shirts Free scottie t shirts
 

Experience the power of Drupal as a platform that combines content and commerce

  • 1.
  • 2. Experience the power of Drupal as a platform for content and commerce Vimal Joseph Senior Manager, Technology Scalable cloud based e-commerce platform on Drupal with a common back office for managing sales of entry passes to multiple events
  • 3. Vimal Joseph Senior Manager, Technology – Zyxware Technologies Lead the solutions team at Zyxware Solving problems using Drupal since 2010
  • 4. Zyxware Technologies Zyxware technologies, since 2006, has been an exclusive Drupal service provider and has contributed several modules and themes for Drupal. https://www.drupal.org/u/zyxware www.zyxware.com
  • 5. The story... On-line ticket selling platform allowing vendors to manage ticket sales, purchases, order provisioning, order reconciliation and accounting Back-office operations such as ticket acquisition, several refunds, and custom reports Intelligent display system that prevent copying of price by web scrapers Fast search
  • 6. Story (cont..) The system should support any kind of events Music concerts Tennis matches Movie tickets Live shows Etc... Each type of events should be hosted in its own domain Each of these domains should be multilingual Option to display same event with different pricing and content in a different domain
  • 7. Story (cont..) And the customer also want to build a system that automatically generate content for display based on a template he create. Eg: [xyz:team-name] rugby tickets are available for sale online. Book your [xyz:team-name] rugby tickets and receive the best value for your money’s worth. We work hard to keep our customers satisfied. Book your [xyz:team-name] tickets and enjoy the match.
  • 8. Decision criteria Time constrain Focus on a single event type and add other features iteratively The core architecture should be flexible enough to achieve the goal – No rebuild later Building something from scratch was out of the question – considering the time lines
  • 9. Technology Drupal was the obvious choice to build this platform Drupal is our default choice to build anything that need to be extended further Features Domain based access control E-Commerce features Search Multi language support Back office features – Ticket acquisition and allotment, Accounting, Reports etc..
  • 10. Technology (cont...) Drupal 7 Drupal Commerce Domain ApacheSolr Views Rules Lots of custom modules
  • 11. Statistics 140 contributed modules 30 features – exported configuration (around 60,000 lines of code) 17 custom modules 57810 lines of custom code 7980 commits 4 developers scaled up to 8 and then back to 4 Initial version delivered in 4 months After the initial release, development continues for more than 1.5 years with a team of 4 developers
  • 12. Development Environment Git repository was hosted internally with gitolite Branch per feature GIT workflow Redmine for issue tracking – integrated with gitolite Development → Testing → Staging → Production servers
  • 15. Implementing the data structure Venue, Tournament, Team/Artist – Taxonomy Display Entities – Node Event – Custom Entity Ticket – Commerce Product
  • 18. Content Template System Token module can do wonders :) Template entity to store token based templates, which will be used to generate content for the display nodes
  • 19. Bulk upload data to the system Feeds Commerce Feeds Custom feed importer plugin Create/update events and products Create/update venues, teams, tournaments All entities in the system uses UUID
  • 20. Rules to automate tasks System will automatically create products for all available seating categories set in the venue Automatically archive or change display information of events when the event expire Generate the content for display nodes by applying relevant templates when an event changes
  • 21. Batch API to process large data set Bulk upload Export events Bulk price update Complex reports
  • 22. Drupal helped a lot With out Drupal, this project will not be a success Drupal helped us reduce the development time many folds by utilizing its API as well as the contributed modules Views Rules Commerce Domain Access Metatags Tokens Feeds ...
  • 23. Challenges Configuration management was a mess Feature module has its own limitations It took lots of effort to make the live deployment perfect – especially when there are a lot of configuration changes The project was very dynamic – priority changes frequently, so we have to switch between features frequently. Discarding features that were already in staging was common. Thanks to GIT – it offers a whole lot of techniques to mange these kind of situations, but recreating development, testing and staging branches were common..
  • 24. Lesson learned Continuous integration and Unit test cases are must It will take some time initially to setup a proper workflow that fits the need of the project It is worth spending time on that – it will save a lot of time. Automated code style checks, automatic branch recreation, unit testing Technical planning – it helps And of-course – Drupal is the best platform to build another platform
  • 25. Contributions A whole bunch of technical articles and how-tos at www.zyxware.com Modules in pipeline Payment gateway integrations G2S EFT A module that provide a block to publish context based advertisements