Is it a UI bug when displaying the billing time, or is it a technical issue?

Hi @ts_team! This is expected behavior for test charges on development stores at the moment - you’re not doing anything wrong.

Test app subscriptions don’t actually go through billing cycles, so things like discount expiration and remainingDurationInIntervals updates can’t be properly simulated. The UI showing “10 months” is essentially a display quirk because there’s no real billing happening to decrement the counter.

This exact scenario was addressed in this thread where the accepted solution confirmed test charges don’t track billing intervals the same way live charges do. The test charges documentation covers how dev store billing works differently from production.

When you go live on a production store with real charges, your durationLimitInIntervals: 1 will work correctly - the discounted price applies for one billing cycle, then full price kicks in from the second cycle onward. The subscription discounts guide has more details on how discount duration limits behave in production.

To verify your implementation is correct, you can query the AppSubscription object and check the lineItems.plan.pricingDetails.discount fields - specifically durationLimitInIntervals should show your configured value, and remainingDurationInIntervals will decrement properly with live charges.