SlideShare une entreprise Scribd logo
1  sur  25
Shopify
By Jumayel Islam
About
● one of the best designed and most feature-packed of the cloud-hosted ecommerce solutions
● amazing platform for building an online retail business
● Currently 275,000 stores use the platform
● it's a hosted solution, which means Shopify host your shop on their servers
● You don't have access to the back-end code but you can still massively customise your shop via
configuration, 'apps' or by customising your theme
Benefits
1. Responsive Website
- Free/Premium themes available
- Liquid is Shopify’s proprietary language to build custom themes
2. No Tech Worries
- provide faster and more secure hosting than you can do on your own
- don't have to worry about scalability
- fully PCI compliant
- use of caching, CDNs and other techniques by Shopify
- backed up on a regular basis
Benefits(Cont.)
3. 24/7 Customer Support
4. Easily add powerful features from App Store
- third party apps that can add functionality to your store
- Apps can be developed using Ruby on Rails
5. Import Large Product Catalogues Quickly
6. Plenty of Payment Gateways to Choose from
7. Minimal set up effort/cost
8. Easy to use admin screens including order management
9. No hardware/hosting worries
10. Access to a superfast platform, beneficial for user experience and SEO
Why shopify app?
• Shopify’s API provides an almost unlimited set of possibilities for interfacing the Shopify
platform with third-party software.
• Two ways you can make money building apps for Shopify stores
- Create a custom app for a client: Use the Shopify API to build and sell an app that
adds features and functionality to a client’s Shopify store.
- Build an app and sell it in the Shopify App Store: You’ll earn 80% of each app sale.
Get Started
● Become a Shopify Partner(Free) and create your development store
● Develop and install your app into your Development Store
● Submit to the app store
Prerequisites
• Create a new application in your partner account
• Set the Application Callback URL
to:http://localhost:3000
• Set the Application redirect_uri to:
http://localhost:3000/auth/shopify/callback
Shopify app store (GET)
Localhost (authenticate)
Shopify Admin (Permission)
Localhost (Install app, make api
calls)
OAuth (Step 1: Get the client’s credentials)
OAuth (Step 2: Asking for permission)
OAuth (Step 2: Asking for permission - Cont.)
To show the prompt, redirect the user to this URL:
https://{shop}.myshopify.com/admin/oauth/authorize? client_id={api_key}&
scope={scopes}&
redirect_uri={redirect_uri}&
state={nonce}}
{shop} - substitute this with the name of the user’s shop.
{scopes} - substitute this with a comma-separated list of scopes. For example, to write orders and read
customers use scope=write_orders,read_customers.
{redirect_uri} - substitute this with the URL where you want to redirect the users after they authorize the
client.
{nonce} - a randomly selected value provided by your application, which is unique for each authorization
request.
OAuth (Step 3: Confirming installation)
When the user clicks the Install button in the prompt, they will be redirected to the client server
One of the parameters passed in the confirmation redirect is the Authorization Code
https://example.org/some/redirect/uri?code={authorization_code}&
hmac=da9..08985&
timestamp=1409..6174&
state={nonce}&
shop={hostname}
OAuth (Step 3: Confirming installation - Cont.)
The authorization code can be exchanged once for a permanent access token
The exchange is made with a request to the shop
POST https://{shop}.myshopify.com/admin/oauth/access_token
With {shop} substituted for the name of the user’s shop and with the following parameters provided in the
body of the request:
client_id :The API Key for the app.
client_secret: The Shared Secret for the app.
code: The authorization code provided in the redirect.
OAuth (Step 3: Confirming installation - Cont.)
The server will respond with an access token
{
"access_token": "f85632530bf277ec9ac6f649fc327f17",
"scope": "write_orders,read_customers"
}
access_token is an API access token that can be used to access the shop’s data as long as the client is installed
Create Rails Application
We will use shopify_app gem to get the basic configuration to build our first shopify app using Ruby on
Rails
To get started add shopify_app to your Gemfile and bundle install
$ rails new my_shopify_app
$ cd my_shopify_app
$ echo "gem 'shopify_app'" >> Gemfile
$ bundle install
Run generator
$ rails generate shopify_app --api_key <your_api_key> --secret <your_app_secret>
The default generator will run the install, shop, and home_controller generators. This is the
recommended way to start your app.
Now you will need to configure few things in shopify_app.rb file in my_shopify_app/config/initializers
directory.
Configure Initializer
scope - the Oauth access scope required for your app, eg read_products, write_orders. Multiple options
need to be delimited by a comma-space. Ex:
config.scope = 'read_orders, read_products, write_products, read_themes, write_themes'
embedded - the default is to generate an embedded app, if you want a legacy non-embedded app then set
this to false. Ex:
config.embedded_app = false
● This generator creates a simple shop model and a migration.
● This generator also creates an example home controller and view which fetches and displays
products using the ShopifyAPI. You can later modify it according to your need.
Mounting the Engine
Mounting the Engine will provide the basic routes to authenticating a shop with your custom application. It
will provide:
Verb Route Action
GET '/login' Login
POST '/login' Login
GET '/auth/shopify/callba
ck'
Authenticate Callback
GET '/logout' Logout
POST '/webhooks/:type' Webhook Callback
Mounting the Engine(cont.)
The default routes of the Shopify rails engine, which is mounted to the root, can be altered to mount on
a different route.
The config/routes.rb can be modified to put these under a nested route (say /app-name) as:
mount ShopifyApp::Engine, at: '/app-name'
This will create the Shopify engine routes under the specified Subdirectory, as a result it will redirect new
consumers to /app-name/login and following a similar format for the other engine routes.
Shopify API
ShopifyAPI uses ActiveResource to communicate with the REST web service.
ActiveResource has to be configured with a fully authorized URL of a particular store first.
To make authenticated API requests you need to set the base site url as follows:
shop_url = "https://#{API_KEY}:#{SHOPIFY_TOKEN}@#{SHOP_URL}/admin"
ShopifyAPI::Base.site = shop_url
API_KEY: This is the key generated when you created your app in partner’s account.
SHOPIFY_TOKEN: This is the token stored in your shop table when the app is installed for a particular shop.
Shopify API(cont.)
shop = ShopifyAPI::Shop.current
"shop": {
"id": 690933842,
"name": "Apple Computers",
"email": "steve@apple.com",
"domain": "shop.apple.com",
"created_at": "2007-12-31T19:00:00-05:00",
"province": "California",
"country": "US",
"address1": "1 Infinite Loop",
"zip": "95014",
… … …
… … ...
}
Shopify API(cont.)
products = ShopifyAPI::Product.find(:all)
ShopifyAPI::Webhook.create({ topic: 'orders/create', address: [ENDPOINT_URL], format: 'json' })
themes = ShopifyAPI::Theme.find(:all)
asset = ShopifyAPI::Asset.find('templates/cart.liquid', :params => {:theme_id => main_theme_id})
Webhooks
Cart carts/create, carts/update
Checkout checkouts/create, checkouts/delete, checkouts/update
Order orders/cancelled, orders/create, orders/delete, orders/fulfilled,
orders/paid, orders/partially_fulfilled, orders/updated
Product products/create, products/delete, products/update
Shop app/uninstalled, shop/update
Theme themes/create, themes/delete, themes/publish, themes/update
API Reference
https://help.shopify.com/api/reference
Popular Shopify Apps
Better Coupon Box
offer site visitors a discount coupon if they follow social accounts or subscribe emails for newsletter.
Stores installing this app with a view to rocketing followers for their Facebook / Twitter accounts and
growing email list to sell much better with email marketing.
Quick Facebook Live Chat
allows your customers to send messages to your Facebook page inbox right on store.
Then, you can chat with them via inbox as Facebook friends and turn them into your paying customers.
Your conversation history with customers are forever saved with Facebook messenger. No more emails
exchange for customer support,
Thank You

