Am I limited to using Apple's In-App purchase for charging for in-app consumables? I'm building a book app where you can read one book for free, but if you pay, you have access to all the books until the end of your subscription (30 days).

My query is regarding this item in the App Store review guidelines:


  3.1.1 In-App Purchase:
  
  If you want to unlock features or functionality within your app, (by way of example: subscriptions, in-game currencies, game levels,
  access to premium content, or unlocking a full version), you must use
  in-app purchase. Apps may not use their own mechanisms to unlock
  content or functionality, such as license keys, augmented reality
  markers, QR codes, etc. Apps and their metadata may not include
  buttons, external links, or other calls to action that direct
  customers to purchasing mechanisms other than in-app purchase.


I understand I can't use an external link to pay, but:


Do I need In-App purchases?
Can I use external payments like Stripe?
No. You don’t need in app purchases if you can just have a log in to identify people that already have a subscription external to the app.

See 3.1.3(a) “Reader” Apps of the review guidelines.

Yes - if you are a valid reader app and not required to offer IAP alongside the external purchase, you can then use stripe or anything else on your external payment system, but you have to host, design, collect everything externally.



You are not prohibited from having an external payment or subscription like Netflix or many other apps do. Some are blended like Major League Baseball where there is IAP for people who want to pay (and of course IAP pays Apple a cut per the agreement on purchases and subscriptions that you have available in your terms as a developer). And people can bring a paid subscription and log in from external to the app, and those pay nothing to Apple.

Everything hinged on strict adherence to what Apple defines “unlock within the app” which is in summary (as I understand it):


There can be no link or mention in the app how to find the actual payment terms. You can offer a sign in, but you can’t say it’s for payment.
You can’t have functionality that unlocks to mimic IAP or use the API or payments through Apple.


Tons of apps have trial subscriptions when they use IAP - look at Omni Group for OmniGraffle and such.... I believe you will run afoul of Apple review if you deliver everything and then force someone to pay later if that “pay later” isn’t explicitly IAP using Apple as the payment processor, but you can find that out by initially shipping no paid functionality and only do the log in.

For this potential wrinkle, see 3.1.3(a) and 3.1.3(b) and 3.1.5(a) of https://developer.apple.com/app-store/review/guidelines/

Then once your app is approved, let Apple review know you have a question for a future change. They will tell you exactly what’s allowed and what’s not during review in my experience.