Skip to content

Restore purchase flow#8737

Draft
jigar-f wants to merge 3 commits intomainfrom
jigar/restore-purchase
Draft

Restore purchase flow#8737
jigar-f wants to merge 3 commits intomainfrom
jigar/restore-purchase

Conversation

@jigar-f
Copy link
Copy Markdown
Contributor

@jigar-f jigar-f commented May 7, 2026

This pull request adds a "Restore Purchase" feature for users who have previously bought a subscription via the app store, making it easier to recover purchases on new devices or after reinstalling the app. The main changes include implementing the restore logic in the purchase service, updating the UI to surface the restore option in relevant places, and adding new localization strings for the feature.

Restore Purchase Flow Implementation:

  • Added a restorePurchases method to the AppPurchase service, handling platform-specific restore flows, tracking the restore state, and ensuring restored receipts are acknowledged with the backend. [1] [2] [3] [4] [5]

UI Updates:

  • In the Plans screen, added an inline "Already purchased? Restore Purchase" option using AppRichText, and removed the old tile-based restore option. [1] [2]
  • In the Setting screen, added a "Restore Purchase" tile under certain conditions (store version and not already Pro), and handled the restore action in the settings menu logic. [1] [2] [3]

Localization:

  • Introduced new localization strings for "Already purchased?", "Purchase restored successfully.", and "No purchases were found to restore." for improved user feedback during the restore process.

Supporting Changes:

  • Added the _restorePurchaseFlow handler in both Plans and Setting screens to trigger the restore logic and handle errors gracefully. [1] [2]
  • Minor UI and formatting adjustments to support the new feature and maintain consistency. [1] [2] [3] [4] [5] [6]

These changes collectively provide a more robust and user-friendly way for users to restore their purchases within the app.

@jigar-f jigar-f self-assigned this May 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant