Hi everyone,
I am using Shopify Billing API with appSubscriptionCreate and have a few questions about subscription lifecycle:
1. Trial end and first charge
I created an AppSubscription with trialDays: 2. When the 2-day trial ended and Shopify charged the merchant, I did not receive an app_subscriptions/update webhook indicating that the trial ended or that the actual paid billing started.
Is this expected? What is the recommended way to detect when the trial ends and the first actual charge begins?
2. Renewal webhook
For a subscription with recurring billing, do we receive app_subscriptions/update for every successful renewal, or only when the subscription status changes?
3. Failed payment and custom 7-day grace period
From my understanding, when a renewal payment fails or when trial period end after that payment fails, the subscription can remain ACTIVE during Shopify’s billing/grace period and later become FROZEN.
I want to implement my own 7-day grace period:
-
Payment fails → start 7-day grace period
-
Payment succeeds → continue normally
-
Payment remains unresolved after 7 days → restrict paid features
Since the initial payment failure may not trigger app_subscriptions/update, what is the recommended way to detect the payment failure and start my own 7-day timer?
4. New OAuth token
Suppose I create a subscription and register webhooks using OAuth token A. Later, the same shop goes through OAuth again and I receive OAuth token B.
What happens to the existing subscription and webhook registrations?
Are they associated with the shop/app installation rather than the individual OAuth access token? Do the existing subscription and webhooks continue working with the new token, or do I need to recreate anything?
Thanks!