IOS verify failed about External buy questiones - ios

Reasons
11.13: Apps that link to external mechanisms for purchases or subscriptions to be used in the app, such as a “buy" button that goes to a web site to purchase a digital book, will be rejected
11.13
We found that your app provides access to account registration. As this also provides the user access to mechanisms for purchases or subscriptions to be used in the app, this is not in compliance with the App Store Review Guidelines.
Since the app includes access to services already purchased or subscribed by your existing users through means other than IAP, this is considered as a form of external mechanism.
Please see the attached screenshot/s for more information.
To be in compliance with the App Store Review Guidelines, it would be appropriate to remove access to account registration.
-----
The hotscreen is regist and login.
We had delete all links from App in 'about' ViewController.
And it just has a regist/login page in my App that is not have function of 'buy'.
But there is can pass with regist/login page in My other apps.
My App is free app that is to show some video in iPhone.
The Video is also free in App that is not need to buy.
The user can regist a user to comment or favorite some video.
I also have a web side for this. and user can buy some Charges Video in it.
-----
I hope someone can help me!!!

It seems that a registered user of yours can access stuff they bought on your website.
That is what apple is complaining about.
If you remove the login/register it will go through or use it just for commenting - maybe you can trick apple by renaming it to login-for-commenting/register-for-commenting (and for the time until it passed, disabling the "view-my-bought-stuff" from your website, so you can enable it without re-submitting the app)

I assume purchases are done at some external web-site of yours.
You cannot refer to Buy in your app, if purchases are not done via App store.
You have to look for alternatives, like use DB at your web-site for user purchases validation.
User can login and their purchased items shall be available for download.
You can have an information button or something which tells user to have a look at your web-site for more information/ "you might also like".
Please note selling your stuff via App store shall be made on Apple inc terms only.
This do not restrict you to sell your stuff outside App store, but you cannot have selling links in your app.
You should not have user registration in your app, until you are using IAP.
This is stated in 11.12.
However I still feel you can have login in your app, and do registration /selling outside the app. This gives you liberty as your app is not selling content/neither doing any user registration.
I am having a couple of apps with my developer license and doing this i passed all validations of app submission both legally and review process as well.

Related

Distributing my app to App Store without using in-app purchases. Isn't a Reader App?

I developed an iOS app for my client which consists of three primary functionalities:
Masterclasses
Clever Closet
Vision Board
I have a website from where you can purchase the masterclasses. So, the Clever Closet and Vision Board are free of charge. You can login with the credentials from the website, but also you can register a new account (without access to masterclasses or external links to payments). Firstly, I tried to use buttons with external redirect to the website, but I found out this is not allowed so I removed them.
Right now, my app was rejected from the App Store submission based on:
Hello,
Thank you for your resubmission. Upon further review, we
identified an additional issue that needs your attention. See below
for more information.
If you have any questions, we are here to help. Reply to this message in App Store Connect and let us know.
Guideline
3.1.1 - Business - Payments - In-App Purchase We noticed that your app includes or accesses paid digital content, services, or functionality
by means other than in-app purchase, which is not appropriate for the
App Store. Specifically: Your app accesses digital content purchased
outside the app, such as memberships and courses, but that content
isn't available to purchase using in-app purchase.
Next Steps
The paid
digital content, services, or subscriptions included in or accessed by
your app must be available for purchase using in-app purchase.
Apps that offer paid digital services and content across multiple platforms
may allow customers to access the content they acquired outside the
app as long as it is also available for purchase using in-app
purchase. See Guideline 3.1.3(b) Multiplatform Services for more
information.
If you have any additional information to provide
regarding the digital content and services in your app and how the
guidelines apply to them, please reply to this message in App Store
Connect and let us know. If there is information you'd like us to
consider in our review of future submissions, please feel free to
include it in the App Review Information section of App Store Connect.
My client doesn't want to use in-app purchases, we are providing purchasing these masterclasses on our website. Isn't my app a Reader App?
3.1.3(a) “Reader” Apps: Apps may allow a user to access previously purchased content or content subscriptions (specifically: magazines,
newspapers, books, audio, music, and video). Reader apps may offer
account creation for free tiers, and account management functionality
for existing customers. Reader app developers may apply for the
External Link Account Entitlement to provide an informational link in
their app to a web site the developer owns or maintains responsibility
for in order to create or manage an account. Learn more about the
External Link Account Entitlement.
Also, I do not want to use the External Link Account Entitlement, so it should be simple. What do you think?
My app was finally approved, because I mentioned that is a Reader App using their guidelines, so I had right about it and regarding the fact that Apple try to force you to use their IAP!

