Purchases in iOS App - ios

I have some features of an iOS App to be available after the user chooses to upgrade the app or by simple paying some bucks. Those features will be some sections/modules available if payment received.
What will be the best and most efficient way to implement it? In-App purchase or a Third Party Payment Gateway like PayPal, Stripe etc. ?
Please suggest and explain pros and cons of both in brief.

Related

iOS app rejected because of AliPay and Wechat pay

This is the response of Apple, anyone here published an IOS app with either AliPay or Wechat pay.
I need help in regards with this.
Thank you.
Specifically, we found that your app includes AliPay (支付寶) and Taobao H5 Payments, which provides access to external payment mechanisms and enables the purchase of content, services, or functionality by means other than the in-app purchase API.
You can't use other third party payment methods for the purchase of digital goods/content with your app which is going to be consuming with in the app.
So for that apple recommends the use of in-app purchase.
When can I use third party payment methods?
When you are selling physical goods or provide services for the payment you receive.
When cot user in-app purchase?
When you are providing user digital goods like unlocking a game level, buying coins, etc. the you must use in-app purchase.
For more info. regarding this you can check the Apple's official document here
I came across the same problem when I had integrated BrainTree with my application. And then me and my team went ahead with further communication for the same as one of my app had same configuration even though it was acceptable by AppStore.
So If any of the features or levels in game is opened after paying to
the developers then that payment has to be done using In App Purchase.
And even in that around 30 to 40% of the amount developers has to pay
to the Apple.
And If payment is done like buying pizza or any other shopping in
which user does not need to pay anything to open any of the content
within app in that case developers can use any payment gateway.

iOS Swift: How to implement "Cash out" method from My App?

I want to build an app that distributes money to users after completing some tasks or after completing some game or something. Does anybody knows how to do "cashouts" from an app through paypal or by any other method.
However I did found a method with "paypal payout option". https://developer.paypal.com/docs/payouts/integrate/large-batch-payouts/#
I just want to know whether this would help me meet my requirement?
Using Paypal, its possible to do payments but sometimes its tricky with third party integration of batch payments, you can implement wallet in your app and use Apple pay to process the payments steady and easy to way to manage payments.
Ref Link: https://developer.apple.com/documentation/passkit
To send money between accounts: https://developer.apple.com/documentation/sirikit/payments

When we must require to use In-App-Purchase in the App [duplicate]

We are working on an iOS application that provides some credits (paid) that can be used within the app. We have few queries regarding this -
Can we go with third party payment gateways like paypal or similar or we need to implement IAP for this?
If we need to implement IAP then what will the sharing ratio?
If we use third party payment gateways and not IAP for this so is there any chance that Apple reject the app?
We have gone through the apple guideline for Payments, but didn't found that for all virtual purchasing devs must use the IAP. Also we didn't found any specific details on payment for virtual services that we can't use the third party payment services.
Thanks
Please go through apple review guidelines and your doubts will be cleared.
You can use third party payment gateway,if you are offering physical goods,service outside app. If you are selling your content or service inside app then you must use inapp-purchase.
As per purchasing currencies guideline,
Apps utilizing a system other than the In-App Purchase API (IAP) to purchase content, functionality, or services in an App will be rejected.
Apps that use IAP to purchase credits or other currencies must consume those credits within the App
Regrding your questions, answers are as below
You can't use third party payment gateway to provide credits which are using in app.
You may view price matrix here.
Yes there is most probably chance of rejection if you implement third party payment gateway instead of IAP to provide credits into application.
You may read Apple review guidelines for more information.

ios: Payment Integration Suggestion Needed

I am developing travel app. I just want to implement any ios Mobile payment libraries.
I heard that Apple allows only InApp purchases for the payment. Is there any other third party libraries available for the payment transaction.
I want to give services like payment through Credit Card,Debit Card,NetBanking.
Please suggest me best API to achieve these functionality.
You can find PayPal, Stripe, BrainTree (ack. by PayPal). Those are the easier to integrate with your app.
They both have a library that integrates and they are super easy to use. Nothing to do with InApp Purchases.

iOS - Integrating credit card payments

I'm aware that we can integrate in-app purchases with storekit. but i want to integrate payments using credit card. will apple allow to integrate such libraries? Are there any such libraries available where users can use their credit card for payment of products with in my app?
Depending on what users are purchasing*, you should be just fine accepting payments in your app. Instead of trying to incorporate some type of payment library into the app I would recommend using a payment API that offloads the work. Take a look at http://stripe.com/ for an example of an excellent payment system designed for ease of integration. Their API reference even mentions integration with iPhone apps.
*If you are trying to sell features or services of the app itself you will almost definitely be running afoul of Apple's guidelines, but based on the fact that you said "products" I am assuming this is not the case. In fact, while you must use the in-app purchase system for "content, functionality, or services in an app" you are specifically forbidden from using it for "physical goods or goods and services used outside of the application" (item 11.3 of Apple's App Store Review Guidelines).
Apple does allow not Apple's IAP in-app payments for goods not consumed in the phone (Digital content) as stated above.
See this example of an approved app that use external library for accepting credit cards in their app:
iStash
In my opinion Stripe is good solution but not the ideal for in-app as it is a web based solution and focuses on web experience.
If you want a true mobile in-app experience I suggest you check out PayPal library or my company, ZooZ, which accepts both PayPal and Credit Cards in one integration.
working project can be find here on github stripe example.
As an iOS dev you'd best have a good read through this. Specifically pertinent to you is section 11.2:
11.2 Apps utilizing a system other than the In App Purchase API (IAP) to purchase content, functionality, or services in an app will be rejected
They want the profit, and they get their cut if you use the IAP API. Hope that clears up any issues.
EDIT: I am assuming based on the wording of your question that the payment will unlock something transitory in the app. IAP are only appropriate when purchasing something digital. If what you are selling is physically tenable, then you shouldn't, and in fact are not allowed, to use the IAP API. In that case, something along the lines of Stripe or a web-based version of Paypal's API would work.
In support of David's answer, I would like to add that, using a payment API to accept payments for products/donation through your app would be ideal.
Apple Pay is now available (as of today) on iPhone 6 and 6 Plus, and active only in US.
But if you still want to add support in your app for devices that cannot use Apple Pay, Authorize.Net now has an iOS SDK which you can use to integrate and enable credit card payments.

Resources