DeployHQ's Journey to the iOS App Store

Backstage and iOS, macOS & tvOS

When we decided to make native smartphone applications for DeployHQ we assumed that getting the iOS version approved on the store would be a simple affair. Unfortunately, this was not to be the case, although it has provided some insight in to the app store review process and the ending was eventually a happy one.

The iOS app store is more heavily curated than the Android equivalent with each app being reviewed by a human following a set of guidelines. These reviewers usually operate on Pacific Standard Time (PST) which is 8 hours behind Greenwich Mean Time (GMT) so as aTech Media closes for the day the app reviewers are generally just getting started, making communication in real time difficult. Thankfully, the heady days of waiting 7-10 days for approvals seem to be long gone and we typically hear back, one way or another, within 24-48 hours.

Around 24 hours after submitting the app we received the following feedback:

We noticed that your app offers a subscription with a mechanism other than the in-app purchase API.

We were also directed towards App Store Review Guideline 3.1.1.

All of our Software As A Service (SAAS) products follow a similar subscription model to DeployHQ so this prompted many questions in the office. Why wasn't this a problem with the previous incarnation of Deploy for iOS (a simple web wrapper app)? Why wasn't this a problem with any of our other apps that are already on the store? Why wasn't this a problem with well known third party apps X, Y and Z?

Now, adding subscriptions via in-app purchases is not something that we want to do for any of our apps. We don't believe that customers would want to manage their subscriptions in this manner and we could be making much more useful things in the time that it would take to implement both the client and server sides.

We replied and explained why we believed that our app fell under the exceptions outlined in the guidance regarding multiplatform services:

3.1.3(b) Multiplatform Services: Apps that operate across multiple platforms may allow users to access content, subscriptions, or features they have acquired elsewhere, including consumable items in multi-platform games, provided those items are also available as in-app purchases within the app. You must not directly or indirectly target iOS users to use a purchasing method other than in-app purchase, and your general communications about other purchasing methods must not discourage use of in-app purchase.

We also provided some more details about the nature of the app, how it only provides a subset of the features and functionality of the website and why it wouldn't make sense to provide subscriptions via in-app purchases to all users. This was met with a, presumably, stock response understanding that we didn't agree with their feedback but imploring us to implement subscriptions via in-app purchases.

After some back and forth we were offered the opportunity to discuss the rejection with an Apple Representative on the telephone, but the conversation went much the same way as the exchange we'd been having in the Resolution Center. We had one last throw of the dice, lodging an appeal with the App Review Board. We presented the same arguments that we had both in the Resolution Center and on the telephone, sent the appeal and waited.

Apple periodically made contact to reassure us that they were investigating and after 18 days sent the following:

The App Review Board evaluated your app and determined that the original rejection feedback was not accurate.

Success! Almost, in the 25 intervening days between the initial submission of the app and outcome of the appeal the trial had expired on the DeployHQ account we provided to Apple for testing. Once this minor issue was resolved DeployHQ finally made it on to the app store.

Parting notes

We feel that we have learned 3 things from this experience:

  • Apple do not apply their guidelines uniformly
  • It is not worth arguing your case via Resolution Center
  • It is worth lodging an appeal with the App Review Board

This certainly highlights some problems that arise from disparity between automated and human reviews, but once we were able to communicate our issues with the review board, the app was approved, albeit after some delay.

A little bit about the author

Hi, I'm Jonathan. I am a software engineering manager at Krystal. Outside of work I love to be outdoors, wildlife photography is a particular interest of mine.

Proudly powered by Katapult. Running on 100% renewable energy.