Billing users for your app
The app billing API resources are mandatory for all listed and unlisted apps that are distributed through the Shopify App Store, unless Shopify has notified you otherwise. Contact us if you have questions or concerns.
Use the GraphQL Admin API and Partner API's billing resources to process charges using Shopify’s merchant invoicing system. You can view data on app charges using the Partner Dashboard and the GraphQL Admin API.
Why use Shopify's app billing resourcesAnchor link to section titled "Why use Shopify's app billing resources"
Shopify's app billing resources provide the following benefits:
Simplified payment process: Charges are directly added to the merchant's Shopify invoice.
Increased conversion rates: Apps that use the billing API resources experience higher rates of customers transitioning from free to paid versions, because charges originate directly from Shopify.
Revenue sharing: You automatically receive a share of the revenue that Shopify collects.
Chargeback handling: Shopify handles all chargeback-related processes.
Flexible pricing models: You can choose your pricing model and set your own prices. Shopify collects funds and ensures timely payments.
Pricing modelsAnchor link to section titled "Pricing models"
The pricing model determines the charges that are collected for your app.
You can use Shopify's app billing API resources to implement one or more of the following models:
|Type||Description||Use cases||Learn how|
Charge either an annual or 30-day recurring fee to use the app, charge a capped fee based on usage, or employ both.
Charge a capped fee for dropshipping.
Charge merchants a fee every 30 days and a fee per SMS message sent on their behalf.
Charge once for the app, or charge once to enable limited use.
Charge merchants a flat fee for translating their storefront.
Enable merchants to purchase credits to use in your app.
|One-time charges and multiple one-time charges|
Pricing adjustmentsAnchor link to section titled "Pricing adjustments"
A pricing adjustment modifies an app's subscription fee or price. App billing API resources support the following price adjustments:
|App credits||Grant a sum that merchants can put towards future purchases, subscriptions, or usage charges.||Merchants who have the app installed|
|Subscription discounts||Offer a percentage or fixed-price discount on an app subscription for a set number of billing cycles.||
Merchants with existing subscriptions
Delay the start of an app's billing cycle by a number of days. This enables merchants to experiment with apps before they commit to paying.
Available only to merchants that agree to a new subscription. Can't be added to existing subscriptions.
New subscriptions only
Can't be added to existing subscriptions
|Refunds||Issue a full or partial refunds for a specific app charge.||All users|
Supported currenciesAnchor link to section titled "Supported currencies"
You can match your app charges to a merchant's local billing currency if they use one of the supported currencies.
Retrieve the merchant's local billing currency with the GraphQL Admin API's
shopBillingPreferences query, passing the currency value as input.
Developer tools and resourcesAnchor link to section titled "Developer tools and resources"
Explore the developer tools and resources available for app billing: