What is the reliable way to update the subscription ?

Hi,


We have implemented auto-renewable subscriptions on our app.


Shorthly(ish) the process is as follows:

- user hits subscribe on app, we receive the receipt

- send the receipt to the server, validate with apple and start subscription ( add entry in DB: expire date, receipt etc. )

- we have the server side notifications enabled, with a logger the logs the whole process, and it's working ( there are complaining of some compliance problem )

- [FALLBACK] if the user logs in, and the subscription appears to be expired ( according to the DB ), we do a refresh subscription: contact apple using the last receipt saved in DB, search for subsequent payment and we count those in

- also we have the restore purchase option ( basically user retrieves the last receipt based on the apple id, and resumes the subscription )


THE PROBLEM

Some user are complaining of their subscriptions not being renewed.

Upon checking the very privacy aware reports in the app store, we can confirm that the user was in fact charged ( there is an entry in the reports saying the user was charged )


BUT there is nothing in the logs ( no notification received ); I log on the first line of the code the clean input and it does work.

Also I checked the user's receipt, and it seems to be not paid.



THE QUESTION

1) Is it possible that apple forgets to send any notifications ?:)

2) Is it possible to get more reliable reports ? ( to match the buys to an appleId or at least transactionId )

3) Is there a more reliable way of doing the subscriptions ?


Thank you for you patience

Replies

Some more extra info:


There were some occurences of using doing the subscription on another app account, and using a different one to sing in.

There were other occurences where the users only thought they were charged, but weren't.


Now I'm just checking the logs ( server side notifications received ) and try to figure out how the payment got lost, and how I could track it down.


Thanks again