Unexpected ApplicationDowngradeAdjustment after refund and app reinstallation

Hello,

We would like to ask for clarification on the correct way to handle refunds, as one specific case resulted in a negative balance on our side and we are not entirely sure where the process went wrong.

Case details:

  • The merchant (ID: 93246554458) installed our app (ID: 6953501) on August 8, 2025 at 9:07 PM.

  • On August 8, 2025 at 9:08 PM, the merchant activated an annual subscription (ID: 55761863002).

  • On September 6, 2025 at 7:28 AM, a charge of $149.99 USD was processed.

  • After discussions, the merchant decided to cancel the app, and at the merchant’s request we issued a refund on October 30, 2025 at 3:02 PM for $149.99 USD.

  • The app was uninstalled by the merchant on October 31, 2025 at 8:23 AM.

  • The merchant then reinstalled the app on December 16, 2025 at 10:03 PM.

  • A few days later, on December 19, 2025 at 2:31 PM, the merchant activated a new annual subscription with a 20% discount.

  • Shortly after that, on December 19, 2025 at 2:54 PM, a transaction of –$98.21 USD appeared, described as

    type: ApplicationDowngradeAdjustment.

As a result of this flow, our current balance is negative.

We do not fully understand:

  • why a transaction of type ApplicationDowngradeAdjustment was generated in this scenario,

  • at which point in our refund handling process we are acting incorrectly,

  • and what the recommended flow is for handling refunds and app reinstalls in order to avoid negative payouts in the future.

We would appreciate guidance on the recommended best practices for handling these situations on the app side.

Thank you in advance for your help.

1 Like

Hey @sebastian.pisula, you may want to reach out to our support team to have them look in to the specifics in this case. Based on what you have shared here though, the issue here looks to be the manual refund on the annual charge.

When you issued the manual refund, the merchant’s original annual billing period (September 6, 2025 → September 5, 2026) was still active. So when the merchant reinstalled on December 16 and created a new discounted subscription on December 19 the prorated credits may have been applied

For context, when merchants uninstall an app, they can reinstall and use it for the remainder of their paid period at no additional charge. This is by design. Credits are only issued when using APPLY_IMMEDIATELY replacement behavior. Deferred changes (like annual → annual downgrades) don’t generate credits because the merchant uses the full cycle they paid for.

For best practices, don’t issue refunds for currently active subscription periods. If a merchant cancels and wants a refund, instead direct them to first downgrade to a free plan with an APPLY_IMMEDIATELY replacement behaviour . That way Shopify handles the prorated credits for the unused time. You can then choose to refund further amounts if you choose. That should protect you if the merchant chooses to upgrade to a paid plan again in the future.