iOS/Android pay licence to use app - android

I am developing an application for iOS and Android and this app will be free on the store, but to use all features of the app, the user will need to pay a licence every month/year and if he doesn't pay it, he will have only a limited access to the app, with just few features. Moreover, the first month after he registers, he will have full access.
To pay the licence, it'll can be done in the app or on the website.
For that, do I need to develop a function to check on each connection my database to see if the user has paid, or is there already something done. I have look for "in app purchasing" but it seems that it works only for app where we pay once to have full features, and not every month.
Thank you :)
Regards,

There is a system in in-app-purchase for this, just check the url: https://support.apple.com/en-gb/HT202023 and "Auto-renewing subscriptions" tab

you can go for in app purchase / in app billing
iOS,
In-App Purchase lets you sell a variety of items directly within your free or paid app, including premium content, virtual goods, and subscriptions. And just like apps you sell on the App Store, you receive 70% of the purchase price.
https://developer.apple.com/in-app-purchase/
Android
Use In-app Billing to sell digital goods, including one-time items and recurring subscriptions.
Supported for any app published on Google Play. You only need a Google Play Developer Console account and a Google payments merchant account.
Checkout processing is automatically handled by Google Play, with the same look-and-feel as for app purchases.
http://developer.android.com/google/play/billing/billing_overview.html

Related

Google Play/App Store in-app purchase policies

