-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add documentation for migrating paid-up-front apps
- Loading branch information
Showing
4 changed files
with
58 additions
and
2 deletions.
There are no files selected for viewing
56 changes: 56 additions & 0 deletions
56
Sources/FreemiumKit/FreemiumKit.docc/FAQ/FAQ-MigrateFromPaidUpFront.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# My app is paid-up-front. How can I make it Freemium? | ||
|
||
See how easy it is to migrate from a paid-up-front app to a Freemium model using FreemiumKit, while preserving access to your app for those who already purchased. | ||
|
||
@Metadata { | ||
@TitleHeading("FAQs") | ||
@PageKind(sampleCode) | ||
} | ||
|
||
## Short Answer | ||
|
||
Our SDK uses Apples [built-in solution](https://developer.apple.com/documentation/storekit/supporting_business_model_changes_by_using_the_app_transaction) in StoreKit to determine users who purchased your paid app before your migrated it to the Freemium model. And for new users, it works normally. You just need to tell our SDK which was the last paid version and build number calling `FreemiumKit.shared.lastBuildReleasedAsPaidApp(version:build:)`. | ||
|
||
|
||
## Full Answer | ||
|
||
### Step 1: Set up FreemiumKit like normally | ||
|
||
Add your app inside the FreemiumKit app and follow all instructions to set up your app for In-App Purchases like you would normally do (see Setup tab inside the Mac app). Just act like your app is already free to use and make sure to lock any features you want to hide behind paid tiers using the SDK features from our <doc:SetupGuide>. | ||
|
||
### Step 2: Tell our SDK the last paid version | ||
|
||
In order to continue giving users who had already purchased your app previously full access to your apps features, you need to tell our SDK which was the last version and build number sold as a paid-up-front app. Our SDK will then use Apples [built-in solution](https://developer.apple.com/documentation/storekit/supporting_business_model_changes_by_using_the_app_transaction) in StoreKit to automatically detect those users for you, there's nothing else you need to do. Just call this, e.g. in your app entry point: | ||
|
||
```swift | ||
import FreemiumKit | ||
|
||
@main | ||
struct AwesomeApp: App { | ||
init() { | ||
FreemiumKit.shared.lastPaidRelease(version: "1.5.1", buildNum: 25) | ||
} | ||
|
||
// ... | ||
} | ||
``` | ||
|
||
### Step 3: Submit a new version & make your app free | ||
|
||
Once everything is ready and tested, submit your app to the App Store and set it to "Manually release this version". Once your update is approved, release your version and immediatelz after that set your app pricing to "Free". This will ensure that no one can download your previous (paid) version for free but also no one has to pay for the new Freemium version. The order is important here. | ||
|
||
Thats't it, you successfully migrated your paid app to the Freemium model! | ||
|
||
## Contact | ||
|
||
Have questions or need support? Reach out to me at [[email protected]](mailto:[email protected]). | ||
|
||
--- | ||
|
||
## Legal | ||
|
||
@Small { | ||
Cihat Gündüz © 2024. All rights reserved. | ||
Privacy: No personal data is tracked on this site. | ||
[Imprint](https://www.fline.dev/imprint/) | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters