Activated Checkout extensions do not deactivate after app uninstall

Hi there,

I’ve noticed at least two separate cases where a merchant uninstalled our app, but the checkout extension associated with our app was still active in their checkout.

Online script tags registered via the Admin API are automatically removed - are checkout extensions following this same pattern?

Is this a bug or by design?

Hey @Dylan :waving_hand: - this could potentially be by design:

https://help.shopify.com/en/manual/checkout-settings/customize-checkout-configurations/checkout-apps

For checkout apps, there is a 24 hour automatic restoration period for merchants, so my thinking is this is what you’re seeing there. Just to clarify though, are the extensions still showing live in checkout?

If so, I don’t believe that’s expected behaviour, so I can definitely take a close look if that’s the case.

Hi @Alan_G

What I observed with 2 different stores is that the checkout block persisted after uninstallation and the merchants never reinstalled within the 24 hour restoration period.

The documentation is 100% clear if the recently uninstalled app’s checkout block should persist for an additional 24 hours or if in the even they reinstall the app then the checkout block is re-activated with the same configuration.

I assume the latter is the intention, but please let me know if I’m misunderstanding that.

Hey @Dylan - yep, your interpretation matches how I’d read that as well. The 24 hour window is intended for restoring previously active checkout extensions if the app is reinstalled within that period, not for keeping the block active in checkout after the app has been uninstalled.

If the block was still live in checkout and the app was not reinstalled, that doesn’t sound expected to me. Could you share the affected shop domains, the app/extension details, roughly when the uninstall happened, and whether the block was visible in the live checkout or only in the checkout editor?

Let me know if you’d rather send those over via DM and I can set one up.

Gotcha, I thought so.

Yea I would prefer to share those details over DM, more for the merchant’s privacy. I’m not quite sure how to do that on Discourse, if you could just send me a “Hi” message I can reply.

In the meantime, I’ll double check that these instances are not in the online theme editor and rather from production checkout.

Will do - setting up that DM now on my side!