Do you actually need in-app purchases in your Android application?

It is a well-known fact that a price tag on your application looks not as attractive as its total absence. But what is an average developer supposed to do to get rewarded for the work done? And how to start earning money on your product if a great majority of consumers may be discouraged from downloading an app having barely seen its price (even though, the low one)?

Luckily for you, there is one trick that can help you solve this problem. Meet in-app purchases or in-app billing, as it’s known in the Android development community, because today we are going to deal with the mobile apps developed for Google’s mobile platform!

What does In-App Billing mean?

As you might have already guessed, In-App Billing is the best companion of freemium applications. Being free for downloading, freemium applications can offer their users some extra stuff to buy while exploiting an app.

For example, you’ve developed an amazing photo editor, but what makes it even more amazing is the fact that it’s free of charge. Your application provides a set of basic features which are enough for a user to get what he or she wants – a beautiful retouched picture. But there are some more functions – even more fascinating – which may be unlocked for additional money. Well, that’s where the user may be trapped. In other words, in-app purchases are a purer and less obvious way to get paid for the services provided.

All the things sold within your application are usually called in-app products. To make it clear for you, here is a list of what you can sell:

  • content
  • subscriptions
  • services
  • functionality

Your next concern is to provide a seamless payment process, and this is where In-App Billing plays a significant role.

Oh, almost forgot, In-App Billing has nothing to do with the selling of physical goods. So in case you are developing the future Asos, Nasty Gal, or Ebay, you may need the help of third-party gateways providers. But that’s another story…

How does In-App Billing work?

As you can see (above), Google Play Store allows you to sell different types of products inside your Android application, which gives a developer a plenty of opportunities for monetizing his or her app.

So the first thing you should do to start earning money is to specify a type of your in-app good in Google Play Developer Console. There are actually two types of such products: managed in-app goods and subscriptions. Let’s take a closer look at these two.

Managed products

Managed in-app products got this name because their ownership information is normally tracked and managed by Google Play. What does it mean?

in-app_billing_in-app_purchases_Android_app_monetization

When a user buys one of the goods considered to be the managed one, Google Play collects the purchase information related to this good on its server. Google Play keeps track of all acquisitions made by a separate user as well. In case you need to get some info on a product, you just need to ask Google Play, and voila – it’s here! What’s more, this data stays on the server even if a user removes an application or changes a device.

It wouldn’t be hard to guess that in-app goods can be consumable and non-consumable. The goods of the first kind can be bought multiple times, whereas non-consumable goods stay with your users forever. The best example I can give is a level pack, or premium update, or different tools and filters when it comes to photo/video makers.

You may want to know how to deal with consumable in-app goods? No problem, listen…

Users can’t buy an item again as long as it’s consumed. Because once a user buys an item, it’s considered to be ‘owned’. To change the product’s state (shall we say from ‘owned’ to ‘unowned’), you need to drop the so-called ‘consumption request’ to Google Play. After that, the service removes all the previous info on the acquisition and marks an item as available for purchasing again.

Talk about non-consumable goods, the bought in-app good of this kind will be permanently associated with a user’s Google Play account, which means that the owner will get benefit from it until the end of times.

Subscriptions

When it comes to subscriptions, they can be used everywhere. What’s the point? You can sell the subscriptions which will last as long as several weeks, months or even years. These subscriptions make some extra functional on your application available for a certain period of time. Users can renew them right after their expiration due date.

in_app_billing_in-app_purchases_Android_monetization_freemium_apps

One important thing to remember: subscriptions are only sold inside YOUR app, not from Google Play Store or somewhere else.

You can configure, publish, and do whatever you can imagine with subscriptions via the Google Developer Console. More details are here.

Do I actually need to do something?

Well, not that much… to develop an application. But when it comes to payment processes, here In-App Billing takes the matter into its own hands.

Regardless of what are you going to sell (if it’s considered to be a digital product, of course), Google Play Store will manage all the checkout processes without your having to take part in it. It means that your application doesn’t have to carry out any financial matters on its own.

Worth mentioning!

In-app billing works for all applications distributed through Google Play Store. AND ONLY FOR THEM! In this case, no special account and registration are needed but the Google Play Developer Console mentioned earlier and Google Wallet merchant account.

Integration

And the final part is In-App Billing integration with your brainchild. Are you sure you want to know it? Then Ok. It’s going to be interesting (and brief).

Applications access Google Play server using a client-side API exposed by the Google Play app installed on an Android device. As I already mentioned, the Google Play app processes and transmits all possible billing details between apps and the Google Play server, so these two never communicate directly.

Your app sends a payment request to Google Play App and gets back a response on its state over the so-called ‘Interprocess Communication’ (IP). To perform this request, the Google Play App has to be connected with the Google Play server via the network.

Besides the client-side API, you can also use a server-side API to make it possible for your users to buy subscriptions from your website, for example. The server-side API helps to define a status of current subscription when a user enters your service from different devices (PC, smartphone).

You can find out more about In-App Billing API Version 3 and take a look at Google’s sample application performing in-app purchase right here. No more boring information!

See, we’ve almost finished. So answering your question “Do I actually need in-app purchases in my Android application?”, I can say that integrating subscriptions or digital goods would be a nice alternative to charging users for downloading an application. The main rule you need to stick to is not to overload your app with paid products, because it is supposed to be the best helper and source of joy, first of all. Try to make sensible decisions and satisfy each and everyone’s needs including your own.

About Author

Yana Polulyakh is a Writer at Cleveroad Mobile and Web development company. We are focused on helping startups, small, and medium businesses create competitive and winning software.

I'm passionate about all things mobile so often write phone & app reviews.