iOS subscription payment

I have a question about apple review system.
I have a website where user can subscribe to different plan through 3rd party (the subscription is linked to user’s account) to access to some content.
I have also an iOS application that not let user subscribe to this plan directly from the app (just an informative message to says user that subscription must be made from my website, and their is no redirection to my websites like spotify do it).
Is the application will be rejected because it’s not use In App Purchase ?
Thank you for answer
You should use In App purchase for this purpose. If you don't, your app might get rejected with the following response from Apple.
We noticed that your app contains a payment mechanism other than in-app purchase for digital content or to unlock features or functionality within your app, which is not appropriate for the App Store. In-app purchase is the only valid in-app payment mechanism for digital content.
Note: Continuing to hide functionality within your app or other dishonest acts may result in the removal of your apps from the App Store and termination of your Apple Developer Program membership and all associated memberships.
Next Steps
To resolve this issue, please remove all external or third-party payment mechanisms and implement in-app purchase to facilitate digital good transactions, including unlocking features or functionality within your app.
If you believe your use of an alternative payment mechanism is a permissible use case, please respond directly to this message in Resolution Center with detailed information.
you may visit it for further information and guidelines.
https://developer.apple.com/in-app-purchase/

Apple developers rejected- subscriptions to be used in the app - Business - 3.1.1

Apple developers rejected my app with this reason.
"Business - 3.1.1
Your app includes an account registration feature, which is considered an access to external mechanisms for purchases or subscriptions to be used in the app.
This feature does not comply with the App Store Review Guidelines.
Next Steps
Please remove the account registration links and any other fully qualified links to your site that could indirectly provide access to these mechanisms, such as links to web pages for support, FAQ, product or program details, etc."
The users can use the app in demo mode (without registration) with some restrictions, but if they register they can use without registrations.
The registration is not in webview. The client sends the user's datas to server.
Can someone help me?
You basically have two ways to solve the problem.
1) Sell the subscription etc. only through the App Store in the app (similar to Dropbox/Office etc.), i.e. there should be no links to your website, where your users have/can insert payment information. Look at the mentioned examples, how they solve this.
2) Only sell the subscription/services via the web, but never ever link to these pages via your app (similar to Kindle app, partially Spotify).
Your app must still be somehow (open for interpretation) functional for users without a subscription / registration.
The main issue Apple has, is that it's possible to circumvent the store and Apple's 30% cut. Just make sure that users are not able to purchase any digital products & services
Apps may not include buttons, external links, or other calls to action that direct customers to purchasing mechanisms other than IAP.
Source:
https://developer.apple.com/app-store/review/guidelines/#payments
Yes, You can submit app again but you have to implement one small feature like as guest user login.
In this You will implement one UIButton it's should say "Go without login". Implement this small functionality in your app. Create one user as guest.
When user hit "Go without login" you will pass your static user id and login in the app.
I have same problem. I am create a this solution and it's work

How to implement a licensing mechanism when purchasing an App Store application if the license system is on our own server?

