Handling of development stores in Managed Pricing

I’ve developed an app that I created before ‘Managed Pricing’ was introduced. Now, I want to switch to Managed Pricing to keep things up to date and make management easier.

The following post addresses part of my concerns. However, there are a few things I still don’t understand.
Switching an Existing App from the Billing API to Managed Pricing

  1. Can the free plan be displayed only in the development store?
  2. Regarding the following statement in the documentation, does it mean that when migrating from a development store to a production store, the app needs to detect the migration and guide the user to a paid plan? If such a logic is not implemented, is there a possibility that the app could be used for free?

Test subscriptions don’t convert to paid when you transfer a store. After transferring, you’ll need to create a new plan.

Test charges

The following document may be used to implement this in my application.
Redirect to the plan selection page

1 Like

Hi @Hirano :waving_hand:

Hopefully I’m understanding correctly here, but can confirm that free plans should be available on both development (for testing) and live production stores once you enable Managed Pricing and configure the public plans in your partner dashboard (more info here).

For your test subscriptions, basically, what happens is that when a development store is converted to a live store, the test charges are cancelled automatically, and the merchant will need to accept a real subscription plan to continue using the app - these wouldn’t convert to free paid plans.

Hope this helps - let me know if I can clarify anything! :smiley:

Hi @Alan_G

Thank you for your fast response.

To avoid confusion, I want to offer a free plan only for development stores. I do not want to offer a free plan for live stores. If this functionality is not available, I can skip the test subscription in the development store, so that’s no problem.

I understand the test subscription.

Hi again @Hirano :waving_hand:

Thanks for clarifying what you’re looking to do there. Looking at the documentation here, I believe the test charge system should handle exactly what you want to do like you mentioned.

When you/merchants use your app in development stores, they’ll automatically get test subscriptions that don’t incur any real charges. These test subscriptions don’t convert to paid plans when a store is transferred to production, but they do reflect the paid plans you’d offer to merchants once their shop is live.

When a development store converts to a live store, those test charges are automatically cancelled, and the merchant will need to select and accept one of your real subscription plans to continue using the app. This would make it so that they can’t continue using the app for free after migration.

So you won’t need to create a special ‘development-only’ free plan - the test charge system should already handle this for you.

Hope this helps clarify things! Let me know if you have any other questions. :smiley:

Hi @Alan_G , based on my experience today, a merchant has changed their store from development to live, but the test subscription was not cancelled.

And the merchant was not shown the pricing page either, I have to manually send them the link to the pricing page. (I had to manually cancel their test subscription using API on my end too)

Hope this information can help other app devs, please keep an eye or set a webhook when a shop is updated, and notify yourself when the shop has changed from development to live, else you might miss these test subscriptions that are still ongoing (and not getting paid).

Hey @soulchild - thanks for following up on this. Just out of curiosity, when they switched from a test shop to a “live” shop, were they still able to use the app with the test subscription?

More than happy to get in touch with our product team to confirm if this is expected or not so that we can provide additional guidance in the dev docs there.

Thanks again for flagging - hope to hear from you soon!

Hi @Alan_G , no problem!

Yes, when their store switched from test to live, they were still able to use the app with the test subscription.

Can you double confirm this statement with the product team? (Perhaps there might be some misconfiguration in my app) Thank you

Thanks for clarifying @soulchild - definitely able to look further into this for you. Would you happen to have the test subscription ID and the shop ID on hand? Let me know if you’d prefer to share that over DM and I can set that up on my end here and get in touch with the team for you.

I can confirm that we’re experiencing exactly the same problem: when the store changes from dev to live, the test subscriptions aren’t automatically cancelled.

1 Like

Hi @Dmitri_Pavlutin :waving_hand: thanks for reaching out on this. Would you also be able to share some test subscription GID(s) and shop ID(s) where this occurred? I’m happy to set up a DM on my end too if you’d prefer. Having multiple examples will really help our product team identify the root cause and get this fixed.

@soulchild - just wanted to ping you for those IDs as well if you have them handy, let me know! More than happy to dig into this further.

Hi @Alan_G!

Sure, I can share some IDs in a DM. Overall on my side not a single test subscription has been cancelled when stores went live.

Thanks.

Hi @Dmitri_Pavlutin - thanks for confirming. Sending you a DM now!

1 Like

Hi all, just following up here, I’ve reached out to our product team to confirm expected behaviour when it comes to test charge conversions and I’ll loop back with you all here once I get that confirmed. Thanks again for your patience!

Hi All, just circling back here as I was able to connect with our team quickly. They confirmed that this is actually a known issue at the moment on our end and currently that the test charges do have to be tracked manually and cancelled (and then recreated as paid charges).

I just wanted to apologize for the confusion on this, and to confirm that we are looking at rectifying this in a future release. I can’t guarantee exactly when a fix will be implemented but it is on our radar. In the meantime, we’ll also look at updating the documentation to make the expected behaviour more clear.

Please let me know if I can clarify anything on my end here, more than happy to help out further as needed.

2 Likes