Get started building a sales channel app
This guide is part of the sales channel app creation process:
- Explore: Refer to the sales channel app types and their requirements.
- Build: Refer to the getting started guide for tutorials on creating each type of sales channel app.
- Launch: Refer to the launch checklist to submit your app to the Shopify app store.
Key features of sales channel apps
Shopify allows you to create different types of sales channel apps, so you can decide who is responsible for payment processing, order fulfillment, and refunds.
All types of sales channel apps have the following features:
- Onboarding and account connection: You can get permission from merchants to install your app, connect their accounts and qualify them through channel requirements.
- Product publishing: You can import products into your channel, manage product errors, and stay in sync with merchants' product catalogs.
- Payments and order management: You can generate orders and complete payments for merchants on your channel.
You need to integrate a mechanism for charging merchants for your app's lifecycle.
Shopify sales channel apps need to use Polaris components and best practices to build a sales channel app that has a great user experience. Also, sales channel apps require approval for the Shopify app store.
The following diagram illustrates how all the aspects of the build process come together to support the merchant experience of your sales channel app, from onboarding and account connection, through to order management:
Creating the sales channel app
To create a sales channel app for Shopify you need to do the following:
- Create an app in the Partner Dashboard
- Turn the app into a sales channel app
- Request payment processing
Turn an app into a sales channel
After you've created an app, you can turn it into a sales channel app.
- Your app is public.
- If you want to process credit card payments, then you'll also need to request payment processing after you create the sales channel app.
- From your app's overview screen, click App setup.
In the Sales channel section, click Turn app into sales channel.
Click Turn app into sales channel again to confirm that you want to convert your app into a sales channel.
After you click Save, your app is a sales channel.
Request payment processing
After you've turned your app into to a sales channel app, you can request payment processing to use the Checkout API with credit cards. Shopify supports a variety of payment processing methods, including third-party services such as Stripe and Spreedly.
- From the Sales channel section click Request payment processing.
- Select your PCI DSS compliance status, as described in the following table:
|PCI DSS status||Description|
|My platform has not been assessed as PCI DSS compliant||You must determine a strategy for processing payments.|
|My platform uses Stripe||You have an existing platform account with Stripe and would like to use Shopify's Stripe integration.|
|My platform uses a service such as Spreedly to deliver payment tokens||You'd like to use Spreedly or similar service for credit card tokenization and PAN forwarding.|
|My platform has a Service Provider PCI DSS Attestation of Compliance||If you already have a PCI compliant solution in place, then you can provide Shopify with the Attestation of compliance.|
- Enter a description of your app to help us process your request faster.
Click Request access.
A request for payment processing can take up to 7 business days. You'll receive a notification when your request is processed.
Creating a great user experience
A channel should look and feel native to Shopify’s admin experience, as it lives within the admin as an iframe. The first step to designing a great channel experience is to understand your merchant’s workflows. From there, you can create wireframes or sketches to facilitate feedback discussions around the user experience. After you’ve aligned on an experience that will be Beta tested with merchants, you can design using the Polaris framework.
Using Polaris increases merchant engagement and saves them time by using familiar components and patterns.
Using the Polaris design system
Polaris is a design system that helps developers to build a great experience for merchants. Polaris adheres to the following design principles:
- Create a consistent experience
- Keep your experience focused on merchants' primary tasks
- Only ask for the permissions you need
- Clearly define your merchant workflows
- Make it mobile friendly
- Ensure that content uses Shopify voice and tone
Learn more about Polaris.
You can use Shopify's Billing API to charge merchants for your sales channel app. When using the Billing API, you can either charge merchants a recurring monthly subscription, or take a commission on sales by creating usage charges.
- Build a sales channel app onboarding and account connection flow
- Build a sales channel app with the Checkout API
- Build a sales channel app with cart permalinks
- Learn about Building Shopify channels