Charging for your app with the REST Admin API: Concepts
You can configure billing on Shopify in a variety of ways to meet different needs. This guide introduces the core concepts for billing.
One-time application charges
A one-time application charge is a one-time charge created and issued to the merchant for purchasing your app. After accepting the charge, the merchant is billed immediately on the credit card associated with their Shopify account.
As of API version 2021-01, when a merchant accepts a charge, the charge immediately transitions from
active. After the charge is activated (the charge is in an
active state), you get paid.
Recurring application charges
You can charge merchants for your applications on a recurring billing cycle by creating and issuing a recurring application charge. The recurring application charge is applied every 30 days from the day the merchant accepts the charge. This means a shop will have its own 30-day billing cycle with Shopify, plus an independent 30-day cycle for each recurring app charge.
How it works
You create a subscription for the merchant with an API call, and then redirect the merchant to the
confirmationUrl for their approval. When the merchant approves the subscription, they're redirected to the
returnUrl you specified on the subscription and the charge is automatically activated. The merchant is billed and you'll be paid as soon as the merchant is invoiced by Shopify.
Here's an example timeline:
|Day 0||Shop signs up; 30-day Shopify billing cycle starts.|
|Day 5||App is installed; 30-day recurring app billing cycle starts; recurring charge is added to shop's next invoice.|
|Day 30||Shop is invoiced; app charge appears for the first time.|
|Day 35||Recurring charge cycle restarts; recurring charge is added to shop's next invoice.|
|Day 60||Shop is invoiced; app charge is included.|
After a recurring application charge is approved and automatically activated, the system has to handle the case where future payments are declined. If a shop stops paying its bills, then Shopify will freeze the account. This means that your recurring application charge will be frozen as well and you will not get paid. In the event that a shop starts payments again, the shop will be unfrozen and charges will resume.
Service should continue to be provided to a shop as long as their recurring charge is in the Active state.
Usage-based charges let your app charge a variable monthly fee. Your app can charge fees based on a number of actions or conditions, such as the number of products fulfilled per month or the number of orders processed by your app.
Shopify bills merchants for their invoices and apps on two different billing cycles:
- The Shopify subscription is invoiced on a 30-day cycle.
- Each paid app has an independent 30-day billing cycle.
For more information about billing invoice cycles, see Recurring application charges.
If a merchant signs up for Shopify on January 1st, then their first invoice will be on that day and their second invoice will be on January 31st. Apps work similarly. If a merchant installs and agrees to pay for your app on January 5th, then their app billing cycle is from January 5th up to and including Feb. 3th. The merchant will see the charge for the app on their invoice on January 31st. Their next payment period for the app will begin on Feb. 4th.
You get paid only after the merchant has paid their Shopify invoice. After that, Shopify pays app developers twice a month, covering periods of the 1st-15th of the month and 16th-31st. It might also take a few more days for the funds to be deposited into your account.
If you’re using an application charge, then the merchant gets invoiced right away. For recurring and usage charges, merchants get invoiced with their regular Shopify invoice cycle.
Viewing your earnings
There are several ways to see your earnings from the Partner Dashboard.
The Payments page includes all of your earnings from apps, themes, and affiliates. If you click an individual payment period, then you can see the app name and amount for that period. You can also export your payments as a CSV.
The Apps page has several areas that report billing information:
Earnings chart: An aggregate of all the charges that have been paid out or are pending over time. It is also broken down by billing endpoint.
App history log: Live log of all events where you can filter through the stores and find when a merchant install/uninstalled an app, or has approved a charge. It does not include when a merchant has paid Shopify.
Export payment history: A CSV file of all the stores that have paid for your app and whose funds have been deposited into your account.
For a detailed description of areas that report billing information, see Track app usage metrics with the Partner Dashboard.
Determine your billing model: Familiarize yourself with the REST Admin API endpoints related to billing and understand how the API resources can best suit your billing model.