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
-
Use Apple Offer Codes generated through App Store Connect API
-
Store/generated codes are managed on my backend
-
User A invites User B
-
User B receives an Apple offer code for 50% off
-
User B redeems through Apple redemption flow and purchases through normal Apple IAP
-
RevenueCat webhook confirms purchase
-
Backend then unlocks another Apple offer code for User A
-
User A can then redeem their own 50% Apple offer code
Scenario B — Custom referral codes + hidden RevenueCat offering. Instead of Apple offer codes:
-
backend generates custom referral codes
-
User A shares referral code with User B
-
User B enters the code in-app
-
backend validates the referral state
-
app then shows a DIFFERENT RevenueCat offering/paywall containing a discounted IAP product (same entitlement, different product)
-
User B still purchases through Apple IAP normally
-
RevenueCat grants entitlement
-
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:
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.