Contenu connexe

Tendances

Awesome e commerce-shopify
Awesome e commerce-shopifyAwesome e commerce-shopify
Awesome e commerce-shopifyMichael Trang
 
Shopify & Shopify Plus Ecommerce Development Experts
Shopify & Shopify Plus Ecommerce Development Experts Shopify & Shopify Plus Ecommerce Development Experts
Shopify & Shopify Plus Ecommerce Development Experts Folio3 Software
 
How to setup shopify store
How to setup shopify storeHow to setup shopify store
How to setup shopify storeGoWebBaby
 
Shopify Proposal Template PowerPoint Presentation Slides
Shopify Proposal Template PowerPoint Presentation SlidesShopify Proposal Template PowerPoint Presentation Slides
Shopify Proposal Template PowerPoint Presentation SlidesSlideTeam
 
Go4Grocery - Startup Pitch
Go4Grocery - Startup PitchGo4Grocery - Startup Pitch
Go4Grocery - Startup PitchFahad Ramzan
 
Shopify case study
Shopify case studyShopify case study
Shopify case studyPaul Miller
 
Shopify Tutorial
Shopify TutorialShopify Tutorial
Shopify TutorialPuttiApps
 
Shopify Dropshipping Guide - Why Use Shopify
Shopify Dropshipping Guide - Why Use ShopifyShopify Dropshipping Guide - Why Use Shopify
Shopify Dropshipping Guide - Why Use ShopifyIlya Bilbao
 
What Is Drop Shipping
What Is Drop ShippingWhat Is Drop Shipping
What Is Drop Shippinglenovodmartin
 
Understanding dropshipping
Understanding dropshippingUnderstanding dropshipping
Understanding dropshippingStephen Akintayo
 
Ecommerce Technology Pitch Deck
Ecommerce Technology Pitch DeckEcommerce Technology Pitch Deck
Ecommerce Technology Pitch DeckDerric Haynie
 
A Beginner's Guide to Dropshipping from China
A Beginner's Guide to Dropshipping from ChinaA Beginner's Guide to Dropshipping from China
A Beginner's Guide to Dropshipping from ChinaShirley Shi
 
E commerce Pitch deck
E commerce Pitch deckE commerce Pitch deck
E commerce Pitch deckViewmark
 
Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...
Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...
Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...saastr
 
27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdf
27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdf27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdf
27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdfEuropean Innovation Academy
 
Dropshipping 101: Getting Started With a Dropshipping Business
Dropshipping 101: Getting Started With a Dropshipping BusinessDropshipping 101: Getting Started With a Dropshipping Business
Dropshipping 101: Getting Started With a Dropshipping BusinessZenventory
 
Advanced Content Marketing Training
Advanced Content Marketing TrainingAdvanced Content Marketing Training
Advanced Content Marketing TrainingAbiodun Babalola
 
3 Proven Sales Email Templates Used by Successful Companies
3 Proven Sales Email Templates Used by Successful Companies3 Proven Sales Email Templates Used by Successful Companies
3 Proven Sales Email Templates Used by Successful CompaniesHubSpot
 

Tendances (20)

Awesome e commerce-shopify
Awesome e commerce-shopifyAwesome e commerce-shopify
Awesome e commerce-shopify
 
Shopify & Shopify Plus Ecommerce Development Experts
Shopify & Shopify Plus Ecommerce Development Experts Shopify & Shopify Plus Ecommerce Development Experts
Shopify & Shopify Plus Ecommerce Development Experts
 
How to setup shopify store
How to setup shopify storeHow to setup shopify store
How to setup shopify store
 
Shopify Proposal Template PowerPoint Presentation Slides
Shopify Proposal Template PowerPoint Presentation SlidesShopify Proposal Template PowerPoint Presentation Slides
Shopify Proposal Template PowerPoint Presentation Slides
 
Go4Grocery - Startup Pitch
Go4Grocery - Startup PitchGo4Grocery - Startup Pitch
Go4Grocery - Startup Pitch
 
Shopify case study
Shopify case studyShopify case study
Shopify case study
 
Shopify Tutorial
Shopify TutorialShopify Tutorial
Shopify Tutorial
 
Shopify Dropshipping Guide - Why Use Shopify
Shopify Dropshipping Guide - Why Use ShopifyShopify Dropshipping Guide - Why Use Shopify
Shopify Dropshipping Guide - Why Use Shopify
 
Online food delivery
Online food delivery Online food delivery
Online food delivery
 
What Is Drop Shipping
What Is Drop ShippingWhat Is Drop Shipping
What Is Drop Shipping
 
Understanding dropshipping
Understanding dropshippingUnderstanding dropshipping
Understanding dropshipping
 
Ecommerce Technology Pitch Deck
Ecommerce Technology Pitch DeckEcommerce Technology Pitch Deck
Ecommerce Technology Pitch Deck
 
A Beginner's Guide to Dropshipping from China
A Beginner's Guide to Dropshipping from ChinaA Beginner's Guide to Dropshipping from China
A Beginner's Guide to Dropshipping from China
 
E commerce Pitch deck
E commerce Pitch deckE commerce Pitch deck
E commerce Pitch deck
 
Shopify
ShopifyShopify
Shopify
 
Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...
Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...
Lessons from Gorgias: How to Close your First 1000 Customers Based Solely on ...
 
27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdf
27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdf27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdf
27_07_Landing Pages_Gilles de Clerck_EIA Porto 2022.pdf
 
Dropshipping 101: Getting Started With a Dropshipping Business
Dropshipping 101: Getting Started With a Dropshipping BusinessDropshipping 101: Getting Started With a Dropshipping Business
Dropshipping 101: Getting Started With a Dropshipping Business
 
Advanced Content Marketing Training
Advanced Content Marketing TrainingAdvanced Content Marketing Training
Advanced Content Marketing Training
 
3 Proven Sales Email Templates Used by Successful Companies
3 Proven Sales Email Templates Used by Successful Companies3 Proven Sales Email Templates Used by Successful Companies
3 Proven Sales Email Templates Used by Successful Companies
 

En vedette

Shopify Retail Tour - Mailchimp Email Marketing
Shopify Retail Tour - Mailchimp Email MarketingShopify Retail Tour - Mailchimp Email Marketing
Shopify Retail Tour - Mailchimp Email MarketingShopify
 
Shopify - Start Your Business Now
Shopify - Start Your Business NowShopify - Start Your Business Now
Shopify - Start Your Business Nowkabukithemes
 
Growth Strategies
Growth StrategiesGrowth Strategies
Growth StrategiesShopify
 
Shipping with Shopify
Shipping with ShopifyShipping with Shopify
Shipping with ShopifyShopify
 
Conquering The Omnichannel Arena
Conquering The Omnichannel ArenaConquering The Omnichannel Arena
Conquering The Omnichannel ArenaG3 Communications
 
20 Shopify landing pages that will inspire your next redesign
20 Shopify landing pages that will inspire your next redesign20 Shopify landing pages that will inspire your next redesign
20 Shopify landing pages that will inspire your next redesignGoSquared
 
Retail Tour Partner Workshop - Zendesk
Retail Tour Partner Workshop - ZendeskRetail Tour Partner Workshop - Zendesk
Retail Tour Partner Workshop - ZendeskShopify
 
50+ Shopify Tools to Grow and Manage Your eCommerce Business
50+ Shopify Tools to Grow and Manage Your eCommerce Business50+ Shopify Tools to Grow and Manage Your eCommerce Business
50+ Shopify Tools to Grow and Manage Your eCommerce BusinessPixc
 
Retail Industry Analysis 2013
Retail Industry Analysis 2013Retail Industry Analysis 2013
Retail Industry Analysis 2013Propane Studio
 
Creating a Great Customer Experience Any Place with Tara and Anne
Creating a Great Customer Experience Any Place with Tara and AnneCreating a Great Customer Experience Any Place with Tara and Anne
Creating a Great Customer Experience Any Place with Tara and AnneiQmetrixCorp
 
Omni-Channel Marketing – Bridging the Gap between Insight & Execution
Omni-Channel Marketing – Bridging the Gap between Insight & ExecutionOmni-Channel Marketing – Bridging the Gap between Insight & Execution
Omni-Channel Marketing – Bridging the Gap between Insight & ExecutionG3 Communications
 
JDA Innovation Forum: Seamless Omnichannel Campaigns Revenue Model
JDA Innovation Forum: Seamless Omnichannel Campaigns Revenue ModelJDA Innovation Forum: Seamless Omnichannel Campaigns Revenue Model
JDA Innovation Forum: Seamless Omnichannel Campaigns Revenue ModelFederico Gasparotto
 
Neo noir
Neo noirNeo noir
Neo noirCaxie
 
Audiodec
AudiodecAudiodec
AudiodecIvan Bz
 
без имени 1
без имени 1без имени 1
без имени 1Aleksej123
 

En vedette (15)

Shopify Retail Tour - Mailchimp Email Marketing
Shopify Retail Tour - Mailchimp Email MarketingShopify Retail Tour - Mailchimp Email Marketing
Shopify Retail Tour - Mailchimp Email Marketing
 
Shopify - Start Your Business Now
Shopify - Start Your Business NowShopify - Start Your Business Now
Shopify - Start Your Business Now
 
Growth Strategies
Growth StrategiesGrowth Strategies
Growth Strategies
 
Shipping with Shopify
Shipping with ShopifyShipping with Shopify
Shipping with Shopify
 
Conquering The Omnichannel Arena
Conquering The Omnichannel ArenaConquering The Omnichannel Arena
Conquering The Omnichannel Arena
 
20 Shopify landing pages that will inspire your next redesign
20 Shopify landing pages that will inspire your next redesign20 Shopify landing pages that will inspire your next redesign
20 Shopify landing pages that will inspire your next redesign
 
Retail Tour Partner Workshop - Zendesk
Retail Tour Partner Workshop - ZendeskRetail Tour Partner Workshop - Zendesk
Retail Tour Partner Workshop - Zendesk
 
50+ Shopify Tools to Grow and Manage Your eCommerce Business
50+ Shopify Tools to Grow and Manage Your eCommerce Business50+ Shopify Tools to Grow and Manage Your eCommerce Business
50+ Shopify Tools to Grow and Manage Your eCommerce Business
 
Retail Industry Analysis 2013
Retail Industry Analysis 2013Retail Industry Analysis 2013
Retail Industry Analysis 2013
 
Creating a Great Customer Experience Any Place with Tara and Anne
Creating a Great Customer Experience Any Place with Tara and AnneCreating a Great Customer Experience Any Place with Tara and Anne
Creating a Great Customer Experience Any Place with Tara and Anne
 
Omni-Channel Marketing – Bridging the Gap between Insight & Execution
Omni-Channel Marketing – Bridging the Gap between Insight & ExecutionOmni-Channel Marketing – Bridging the Gap between Insight & Execution
Omni-Channel Marketing – Bridging the Gap between Insight & Execution
 
JDA Innovation Forum: Seamless Omnichannel Campaigns Revenue Model
JDA Innovation Forum: Seamless Omnichannel Campaigns Revenue ModelJDA Innovation Forum: Seamless Omnichannel Campaigns Revenue Model
JDA Innovation Forum: Seamless Omnichannel Campaigns Revenue Model
 
Neo noir
Neo noirNeo noir
Neo noir
 
Audiodec
AudiodecAudiodec
Audiodec
 
без имени 1
без имени 1без имени 1
без имени 1
 

Similaire à Shopify

Big commerce app development
Big commerce app developmentBig commerce app development
Big commerce app developmentNascenia IT
 
API Product Management and Strategy
API Product Management and StrategyAPI Product Management and Strategy
API Product Management and Strategyadritab
 
Salesforce Marketing Cloud connector for Wordpress WooCommerce
Salesforce Marketing Cloud connector for Wordpress WooCommerceSalesforce Marketing Cloud connector for Wordpress WooCommerce
Salesforce Marketing Cloud connector for Wordpress WooCommerceWebkul Software Pvt. Ltd.
 
Different architecture topology for dynamics 365 retail
Different architecture topology for dynamics 365 retailDifferent architecture topology for dynamics 365 retail
Different architecture topology for dynamics 365 retailSonny56
 
Salesforce Marketing Cloud Connector for PrestaShop
Salesforce Marketing Cloud Connector for PrestaShopSalesforce Marketing Cloud Connector for PrestaShop
Salesforce Marketing Cloud Connector for PrestaShopWebkul Software Pvt. Ltd.
 
Building a Headless Shop
Building a Headless ShopBuilding a Headless Shop
Building a Headless ShopPascalKaufmann
 
Developing eCommerce Apps with the Shopify API
Developing eCommerce Apps with the Shopify APIDeveloping eCommerce Apps with the Shopify API
Developing eCommerce Apps with the Shopify APIJosh Brown
 
Connection flows
Connection flowsConnection flows
Connection flowsAPI2Cart
 
Shopify Theme Building Workshop
Shopify Theme Building WorkshopShopify Theme Building Workshop
Shopify Theme Building WorkshopKeir Whitaker
 
Shopify App Developments RoadMap2024.pptx
Shopify App Developments RoadMap2024.pptxShopify App Developments RoadMap2024.pptx
Shopify App Developments RoadMap2024.pptxShahram Foroozan
 
Shopify custom payment gateway development for paycertify - The Brihaspati In...
Shopify custom payment gateway development for paycertify - The Brihaspati In...Shopify custom payment gateway development for paycertify - The Brihaspati In...
Shopify custom payment gateway development for paycertify - The Brihaspati In...The Brihaspati Infotech
 
Salesforce Marketing Cloud Connector For Shopify
Salesforce Marketing Cloud Connector For ShopifySalesforce Marketing Cloud Connector For Shopify
Salesforce Marketing Cloud Connector For ShopifyWebkul Software Pvt. Ltd.
 
Customer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using ClearbitCustomer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using ClearbitJanBogaert8
 
Birmingham Autumn Shopify Meetup - 5th October 2017
Birmingham Autumn Shopify Meetup - 5th October 2017Birmingham Autumn Shopify Meetup - 5th October 2017
Birmingham Autumn Shopify Meetup - 5th October 2017Alisa Nemova
 
Building Ecommerce Storefronts on the JAMstack
Building Ecommerce Storefronts on the JAMstackBuilding Ecommerce Storefronts on the JAMstack
Building Ecommerce Storefronts on the JAMstackBigCommerce
 
Azure APIM Presentation to understand about.pptx
Azure APIM Presentation to understand about.pptxAzure APIM Presentation to understand about.pptx
Azure APIM Presentation to understand about.pptxpythagorus143
 
Wix to Shopify migration checklist.pdf
Wix to Shopify migration checklist.pdfWix to Shopify migration checklist.pdf
Wix to Shopify migration checklist.pdfCart2Cart2
 

Similaire à Shopify (20)

Big commerce app development
Big commerce app developmentBig commerce app development
Big commerce app development
 
API Product Management and Strategy
API Product Management and StrategyAPI Product Management and Strategy
API Product Management and Strategy
 
Salesforce Marketing Cloud For WooCommerce
Salesforce Marketing Cloud For WooCommerceSalesforce Marketing Cloud For WooCommerce
Salesforce Marketing Cloud For WooCommerce
 
CS-Cart Shopify Connector
CS-Cart Shopify ConnectorCS-Cart Shopify Connector
CS-Cart Shopify Connector
 
Salesforce Marketing Cloud connector for Wordpress WooCommerce
Salesforce Marketing Cloud connector for Wordpress WooCommerceSalesforce Marketing Cloud connector for Wordpress WooCommerce
Salesforce Marketing Cloud connector for Wordpress WooCommerce
 
Different architecture topology for dynamics 365 retail
Different architecture topology for dynamics 365 retailDifferent architecture topology for dynamics 365 retail
Different architecture topology for dynamics 365 retail
 
Salesforce Marketing Cloud Connector for PrestaShop
Salesforce Marketing Cloud Connector for PrestaShopSalesforce Marketing Cloud Connector for PrestaShop
Salesforce Marketing Cloud Connector for PrestaShop
 
Building a Headless Shop
Building a Headless ShopBuilding a Headless Shop
Building a Headless Shop
 
Developing eCommerce Apps with the Shopify API
Developing eCommerce Apps with the Shopify APIDeveloping eCommerce Apps with the Shopify API
Developing eCommerce Apps with the Shopify API
 
Connection flows
Connection flowsConnection flows
Connection flows
 
Shopify Theme Building Workshop
Shopify Theme Building WorkshopShopify Theme Building Workshop
Shopify Theme Building Workshop
 
Shopify App Developments RoadMap2024.pptx
Shopify App Developments RoadMap2024.pptxShopify App Developments RoadMap2024.pptx
Shopify App Developments RoadMap2024.pptx
 
Shopify custom payment gateway development for paycertify - The Brihaspati In...
Shopify custom payment gateway development for paycertify - The Brihaspati In...Shopify custom payment gateway development for paycertify - The Brihaspati In...
Shopify custom payment gateway development for paycertify - The Brihaspati In...
 
Salesforce Marketing Cloud Connector For Shopify
Salesforce Marketing Cloud Connector For ShopifySalesforce Marketing Cloud Connector For Shopify
Salesforce Marketing Cloud Connector For Shopify
 
Customer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using ClearbitCustomer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
 
Magento Mailchimp module user manual
Magento Mailchimp module user manualMagento Mailchimp module user manual
Magento Mailchimp module user manual
 
