Integration with the App Store Connect is
required to use this reward type.
Log in to your project in WinWinKit, click Settings -> Integrations -> App Store Connect -> Connect and follow the instructions.
Log in to your project in WinWinKit, click Settings -> Integrations -> App Store Connect -> Connect and follow the instructions.

Examples
- Discounted Start: Give a user discounted first three months of a monthly subscription.
- Cheaper First Year: Attract a user with a lower price for the first year of a yearly subscription.
- Free Month: Reward with a free month of their active subscription for each invited user.
- Trial Period: Enable a trial period on a subscription that otherwise is not available.
Guides
Configuring in the App Store Connect
To start rewarding users with Offer Codes, you must first create them in App Store Connect. To create an Offer Code: 1. Sign in to App Store Connect. 2. Navigate to Your App -> Subscriptions. 3. Choose the subscription group containing your subscription. 4. Select the subscription from the list. 5. In the Subscription Prices section, click the add button (+).
- New subscribers: Customers who have never subscribed to any subscription product within the group.
- Existing subscribers: Customers who are currently subscribed to a product within the group.
- Expired subscribers: Customers who were previously subscribed to a product within the group, but whose subscription has expired.
All options are supported by WinWinKit.
Note that WinWinKit does not store or provide any information about your
user’s current or past subscriptions.
You might want to apply custom logic when displaying rewards for new, existing
or expired subscribers.

- Yes: Eligible customers will redeem your app’s introductory offer first, then automatically renew to the offer they redeemed with the code.
- No: Eligible customers will redeem the offer code first, then automatically renew to the standard subscription price without using the introductory offer. If they cancel and resubscribe at any point, they’re still eligible to redeem an introductory offer.
All options are supported by WinWinKit.
WinWinKit does not fetch or filter availability by countries or regions.
If your app is available globally, we recommend you select all. If you have
custom requirements to availability you need to handle it on your side.
- Pay as you go: If you select Pay as you go, customers pay a discounted price for each billing period for a selected duration.
- Pay up front: If you select Pay up front, customers pay a one-time discounted price for a selected duration.
- Free: If you select Free, customers access the subscription for free for a selected duration. Learn more about offer types.
All options are supported by WinWinKit.

You can create multiple Offer Codes for the same or different subscriptions.
Once you create an Offer Code, you won’t be able to edit it. If changes are
needed, create a new one.
Be careful when deactivating an Offer Code if it is used with WinWinKit.
Deactivating makes it unusable and will cause disturbance for rewards.
Creating a reward
Let’s create a reward that rewards users with a free month of a subscription. 1. Type Select type “Offer Code"".
Name and Description of the reward are shown on Code
Link and Affiliate
Form pages if enabled, and also shown to
Affiliates in their dashboard if configured as part of
the User Rewards.

The key is a stable and machine-readable string value meant to be used for
granting users access to their rewards. Cannot be changed once the reward is
saved.

Supporting in the app
Once everything is set up in App Store Connect and WinWinKit, you need to add support for Offer Codes in your app. When a user is rewarded with an Offer Code, there is two ways they can redeem it:- through a redemption URL, which opens the App Store
- directly in your app.
Redemption URL
Follow the Apple’s documentation to implement support for Offer Codes redeemed outside of your app: Support offer codes redeemed outside of your appIf you use RevenueCat, you don’t need to implement
this, as their SDK listens for
updates
on Transaction
already.Inside app
Follow the Apple’s documentation to implement support for Offer Codes redeemed in your app: Redeem offer codes in your appEssentially you only need to present a native sheet where user can enter the
Offer Code value.
Retrieve and Redeem Offer Code
WinWinKit provides Offer Code value for active rewards for the user. Available Offer Code reward and value can be retrived on theUser
object.
Retrieving Offer Code value with Swift SDK:
For new users, redeeming an Offer Code is starting a subscription in your app.
For existing users, redeeming an Offer Code is starting, adding, changing,
renewing or getting temporary discount on a subscription in their account.
What happens depends on the subscription type and the Offer Code they redeem.