I heard from someone that on App Store, everything you sell or anything the user buys, Apple must have their 30% on it. That would imply that even if you open a web page within the app and accept a donation, Apple must have its percentage. Otherwise you would have to redirect the user to make this donation outside of the app - for instance, calling the browser.
So, if it's true, I wanted to know if Google holds the same policies. I couldn't find this specific answer in the documentation, just info about in-app purchase (but I'm considering that scenario a purchase within the app, but not IN the app itself (sorry if it sounds confusing).
Taking Groupon as example. If you buy a coupon, is it an "in-app purchase"? I don't believe Google would take 30% on everything you buy there, so I just wanted to make sure it is according to their rules.
The app I'm working on will have both donation and coupon purchase from sponsors (Walgreens, etc). Is it ok if I do this through a WebView, or would I have to actually call the browser?
Sorry if my concept of "in-app purchase" is blurred.
Any information on this topic is much appreciated.
EDIT:
From my understanding, In-App Purchase (for both Google and Apple) is like an API that you use to process these payments.
What I find confusing is that, for instance, in the Apple's In-App Purchase Guidelines:
So, does it mean I cannot use Apple's In-App Purchase to sell my book (but could open my e-commerce site in the app and sell it), or I cannot sell my book at all inside my app?
I know it may sound like a dumb question, but it doesn't seem so clear to me.
The standard 30% transaction fee applies to in-app transactions on Google Play and goes to the distribution partner and operating fees.
According to the Google Play Developer Program Policies:
In-app purchases:
Developers offering virtual goods or currencies
within a game downloaded from Google Play must use Google Play's
in-app billing service as the method of payment.
Developers offering additional content, services or functionality within another category of app downloaded from Google Play must use Google Play's in-app billing service as the method of payment, except: >
where payment is primarily for physical goods or services (e.g., buying movie tickets, or buying a publication where the price also includes a hard copy subscription); or
where payment is for digital content or goods that may be consumed outside of the app itself (e.g., buying songs that can be played on other music players).
Reference: https://support.google.com/googleplay/android-developer/answer/112622
With In-App Purchase on iOS and OS X, you can offer your customers additional digital content, functionality, services and even subscriptions within your paid or free app.
For example, In-App Purchase will allow you to sell:
Digital books or photos
Additional game levels
Access to a turn-by-turn map service
Subscriptions to digital magazines or newsletters
Digital content hosted on Apple servers
There are four supported categories of In-App Purchase items that you
may sell: 1) Content, 2) Functionality, 3) Services, and 4)
Subscriptions. You must deliver your digital good or service within
your app. You may not use In-App Purchase to sell real-world goods and
services.
Reference: https://developer.apple.com/in-app-purchase/In-App-Purchase-Guidelines.pdf
I would have commented on another answer that is missing a bit of information, but as I lack the required reputation, I'll post this as a new answer.
It's 100% possible and allowed to sell physical goods or services in an app released on both iOS (via Apple Store) and Android (via Google Store), but the main difference between selling physical good or services and digital goods comes in the payment system to use. Both platform actually have 2 payments systems with, each, their own restriction and legal implementations.
In the case of Google Store (a.k.a. Google Play), it's as this:
Any digital purchases that adds anything into the app itself must be done through Google Play In-app Billing system. To put it simple, this is the typical in-app purchase you see in any game that charge onto the Credit Card registered by the user on the Google Play account.
Any Services and Physical Goods that are not set toward in-app usage have to use either your own version of a selling system (which has to be separated from Google Play In-App Billing system) or, if you want an more secure way, by using the Google Pay API.
The Google Pay API is really similar to the Google Play In-app Billing system as it allow any user to also use the credit card registered to their Google account (note that it's not Google Play, but a general Google Account), but the main difference is that the Google Pay API can also be used outside of an App (like on a website).
An example of stuff you must use the Google Pay API and NOT the Google Play In-App Billing system is to purchase physical goods (which requires a shipping address to be registered with the sell of goods) or services (like paying a rent of a room at an Hotel or the purchase of plane ticket, digital or not).
Here's the link toward the Google Pay API official website: https://developers.google.com/pay/api
For iOS and its Apple Store, the same equivalent exists, but the problem comes from the fact that both methods uses the same base system called Apple Pay.
For sells of goods and services, you need to address to the site "for merchants":
https://support.apple.com/HT204274
https://developer.apple.com/apple-pay/
For digital goods that are accessible directly through the app itself, you got to use the In-App Purchase system which is described here:
https://developer.apple.com/in-app-purchase/
There's one important thing you got to remember: Both stores might have some resistance to the idea of publishing an App as an App and as a Game. Both payment systems have their own rules and guidelines and, as such, if you are to put both a in-app purchase and an option to sell goods and/or services, both has to be visually separated and must NOT be mixed from one to another. For example, they might refuse to publish a game that has only physical goods to sell or an App in their Store app that is more of a game with in-app purchases and barely any instance of real-good purchases.
The cost of using either Google Play In-App purchase or Apple Pay In-App purchase is 30% of the sales.
On the other hands, Apple Pay for merchants (physical goods & services) have no additional cost from the credit cards issuers' fee which is usually around 3% to 6% based on the payment methods. For example, if the user is using Paypal to pay on Apple Pay, it's 2.9% + $0.30 USD per transaction. Direct Mastercards and Visa users might pay up to 6%. This is done and managed directly by Apple Pay.
Google Pay (for merchant) is also free and come with a fixed percentage rate of 2.9% per sales with credits cards and, in some countries, offers free transaction for direct-bank-transfers and debit cards.
In both cases, there's a limit per transaction. Google Pay has transaction limits, but their depends on the shops and user (shopper) data. I have seen the number $10,000 often as a limit per transaction.
Apple, technically, has limits or security based on the country where the purchase is placed. (All numbers are here: https://support.apple.com/HT207435 )

Android in app billing how and where to specify paid feature charges

Can anyone explain how does in-app billing process works for Android?
Do I need to upload two different apk (free and paid) to Play store and link buy button click in free app to paid version on Play store, but in this case will free app get replaced with paid app when user purchases paid one? How to achieve this?
If I give buy button in my free app which enabled purchase of paid full version (extra features) then how does this purchase works? Is it that upon activity startup I get some event when will tell me if app is purchased or not. Based of which I can enable paid features in my code. If yes Will this kind of logic work when user is offline? and how?
Appreciate if someone could clear my confusion with sample code. I have successfully run Google's sample code but not able to understand if I upload my app as free app how and when do I need to mention amount paid features?
Do I need to upload two different apk (FREE & paid) to play store .
This depends on the use case. If you want to give your users different app that has limited and Pro features that differs majorly then you should put two different apk's in market.
Otherwise , If your app has Free and Paid content you should include In-App purchases.
in this case will free app get replaced with paid app when user
purchases paid one ? How to achieve this.
No , Your app won't get replaced , you will only get payment successful/failed response from Google play , you have to save that information in your app shared preferences and manage your app flow accordingly.
If I give buy button in my free app which enabled purchase of paid
full version (extra features) then how does this purchase works?
Your application accesses the In-app Billing service using an API that is exposed by the Google Play app that is installed on the device. The Google Play app then conveys billing requests and responses between your application and the Google Play server. In practice, your application never directly communicates with the Google Play server for purchases. Instead, your application sends billing requests to the Google Play application over interprocess communication (IPC) and receives responses from the Google Play app. Your application does not manage any network connections between itself and the Google Play server.
If yes Will this kind of logic work when user is offline? and How.
To complete in-app purchase requests, the Google Play app must be able to access the Google Play server over the network. But after initiating a purchase request , you can save your payment response in shared preference for maintaining offline status.
Appreciate if someone could clear my confusion with sample code. I
have successfully run google's sample code but not able to understand
You should first start by reading the API docs Google Play In-app Billing and Selling In-app Products ,
if I upload my app as free app how and when do I need to mention
amount paid features ?
After that follow the steps to create In-App products on Google play account and run the API sample for those products.(There are plenty of tutorials online). Also you can take a look at official website for Establishing In-app Billing Products for Sale
Enjoy!

Which user has installed an Android App?

When an user installs an Android App from Google Play, he/she has to login with a Google Account: does exists an Android API for getting which Google Account has been used for the App installation?
I would like to sell my App from Google Play, but I would give to the buyer a free trial period. I can't use subscriptions because they require a recurring payment (monthly or yearly), whereas I would set a una-tantum price.
When the trial period expire, I can use a non-consumable In-app product, but how can I manage the trial period?
Both Google Play Licensing and In-app Billing track purchase information on a per-user basis, thus they should be able to know which user has downloaded the App or who is the current user, and I too would like to know the same info in order to manage the trial period by means my web server.
If someone of you can suggest another way, I appreciate.
There is no such API to include in your app's code to keep record of user who have downloaded your app from Play Store. However before you upload your app to Play Store , you have to create a Developers account.
There google have provided Developer Console option, and this is where you will find download information for your app.

share in-app purchase on ios and android

Am I allowed to share in-app purchases across ios and android?
I would have a free multiplayer game that is on android and ios.
The user could purchase a digital item with the in-app billing api in his android app. I would verify the purchase on the game server and add the item to his online account. When the user opens the ios app and logs into his account, he would stil have the item since its saved on the server.
This would also be done in reverse.
Does the android or ios policy allow this? Or must digital goods purchased on one platform only be available there?
I have already seen games that do this but I wanted to make sure.
Section 11 of the App Store Review Guidelines details the rules of in-app purchases. The short answer is no, you can not share in-app purchases between Android and iOS.

Allow users to buy additions to my app via google - Android

I have looked around on the internet and cannot find anything on this topic. If my app is a game and I want users to buy tokens from me for a price and they pay one dollar for 100 tokens, how can I make my app communicate with google and bring up a menu so they can purchase through google? Is there any tutorials on this subject?
To make sure people understand it, If my app has an Activity which has a button that reads "100 tokens for 1$" Then another button that reads "500 tokens for 2$" and they click either button, it will bring up a google popup that says purchase. Then it uses their google account information through the app market to purchase the tokens. Many apps have this feature so I hope you know what I am talking about.
Please help me out, and thanks.
Also, I have looked at In-App Billing and they say you must post your app on the Google Play market complete the In-App Billing process. How can I add my app to Google Play without users being able to download or even see it. I want to upload for only developing reasons
In-App Billing is indeed the correct approach for having user purchases within your application. As you mentioned, this is only available via Google Play published apps. However, if you do not want to publish your app publically, you can use Google Play's Beta-testing program to upload an app to Google Play but only make it available to a specific group of people (those who you allow to join a Google Group or Google+ Community).
As long as you never publish a production version and only publish to the alpha/beta channel in the Google Play Developer Console, then you can create an app that utilizes In-App Billing without being public.

Categories

Resources