Birmingham Autumn Shopify Meetup - 5th October 2017
Birmingham Autumn Shopify Meetup - 5th October 2017Birmingham Autumn Shopify Meetup - 5th October 2017
Birmingham Autumn Shopify Meetup - 5th October 2017
 
Building Ecommerce Storefronts on the JAMstack
Building Ecommerce Storefronts on the JAMstackBuilding Ecommerce Storefronts on the JAMstack
Building Ecommerce Storefronts on the JAMstack
 
Azure APIM Presentation to understand about.pptx
Azure APIM Presentation to understand about.pptxAzure APIM Presentation to understand about.pptx
Azure APIM Presentation to understand about.pptx
 
Wix to Shopify migration checklist.pdf
Wix to Shopify migration checklist.pdfWix to Shopify migration checklist.pdf
Wix to Shopify migration checklist.pdf
 

Plus de Nascenia IT

Introduction to basic data analytics tools
Introduction to basic data analytics toolsIntroduction to basic data analytics tools
Introduction to basic data analytics toolsNascenia IT
 
Communication workshop in nascenia
Communication workshop in nasceniaCommunication workshop in nascenia
Communication workshop in nasceniaNascenia IT
 
The Art of Statistical Deception
The Art of Statistical DeceptionThe Art of Statistical Deception
The Art of Statistical DeceptionNascenia IT
 
করোনায় কী করি!
করোনায় কী করি!করোনায় কী করি!
করোনায় কী করি!Nascenia IT
 
GDPR compliance expectations from the development team
GDPR compliance expectations from the development teamGDPR compliance expectations from the development team
GDPR compliance expectations from the development teamNascenia IT
 
Writing Clean Code
Writing Clean CodeWriting Clean Code
Writing Clean CodeNascenia IT
 
History & Introduction of Neural Network and use of it in Computer Vision
History & Introduction of Neural Network and use of it in Computer VisionHistory & Introduction of Neural Network and use of it in Computer Vision
History & Introduction of Neural Network and use of it in Computer VisionNascenia IT
 
Ruby on Rails: Coding Guideline
Ruby on Rails: Coding GuidelineRuby on Rails: Coding Guideline
Ruby on Rails: Coding GuidelineNascenia IT
 
iphone 11 new features
iphone 11 new featuresiphone 11 new features
iphone 11 new featuresNascenia IT
 
Software quality assurance and cyber security
Software quality assurance and cyber securitySoftware quality assurance and cyber security
Software quality assurance and cyber securityNascenia IT
 
Job Market Scenario For Freshers
Job Market Scenario For Freshers Job Market Scenario For Freshers
Job Market Scenario For Freshers Nascenia IT
 
Modern Frontend Technologies (BEM, Retina)
Modern Frontend Technologies (BEM, Retina)Modern Frontend Technologies (BEM, Retina)
Modern Frontend Technologies (BEM, Retina)Nascenia IT
 
CSS for Developers
CSS for DevelopersCSS for Developers
CSS for DevelopersNascenia IT
 
Integrating QuickBooks Desktop with Rails Application
Integrating QuickBooks Desktop with Rails ApplicationIntegrating QuickBooks Desktop with Rails Application
Integrating QuickBooks Desktop with Rails ApplicationNascenia IT
 
TypeScript: Basic Features and Compilation Guide
TypeScript: Basic Features and Compilation GuideTypeScript: Basic Features and Compilation Guide
TypeScript: Basic Features and Compilation GuideNascenia IT
 
Ruby conf 2016 - Secrets of Testing Rails 5 Apps
Ruby conf 2016 - Secrets of Testing Rails 5 AppsRuby conf 2016 - Secrets of Testing Rails 5 Apps
Ruby conf 2016 - Secrets of Testing Rails 5 AppsNascenia IT
 
COREXIT: Microsoft’s new cross platform framework
COREXIT: Microsoft’s new cross platform frameworkCOREXIT: Microsoft’s new cross platform framework
COREXIT: Microsoft’s new cross platform frameworkNascenia IT
 
An overview on the Reddot Ruby Conf 2016, Singapore
An overview on the Reddot Ruby Conf 2016, SingaporeAn overview on the Reddot Ruby Conf 2016, Singapore
An overview on the Reddot Ruby Conf 2016, SingaporeNascenia IT
 
Software Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devilSoftware Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devilNascenia IT
 

Plus de Nascenia IT (20)

Introduction to basic data analytics tools
Introduction to basic data analytics toolsIntroduction to basic data analytics tools
Introduction to basic data analytics tools
 
Communication workshop in nascenia
Communication workshop in nasceniaCommunication workshop in nascenia
Communication workshop in nascenia
 
The Art of Statistical Deception
The Art of Statistical DeceptionThe Art of Statistical Deception
The Art of Statistical Deception
 
করোনায় কী করি!
করোনায় কী করি!করোনায় কী করি!
করোনায় কী করি!
 
GDPR compliance expectations from the development team
GDPR compliance expectations from the development teamGDPR compliance expectations from the development team
GDPR compliance expectations from the development team
 
Writing Clean Code
Writing Clean CodeWriting Clean Code
Writing Clean Code
 
History & Introduction of Neural Network and use of it in Computer Vision
History & Introduction of Neural Network and use of it in Computer VisionHistory & Introduction of Neural Network and use of it in Computer Vision
History & Introduction of Neural Network and use of it in Computer Vision
 
Ruby on Rails: Coding Guideline
Ruby on Rails: Coding GuidelineRuby on Rails: Coding Guideline
Ruby on Rails: Coding Guideline
 
iphone 11 new features
iphone 11 new featuresiphone 11 new features
iphone 11 new features
 
Software quality assurance and cyber security
Software quality assurance and cyber securitySoftware quality assurance and cyber security
Software quality assurance and cyber security
 
Job Market Scenario For Freshers
Job Market Scenario For Freshers Job Market Scenario For Freshers
Job Market Scenario For Freshers
 
Modern Frontend Technologies (BEM, Retina)
Modern Frontend Technologies (BEM, Retina)Modern Frontend Technologies (BEM, Retina)
Modern Frontend Technologies (BEM, Retina)
 
CSS for Developers
CSS for DevelopersCSS for Developers
CSS for Developers
 
Integrating QuickBooks Desktop with Rails Application
Integrating QuickBooks Desktop with Rails ApplicationIntegrating QuickBooks Desktop with Rails Application
Integrating QuickBooks Desktop with Rails Application
 
TypeScript: Basic Features and Compilation Guide
TypeScript: Basic Features and Compilation GuideTypeScript: Basic Features and Compilation Guide
TypeScript: Basic Features and Compilation Guide
 
Clean code
Clean codeClean code
Clean code
 
Ruby conf 2016 - Secrets of Testing Rails 5 Apps
Ruby conf 2016 - Secrets of Testing Rails 5 AppsRuby conf 2016 - Secrets of Testing Rails 5 Apps
Ruby conf 2016 - Secrets of Testing Rails 5 Apps
 
COREXIT: Microsoft’s new cross platform framework
COREXIT: Microsoft’s new cross platform frameworkCOREXIT: Microsoft’s new cross platform framework
COREXIT: Microsoft’s new cross platform framework
 
An overview on the Reddot Ruby Conf 2016, Singapore
An overview on the Reddot Ruby Conf 2016, SingaporeAn overview on the Reddot Ruby Conf 2016, Singapore
An overview on the Reddot Ruby Conf 2016, Singapore
 
Software Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devilSoftware Quality Assurance: A mind game between you and devil
Software Quality Assurance: A mind game between you and devil
 

Dernier

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 

Dernier (20)

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 

