Currently my understanding of shopify subscriptions is as follows (months and prices are just examples):
User subscribes to shopify store plan on January 1st and gets charged 30 USD for the month of January. =>
On January 2nd user gets an app on shopify app store and activates app subscription of 20 USD =>
The 20 USD app subscription gets added to the 30 USD shopify subscription on February 1st and user is charged 50 USD in total
I find this charging model to be bad designed, since user gets charged for the app at the end of the month, rather than immediately, so that means if the user decides to close his shopify store, cancel his payment option, etc. Shopify is not able to charge on February 1st and the app developer loses money for the whole month of January, because the shop owner was given full access to the 20 USD app subscription plan, incurred costs to the app developer and then did not pay at the end of the month. Shopify doesn’t lose in this situation, they just freeze the shop and shop owner can’t use it in February anymore.
Why can’t shopify just charge the full subscription on the day of subscribing to the app? All the other subscription services already do that, including shopify itself. Now it feels like the app developer is left to the mercy of shop owners actually paying at the end of the month.
Please let me know if this is actually a correct understanding? I am new to the shopify app development and I would appreciate some help.
1 Like
Hey @Martynas,
Thanks for the reach out here! Your understanding of the app billing cycles is right. We have a blog post here that has been around for a few years but it gives a good explanation of how this works Getting Paid: An Overview of Shopify App Billing Cycles - Shopify Canada
For context on why the billing cycles are structured as they are; this is to give merchants a more simplified billing experience. As opposed to having to manage multiple subscription charges, they need to pay only a single invoice.
To mitigate against merchants driving up charges, we also have a billing threshold based on a merchants plan where once an invoice (including app charges) reaches a certain amount, the merchant is then required to pay that. https://help.shopify.com/en/manual/your-account/manage-billing/managing-your-bills/viewing-your-bills/billing-cycles-thresholds#about-billing-thresholds
1 Like
Hey @KyleG-Shopify,
Thanks for your quick response!
So if I understand correctly, you prefer a simplified billing experience instead of payment guarantees for your Shopify App Store developers? Because what you are saying implies that only if user reaches a threshold of some sum then it will be charged.
For me it sounds like such situations can happen (did happen to me):
User decides to try out the platform =>
Gets that 1 USD plan promotion =>
Installs the app =>
Selects paid 40 USD subscription (but doesn’t get charged immediately) =>
Then before the end of the month decides that his store is not working out and cancels the payment method =>
Shopify can’t bill him for the next period =>
Store is frozen, user can’t access it anymore, but the app developer doesn’t get paid, while the user was able to access the paid version of the app, use it and cause usage charges for the app developer.
This doesn’t seem right, why do I, as a developer, have to hope that the user is actually going through with a payment at the end of the month? Why not just charge the user for subscriptions like any other service does, including the shopify itself, on the day of subscribing?
Hey Martynas,
Thank you for that feedback. It’s important that we hear this from our developers.
We do make our decisions with the Merchant experience as a key factor. This does not mean though that our app partners and developers are not important. You are a crucial element in the ecosystem!
Just to clarify, if a merchant chooses to close their store, they are required to pay any outstanding invoices like app charges. And if they fail to pay (which sounds like what happened in your case) they will have to pay that before reactivating their store.
Your experience absolutely sounds frustrating. Would you be willing to share a little more about your app and your current billing model? I’d be happy to dig in to explore the options available to help make this situation less likely.
For example, if your app is in a category that is likely to benefit new merchants starting up their store, churn is going to happen frequently, and going to be a much bigger factor to consider compared to apps that target already established brands. Your billing strategy should reflect that.
In these cases, one time charges or usage charges can help keep merchants more aware of the resources they are using and could help you better track instances where this may be abused.
You could also limit the plans available to merchants on newly created shops and expand the options available once merchants have a more established history.