Pay-per-review iPhone app review sites

On November 23, 2009, in iPhone Development, by admin

Freshapps.com sent me an email today about their great new feature:  letting me pay $100 for them to review my app, with the option of throwing the review away if I don’t like it.  How nice of them…

I always hated when sites like IGN would seem to sell out to  big publishers and reskin their whole site for a particular game.  You could tell these big money ads and promotions were the reason so many of the same publisher’s utter crap games would consistently score 70% or higher reviews, even though the gamer’s review scores would come in at half that.

Is there really no way to run a review website for video games or iPhone apps or whatever product without selling out?  Am I the only one who cares that a review was bought and paid for?  Knowing these reviews are paid for completely invalidates them to me.  Of course they are biased.  The only way they’re going to survive with this business model is repeat customers.  They need those developers to come back and pay for more reviews.  Enter bias.

 

I’ve just completed milestone 1 for my client’s app, along with delivering an Adhoc build to them.  For this client I am fortunate in that the person I am in contact with is quite technical and has made a lot of the contracting problems for app development easier by providing me with a VPN and VNC into a mac mini in their office where I can do the adhoc builds using the Team Agent’s credentials.  So that simplified things.  It was also a good test in the sense that I am sure that the project doesn’t have any dependencies outside of its folder or the SDK, so what I am delivering to them is a self contained package of work that they can rebuild at any time.

It’s been an interesting app to work on so far.  Lots of network stuff I haven’t done before, involving requests to their web server for user authentication and content downloading.  Also I took the time to fully learn about asynchronous programming options on the iPhone, and learned how NSOperation and NSOperationQueues are a sweet alternative to writing your own threads.  I ended up writing two custom NSOperation classes, and that was interesting work.  It’s a good system and I think for the most part I will prefer that to writing my own threads in the future.  Certainly for Photo Resize we should have used a custom NSOperation instead of the thread we’re using to compress and resize the photos.  It would have been so much simpler, just alloc and init an operation with the image data, add it to the queue and away it goes.  Scalable and very clean.

Today will be spent planning for milestone 2 and waiting for any problems the client finds in milestone 1 (hopefully none!).

 

I’ve been searching the web, iPhone forums and everywhere else looking for answers to the question of how do I go about building adhoc builds for clients.  Unfortunately Apple has a restriction that only the Team Agent can sign adhoc and app store builds.  This adds a major roadblock to working for someone as a contractor.  Of course you want your client to be a registered iPhone developer so they can list the app you build for them under their own account and manage their own business once you’ve built the app, however doing this means they will have someone in their company as the Team Agent, not you.  If your clients are technically savvy the problem gets easier to solve, however in the end without a work around they still need to have Mac hardware to build the final build on to upload to Apple.  Odds are the reason they’re your client is that they have no knowledge of developing for the iPhone, and most likely no knowledge of Mac development or hardware to do the development in the first place.  So now what do you do?

Here’s some options I’ve found so far, but I would love to hear from anyone reading this if they have any tips as well:

  • Easiest option is their Team Agent gives you their Apple ID and password and you manage everything.  This isn’t very secure for the company though, especially if they have other apps on the store already.  You’re asking them to hand you the keys to the whole show, you can see their financial information, everything about their company and its business with Apple.  Not a very good option.  If you do want to use this method, one developer in the Apple forums suggested that you create another login on your machine for the client and do all of your work for that client in that login, this would ensure that you keep your keychains very organized, and don’t clutter up your own keychain with all of their details.
  • Create the Certificate Signing Request (CSR) on your machine using the Team Agent’s email address and company name.  The Team Agent then creates an iPhone distribution certificate in the portal, downloads it and mails you the .cer file.  You then load the certificate into your keychain (or another login on your machine’s keychain as mentioned above).  The Team Agent then creates the adhoc distribution provisioning profile and emails  you the .mobileprovision file.  With that you can now sign things as the Team Agent on your machine.  Basically this method makes it like the Team Agent is developing on your machine.

I’m still looking for better solutions, and really hope someone reading this will give me a nice one that cleans up the whole mess.

 

This API does a lot of the work for you for sorting out the guts of requesting a resource from a URL.  I’m using it in the current contract app I’m developing and it’s pretty slick.  Easy to integrate and does the job.  It’s based around putting all the work into an object that inherits from NSOperation which is smart, it makes it quite simple to asynchronously perform the request.  It’s packed with features though, so if you’re doing something very simple maybe it’s too much extra weight for minor stuff.

 

UPDATE: I updated this post with some things I’ve since learned as I continue to figure out the ins and outs of taxes as an iPhone developer.  Of note is the new information I have on how GST works.

I’ve had quite a bit of difficulty finding tax information for Canadian iPhone developers.  Nobody seems to be sharing their experiences, which seems weird to me since there should be tons of people in the same boat as me.

Stormtap Studios is a corporation, with a fiscal year.  Our fiscal year end is September 30th.  To be able to sell apps on the app store all developers need to fill in their tax forms and bank information with Apple.  One of the forms you need to fill out if you are not from the US is a W-8BEN.  This form assigns Apple as your agent to withhold tax on sales of your applications from the US store (more on this later).  To fill out this form properly you need to register with the IRS to get an EIN number.  I believe the EIN number is for companies, and individuals get a TIN (correct me if I’m wrong, this post is company centered as that is my experience).  Once you get an EIN you’re on the IRS’ radar.  They’ll send you a return which you need to file within 3 months of your year end.  I recently filled this out and found it so confusing and difficult to understand, I thought I should share everything I’ve learned here to help others.  This information though must be accepted with my full disclaimer that I am not an accountant, don’t trust me, pay for legit advice from professionals.  My advice is for those of you like me who can’t afford that and will take whatever they can get! ;)

