I have recurring application charges in my application where I have a limit based off of the current plan. If they exceed the limit within the month, they have to wait until the next billing cycle where the limits reset.
With the recurring application charges, when 30 days roll around, does the shopify record that contains the application charge also update? For example, does billing_on field on the recurring application charge record update to the next month?
Or do we have to keep track of this
Merchants can use the Shopify admin to change their capped amount. This is the maximum amount of usage to bill for within the Shopify 30-day billing cycle.
To receive notifications when merchants change the capped amount, subscribe to the GraphQL Admin API's APP_SUBSCRIPTIONS_UPDATE topic.
To receive a notification when merchants reach or exceed 90% of their capped amount, subscribe to the GraphQL Admin API's APP_SUBSCRIPTIONS_APPROACHING_CAPPED_AMOUNT topic.
Hope that helps!
@ShopifyDevSup thanks for the reply!
Quick follow up question - does the Recurring Application Charge record on shopify's side change after 30 days? For example, if the customer has a recurring application charge with a billing_on date of Jan 1, 2022 and 30 days pass and they are charged again, does that same record now have an updated billing_on date of Jan 31, 2022?
1. January 31 (30 days after January 1)
2. March 1 (30 days after January 31)
3. March 31 (30 days after March 1)
This should be reflected in the billingOn date.
Also, keep in mind that this is the date of the application charge and when it's added to the merchant invoice. The merchant may be on a different 30 day billing cycle so the date of the payout will be different. The merchants billing cycle is currently not available through the API or dashboard so here's more context on the merchant billing cycles and how it relates to app charges: https://help.shopify.com/en/manual/your-account/manage-billing/your-invoice/apps
Hope that helps!
- Kyle G.
Hi @ShopifyDevSup , thanks for your explain,
One more quickly question, when merchant change plan (upgrade or downgrade), the billingOn will day billingOn of old plan? Is it right?
Example: if merchant used 10 day with 10$ plan (billingOn: January 1) then they upgrade to 20$ plan, now the field billingOn of new plan is still January 1, it not 30 days after new plan. is it right?
Please confirm it. Thanks in advance!
Hey @danhho , the best resource to explain this will be our documentation on proration, where it outlines when a charge stays on the same cycle (same billingON date) and when the date will change
You also have some control over whether changes get applied immediately or on the next billing cycle this with the appReplacementsSubscriptionBehaviour enum
- Kyle G.