Skip to main content
Question

Is a referral system that unlocks discounted IAP offerings (not direct premium access) allowed under App Store Guidelines?

  • May 19, 2026
  • 1 reply
  • 15 views

Forum|alt.badge.img

I am building an iOS app using:

  • SwiftUI

  • Firebase backend

  • RevenueCat

  • Apple In-App Purchases

The goal of the referral system is:

“Invite a friend, they get 50% off a premium lifetime purchase, and once they successfully purchase, you also get access to the same 50% discounted purchase.”

Importantly:

  • users NEVER get premium access directly from a custom code

  • premium access is ALWAYS granted through Apple IAP / RevenueCat entitlement

  • the question is mainly about the referral mechanics and App Store guidelines compliance

Scenario A — Apple-native offer codes

  1. Use Apple Offer Codes generated through App Store Connect API

  2. Store/generated codes are managed on my backend

  3. User A invites User B

  4. User B receives an Apple offer code for 50% off

  5. User B redeems through Apple redemption flow and purchases through normal Apple IAP

  6. RevenueCat webhook confirms purchase

  7. Backend then unlocks another Apple offer code for User A

  8. User A can then redeem their own 50% Apple offer code

Scenario B — Custom referral codes + hidden RevenueCat offering. Instead of Apple offer codes:

  1. backend generates custom referral codes

  2. User A shares referral code with User B

  3. User B enters the code in-app

  4. backend validates the referral state

  5. app then shows a DIFFERENT RevenueCat offering/paywall containing a discounted IAP product (same entitlement, different product)

  6. User B still purchases through Apple IAP normally

  7. RevenueCat grants entitlement

  8. RevenueCat webhook then unlocks the same discounted offering for User A

Would Scenario B generally be considered acceptable since the entitlement still originates from Apple IAP, or is Apple likely to interpret even the “unlocking of discounted offering visibility” as bypassing IAP rules?

Also, is it acceptable to effectively have the “same premium product” represented by two separate IAP products with different price points, for example:

  • lifetime_premium

  • lifetime_premium_discounted

where both products unlock the exact same RevenueCat entitlement/premium functionality, but only certain users are eligible to see/purchase the discounted version through the referral system? Or would Apple expect this type of referral discounting to be implemented strictly through Apple Offer Codes / Promotional Offers instead of separate IAP products?

I would appreciate insight from anyone who has shipped a similar referral/referral-discount system through App Review.

1 reply

Forum|alt.badge.img+8
  • RevenueCat Staff
  • May 21, 2026

Hi, scenario A here is the safest option as it goes through Apple for all parts of the flow, there will be no issues with it. Scenario B might raise some flags in Apple Review due to how it conditionally changes which paid product a user is shown based on your own custom referral code within the app. Developers have used similar flows to this and have passed review, so it might just depend on how deeply your app gets reviewed and the specific reviewer. If your app is rejected it because of this would most likely be from Apple Review Guidelines 3.1.1 or 3.1.3.

Also, is it acceptable to effectively have the “same premium product” represented by two separate IAP products with different price points

There shouldn’t be any issues with this.