Apple, the App Store and rejecting cryptocurrency iOS Apps

13 Sep 2017

Here’s my story about Apple’s iOS Review Process and how they suddenly stopped approving my two cryptocurrency related apps. They forced me into removing one of the most wanted features: Trading.

In the beginning of March 2017 I uploaded the first version of Polo. At first it was just a simple list, displaying the current market of the Poloniex Exchange. Over the next few weeks the application was extended with more features and a new version was available on the App Store every few days. It quickly gained lots of daily active and happy users.

After reviewing some user feedback, it was clear what the biggest need was: Trading. Many users bought that feature via an In-App purchase and were using it heavily. Up until today a total of 136670 trades worth millions of dollars have been executed via the app.

Poloniex is not the only cryptocurrency exchange. Another popular exchange is Bittrex. Users were asking to support this exchange as well. Instead of adding it to the same app, I created and uploaded a separate one called B-Trex.

Following the same approach there, adding feature after feature and uploading every few days a new version, so users would see quick progress. Soon the update that included the trading feature was ready. Up until that time there was never a problem with Apple’s review process for both Apps. All updates were approved immediately.

But then something strange happened: The trading update of B-Trex was rejected with following reason:

The seller and company names associated with your app do not reflect the name, “Bittrex” in the app or its metadata, as required by section 1.2 of the Apple Developer Program License Agreement

After exchanging a few messages with Apple via the iTunes Connect Resolution Center it was still unclear what Apple exactly wanted me to do. None of the apps were owned by Poloniex or Bittrex, there was never any contract between them and me. Neither of the two companies asked me to create these apps.

Explaining to Apple that Poloniex and Bittrex are providing public API’s did not change anything. Both companies provide these API’s so that third partys build something like the two apps on top of them.

Maybe it was just about me being a single developer, not a company? The suggestion to create a new company and submit both apps under a new account owned by that company was also rejected.

The last message in the Resolution Center said that I would receive a phone call from an Apple representative within the next five business days. The person on the phone explained that the problem is about the new feature that allows trading cryptocurrencies via the app. And that the app should be owend by the company that is providing the platform, Bittrex. However once this feature was removed from the update, Apple would approve it again.

We were also speaking about the Polo app. That one was stuck in “In Review” since weeks at that time. There it was the same problem: Trading. But it was slightly different. The version available in the App Store already had that feature for weeks. It was a paid feature via In-App purchases. So I explained that I cannot just remove that from everyone, people paid money for it. We agreed on hiding it from new users while making it still available to the ones who bought it already.

So why was the trading feature initially approved by Apple? Nobody knows. The only answer I got was that the review process is not perfect.

After removing the trading feature and uploading again, both apps were approved by Apple, again, FINALLY.

So why did Apple force me to remove this feature? Is it just a liability issue? Who knows.

There are still other apps available in the App Store that do support trading. Even after this whole story happened there were entirely new apps being approved. Maybe they just slipped through. Still it’s unfair, not only to me, but to all the users of my apps.

These apps support trading, so they have an advantage over Polo and B-Trex. Also the section of the Apple Developer Program License Agreement that was mentioned in the rejection message has nothing to do with the actual reason. It would be great if Apple was more clear about these rules related to apps that offer trading, add them to their App Store policies and enforce them on all apps.