views:

436

answers:

3

How do I identify the user that is doing a purchase with the StoreKit in the iPhone.

I'm planing to build a suite of iPhone apps that will sell content which will be provided from a external server. The StoreKit documentation describes how to send transaction information to an external server and how to verify the transaction from that server with App Store. But I can't see any descriptions about any information that could be used to connect that transaction to the user that made the purchase.

Ideal here would probably be to have access to the apple-id the user has registered with iTunes?

I would also be interested in getting hands of a device id, but that shouldn't be any problem from what I've read in the iPhone Dev documentation.

+1  A: 

I know that this is not the answer you wanted, but the simple fact of the matter is:

You don't.

You will not receive any individually identifiable information about any of your purchasers more granular than what country's store they purchased your app from.

mmc
Thanks mate. I was suspecting that answer to be just that.So to recap, it's not your customer, you just "borrow" them from Apple. Well, it doesn't surprise me. Still borrowing Apples customers is better then not having any at all.
Johan Carlsson
+2  A: 

Not having access to some type of user-id is a problem considering the In App Purchase Programming Guide states the following requirement:

"Subscriptions and consumable products are not automatically restored by Store Kit. To restore these products, you must record the transactions on your own server when they are purchased and provide your own mechanism to restore those transactions to the user’s devices."

My question is, how are we suppose to restore the purchase information to another device unless there is some way to identify the user.

rickhuizinga
A: 

My question is, how are we suppose to restore the purchase information to another device unless there is some way to identify the user.

Perhaps have the user create an account for your service/subscription. They then use that account info (login/pw) (a) when they make purchases and (b) when they move to another device. It's a bit more of a hassle (for both developer and user), but it's similar to the way things are done on the web, so hopefully the users won't be too put out.

ihatesigninguptocomment