Hello everyone,
I built a Shopify app using Shopify Billing and encountered an issue at this step.
I offer customers a 3-day free trial. If they remove the app during the trial period, their subscription will be canceled and downgrade their account to a free plan on my platform. However, after the 3-day trial, if they are successfully charged for the app but later uninstall it, the subscription status in the AppSubscription GraphQL query shows as “canceled.” This leads to their account being downgraded, even though they have already paid.
How can I determine whether a customer has been charged or not?
To summarize:
- If the customer has already been charged, their account should not be downgraded.
So, I need to find a way to know if the subscription_id
has been charged or not, and it seems like the GraphQL appInstallation - GraphQL Admin → allSubscriptions
is not helping because there is no way to determine whether the subscription has been charged since the status always become CANCELLED
when customer uninstall the app even they paid for it already.
I also found this RecurringApplicationCharge - REST → activated_on
response. Can I use activated_on
as a charged flag or not?
Any idea?