I am looking to start selling an app on the Apple app store however currently the app uses our own servers to generate a license to the customer once they have purchased it. How can our existing licensing system which uses our own servers be implemented if a customer purchases the app from the App Store instead?
The application license will be a yearly renewable one. Therefore, so far, from what I have read, the app on the App Store could just come with an auto-renewal option (opt-out of course) so that would take care of the subscription cycle but how can our own server issue the customer the one year license which they could then renew from iTunes using the auto-renew function of the App Store?
I am sorry if this is not clear but it would go like this:
Customer downloads application from app store with a one year auto
renewal subscription.
Customer pays.
The app store verifies the
payment.
Once payment is verified it contacts our server to create a
license for that purchase and for one year.
That license is sent back
from our server to the purchased app to unlock the subscription.
Please correct me if my understanding on how this works is wrong but if anyone can point me in the right direction or give examples of how an application on the app store can successfully issue licenses from their own server then I would be very grateful.
As an example, look at "Aviation Exam". They let you buy subscriptions on-device as in-app purchases, or on their own website. In each case the details are synced to a user's account on their own server, so the same exam can be used from any device.
Look at the Apple documentation for how in-app purchase subscriptions work on iOS. Then your app can send details of a purchase to your servers, and download further information.
Edit; after discussion in comments:
If you want payment to go via Apple then it has to be via App Purchase or In-App Purchase. In-App Purchase specifically supports the idea of buying a subscription for a limited time. This is explained at the second link above.
If you want the user to create an account on your server you can either have a page in the app for them to input their details, or you can bring up a web page served from your website. Either way, the info can go to your server and it can create an account.
The key thing is, if payment went via Apple then inside the app is the only place you know this. The app can send this info to your server. You need some common identifier (i.e. a user-name) that is known to your server and to your user, then the user keys it in to your app and it can all be matched up.
There is nothing complicated here, to a decent software developer. All they need is an existence proof such as I gave at the top, and they can figure out how to link the info together.
Edit 2
Some tutorials for in-app purchase listed at: In-App purchase server model
Lots of low-level detail at: Verify receipt for in App purchase
If you prefer to handle payment yourself, not via Apple, then the situation is very different. Now, your own systems have to keep track of what has been bought, when subscriptions run out, etc. To begin with, the app won't know this at all. However, once you identify the user by having them enter credentials (username/password), you can fetch all the details from your back-end system to the app and proceed as above. Again, this is all visible in the example I gave at the beginning, which supports both Apple and non-Apple payments.
One thing to note: if you handle payment yourself then Apple isn't getting its 30% cut, which is the usual App Store commission, so they may not like this. The guidelines say:
11.1 Apps that unlock or enable additional features or functionality with mechanisms other than the App Store will be rejected
11.13 Apps that link to external mechanisms for purchases or subscriptions to be used in the App, such as a "buy" button that goes to a web site to purchase a digital book, will be rejected
That's pretty clear-cut, but since there are apps that rely on subscriptions or content purchased elsewhere, they don't seem to follow these rules in every case. Even the Amazon Kindle app was allowed back, once they took the 'buy' button off.

Require In-App Purchase

I want to create an app that will be displayed as FREE on the App Store, but upon opening it, users are required to do and in-app purchase to be able to access any of the content. I am reading the App Store Review Guidelines, but I am not sure if Apple allows this since the users will not be able to see anything on the app unless they subscribe to it.
The reason I need this is because my client wants the app to be sold at $0.99/year and I don't think this can be done by setting only via Price Tier.
Create a membership only app.
You must sign in to use the app (you can give apple a test account)
then you can manage the membership on your own servers. Or allow them to sign up with the in app purchase.
(enable both the user login and the in app purchase to get a user login, then you can give apple a "test" account that requires no purchase)
They will test your in app purchases anyhow so make sure you follow all the rules on Re-Activating in app purchases, this way if the user comes back and reloads their purchase and they have 2 months left you are sure the app will still allow them.
As long as you dont try to accept credit cards from the app, and use their in app purchase system you should be fine.
If you want to enable users to purchase their account from your server, you cannot allow the purchase from the app. The login however can enable the app without the purchase (and the test account should) but in app purchase should allow them to attach their purchase to the account they use.
I think im rambling now so I hope thats enough clarification.
What you can do is present a demo of the app as a feature before the user buying in-app purchase.just a screen extra. So that Apple does not reject it.
The other option is:
If you have a login/password app, you can tell apple that your app requires login before any feature can be given, only if your in-app thing is login related.

Resources