Shopify

  • 2. About ● one of the best designed and most feature-packed of the cloud-hosted ecommerce solutions ● amazing platform for building an online retail business ● Currently 275,000 stores use the platform ● it's a hosted solution, which means Shopify host your shop on their servers ● You don't have access to the back-end code but you can still massively customise your shop via configuration, 'apps' or by customising your theme
  • 3. Benefits 1. Responsive Website - Free/Premium themes available - Liquid is Shopify’s proprietary language to build custom themes 2. No Tech Worries - provide faster and more secure hosting than you can do on your own - don't have to worry about scalability - fully PCI compliant - use of caching, CDNs and other techniques by Shopify - backed up on a regular basis
  • 4. Benefits(Cont.) 3. 24/7 Customer Support 4. Easily add powerful features from App Store - third party apps that can add functionality to your store - Apps can be developed using Ruby on Rails 5. Import Large Product Catalogues Quickly 6. Plenty of Payment Gateways to Choose from 7. Minimal set up effort/cost 8. Easy to use admin screens including order management 9. No hardware/hosting worries 10. Access to a superfast platform, beneficial for user experience and SEO
  • 5. Why shopify app? • Shopify’s API provides an almost unlimited set of possibilities for interfacing the Shopify platform with third-party software. • Two ways you can make money building apps for Shopify stores - Create a custom app for a client: Use the Shopify API to build and sell an app that adds features and functionality to a client’s Shopify store. - Build an app and sell it in the Shopify App Store: You’ll earn 80% of each app sale.
  • 6. Get Started ● Become a Shopify Partner(Free) and create your development store ● Develop and install your app into your Development Store ● Submit to the app store
  • 7. Prerequisites • Create a new application in your partner account • Set the Application Callback URL to:http://localhost:3000 • Set the Application redirect_uri to: http://localhost:3000/auth/shopify/callback Shopify app store (GET) Localhost (authenticate) Shopify Admin (Permission) Localhost (Install app, make api calls)
  • 8. OAuth (Step 1: Get the client’s credentials)
  • 9. OAuth (Step 2: Asking for permission)
  • 10. OAuth (Step 2: Asking for permission - Cont.) To show the prompt, redirect the user to this URL: https://{shop}.myshopify.com/admin/oauth/authorize? client_id={api_key}& scope={scopes}& redirect_uri={redirect_uri}& state={nonce}} {shop} - substitute this with the name of the user’s shop. {scopes} - substitute this with a comma-separated list of scopes. For example, to write orders and read customers use scope=write_orders,read_customers. {redirect_uri} - substitute this with the URL where you want to redirect the users after they authorize the client. {nonce} - a randomly selected value provided by your application, which is unique for each authorization request.
  • 11. OAuth (Step 3: Confirming installation) When the user clicks the Install button in the prompt, they will be redirected to the client server One of the parameters passed in the confirmation redirect is the Authorization Code https://example.org/some/redirect/uri?code={authorization_code}& hmac=da9..08985& timestamp=1409..6174& state={nonce}& shop={hostname}
  • 12. OAuth (Step 3: Confirming installation - Cont.) The authorization code can be exchanged once for a permanent access token The exchange is made with a request to the shop POST https://{shop}.myshopify.com/admin/oauth/access_token With {shop} substituted for the name of the user’s shop and with the following parameters provided in the body of the request: client_id :The API Key for the app. client_secret: The Shared Secret for the app. code: The authorization code provided in the redirect.
  • 13. OAuth (Step 3: Confirming installation - Cont.) The server will respond with an access token { "access_token": "f85632530bf277ec9ac6f649fc327f17", "scope": "write_orders,read_customers" } access_token is an API access token that can be used to access the shop’s data as long as the client is installed
  • 14. Create Rails Application We will use shopify_app gem to get the basic configuration to build our first shopify app using Ruby on Rails To get started add shopify_app to your Gemfile and bundle install $ rails new my_shopify_app $ cd my_shopify_app $ echo "gem 'shopify_app'" >> Gemfile $ bundle install
  • 15. Run generator $ rails generate shopify_app --api_key <your_api_key> --secret <your_app_secret> The default generator will run the install, shop, and home_controller generators. This is the recommended way to start your app. Now you will need to configure few things in shopify_app.rb file in my_shopify_app/config/initializers directory.
  • 16. Configure Initializer scope - the Oauth access scope required for your app, eg read_products, write_orders. Multiple options need to be delimited by a comma-space. Ex: config.scope = 'read_orders, read_products, write_products, read_themes, write_themes' embedded - the default is to generate an embedded app, if you want a legacy non-embedded app then set this to false. Ex: config.embedded_app = false ● This generator creates a simple shop model and a migration. ● This generator also creates an example home controller and view which fetches and displays products using the ShopifyAPI. You can later modify it according to your need.
  • 17. Mounting the Engine Mounting the Engine will provide the basic routes to authenticating a shop with your custom application. It will provide: Verb Route Action GET '/login' Login POST '/login' Login GET '/auth/shopify/callba ck' Authenticate Callback GET '/logout' Logout POST '/webhooks/:type' Webhook Callback
  • 18. Mounting the Engine(cont.) The default routes of the Shopify rails engine, which is mounted to the root, can be altered to mount on a different route. The config/routes.rb can be modified to put these under a nested route (say /app-name) as: mount ShopifyApp::Engine, at: '/app-name' This will create the Shopify engine routes under the specified Subdirectory, as a result it will redirect new consumers to /app-name/login and following a similar format for the other engine routes.
  • 19. Shopify API ShopifyAPI uses ActiveResource to communicate with the REST web service. ActiveResource has to be configured with a fully authorized URL of a particular store first. To make authenticated API requests you need to set the base site url as follows: shop_url = "https://#{API_KEY}:#{SHOPIFY_TOKEN}@#{SHOP_URL}/admin" ShopifyAPI::Base.site = shop_url API_KEY: This is the key generated when you created your app in partner’s account. SHOPIFY_TOKEN: This is the token stored in your shop table when the app is installed for a particular shop.
  • 20. Shopify API(cont.) shop = ShopifyAPI::Shop.current "shop": { "id": 690933842, "name": "Apple Computers", "email": "steve@apple.com", "domain": "shop.apple.com", "created_at": "2007-12-31T19:00:00-05:00", "province": "California", "country": "US", "address1": "1 Infinite Loop", "zip": "95014", … … … … … ... }
  • 21. Shopify API(cont.) products = ShopifyAPI::Product.find(:all) ShopifyAPI::Webhook.create({ topic: 'orders/create', address: [ENDPOINT_URL], format: 'json' }) themes = ShopifyAPI::Theme.find(:all) asset = ShopifyAPI::Asset.find('templates/cart.liquid', :params => {:theme_id => main_theme_id})
  • 22. Webhooks Cart carts/create, carts/update Checkout checkouts/create, checkouts/delete, checkouts/update Order orders/cancelled, orders/create, orders/delete, orders/fulfilled, orders/paid, orders/partially_fulfilled, orders/updated Product products/create, products/delete, products/update Shop app/uninstalled, shop/update Theme themes/create, themes/delete, themes/publish, themes/update
  • 24. Popular Shopify Apps Better Coupon Box offer site visitors a discount coupon if they follow social accounts or subscribe emails for newsletter. Stores installing this app with a view to rocketing followers for their Facebook / Twitter accounts and growing email list to sell much better with email marketing. Quick Facebook Live Chat allows your customers to send messages to your Facebook page inbox right on store. Then, you can chat with them via inbox as Facebook friends and turn them into your paying customers. Your conversation history with customers are forever saved with Facebook messenger. No more emails exchange for customer support,