Here’s some things you need to know:

  1. Sales of your application to US customers through the app store count as “sale of inventory”, and are therefore a US sourced income when Apple pays you for those sales.  These sales are subject to 10% withholding tax for the first $5,000, and then 30% after the first $5,000.  Note: I’m now skeptical on this one.  This is how I read the tax and US sourced income definitions on the IRS website, but Justin’s comments below are also making me have doubts.  Need to do more research on this one.
  2. If you consult for a client (i.e. make an app for a client located in the US who pays you for that service), this is considered a personal service.
  3. If you perform the consulting solely in Canada (i.e. never go to their office to do work in the US) and you’re based out of a Canadian address, then the income from this is NOT US sourced income, the source is Canada (where the work is done).  You do not need to report this income to the IRS, you report it when you file your Canadian taxes and only pay tax to Canada for this income.  Your client can just straight up pay you whatever your fee is.
  4. Apple is required to charge Canadian customers GST on all sales and they remit these taxes monthly to the CRA.  To complicate things, we are also required to pay the GST to Apple on Apple’s 30% commission.  However to make it easier on us Apple has agreed to absorb the GST in its commission which leaves them only getting about 28.5% + GST for a total of 30%.  You need to email ITStax@apple.com to bug them for remittance advice for your Canadian sales, this will be the information you need to fill out your “Goods and Services Tax/Harmonized Sales Tax (GST/HST) Return For Registrants”.  I have pestered Apple for this information, they still haven’t sent it to me months later.  So you need to get on this well ahead of whatever your GST return filing date is.  This information came directly from Apple to me in some email correspondence.  UPDATE: Apple seems to have their systems in place now to automatically send you the GST info.  I haven’t seen it in action long enough to know whether they plan to send it out everytime they generate financial reports for a month, or whether they just sent the previous year to me all in one stretch.  I’m hoping they send it out every time they do a financial report. Note that you do not collect or pay the GST on the sale of the app.  Apple does this, and with their own account.  All you need to know from Apple is how much they charged YOU for GST for providing the selling service through iTunes.  You take this information and use it towards your “GST paid” amount on your return.  This is all you need to know from Apple.

Theories I have, and other information I’ve read on the web,  that I need to research further to prove/disprove with legit sources:

  • The US and Canada have a tax treaty.  You are not doubly taxed.  You pay your taxes to the source of the income.  So for US app sales you pay your taxes to the US, for consulting and other country app sales you pay your taxes to Canada.  Payments you make to the US count towards what you owe to Canada (e.g. if the US says you owe $99 in tax for your US sourced income, and Canada says you owe $100 for the income, you pay the US $99, then Canada the $1 difference).

What’s this form W-8BEN?

Form W-8BEN is your way of authorizing Apple to withhold tax on your US app sales.  Think of it like the forms you fill out when you start a new job in Canada.  When your Canadian employer pays you, he calculates your taxes based on what you entered on that form and what your likely deductions will be.  He then pays those taxes to the CRA, and when tax time comes around you take your T1 and calculate the difference between what he payed and what you actually owe.  Then you get a refund or you owe more money.  It’s the same for these withholding taxes.  Apple withholds the tax, and pays it to the IRS.  When you file your return you calculate your profits on your return, and figure out how much of the withheld tax you get back, or whether you owe more tax than was withheld.  I’m not going to quote all the forms you need to do this, because it’s extremely complicated, and the rules have so many conditions for classifying you I could potentially tell you something very wrong for your situation (for example whether you’re a corporation, individual, etc..).

Update: I’m torn on whether Justin went the correct direction with this (see his comments below).  The stuff I’ve read on the IRS site seems contrary.  We really need someone who’s had Apple send them information on witholding taxes for their huge US sales to straighten us out on which way the system works.  So if you’re reading this and you have big US sales please fill us in!

How do I know how much US source income I made from my app sales?

I don’t have a good answer to this question yet.  I ended up having to email ITStax@apple.com to find out.  They got back to me in 4 days.  Since my app sales suck right now I didn’t have to worry about it for this year.  The problem lies in the way Apple makes payments to us.  When Apple pays you, you just see in your bank account a lump payment from Apple.  You don’t get any emails showing breakdowns of where the money is from.  You have no idea what percentage of that payment is from your US sales versus all the other app store countries.  Really I think all you can do aside from asking ITStax@apple.com directly for your specific numbers would be to report the values you get from the financial reports on iTunes Connect.  I personally think the safe thing to do is likely to claim the amounts in those financial reports for your tax year, even if they haven’t been paid to you yet.  Eventually they’ll be paid to you, and as far as I can tell this is the only exact way to figure out your US sourced income from app sales.  I really need to do more research on this, and it’s one of the main things I’ll be asking around about on forums and with other developers I speak to.

Call for help!

Us Canadian developers need to stick together and help each other out.  The best way to do this is to share information.  This saves time and time is critical for us to survive and make money, our time is better spent making apps than looking up tax laws on the Internet.  If you have tips, or you see major mistakes in what I’ve written here don’t stay silent.  Post and help develop this into a helpful resource for other people in your position.