We are in the process of transferring an app from one Apple developer account to another one as part of an app acquisition. The app uses Apple Sign in and Firebase authentication and it seems that there are a few steps to complete related to generating transfer identifiers for users that have signed up using Apple Sign in. This is documented here:
However, because we use Firebase as the backend for our app we don't have direct control of the authentication process and the user ids generated by Apple sign in and how they are stored in Firebase Auth and how to update them after app transfer.
The documentation of how to generate transfer identifiers it is also quite confusing as it is not clear if you need to generate a transfer identifier for all users and what to do if the user does not login into the app in the 60 day period that they mention after the transfer.
If someone has run into this before we would be very very grateful for some advice on how this can be accomplish. Thanks so much!!
I am not fully understand you problem about firebase token.
In my system, I store both user identifier and firebase token of each device into database. Something, like this below...
So, after transferred the app, I just need to migrate only appleUserId.
I am total agreed with you that it is quite confusing.
Anyway, this is step to migrate appleUserId.
Due to there are only 1000 users who sign in with apple to my system. I create a bash script that call API to convert the user id one by one.
Here is my script to retrieving "transfer identifier".
Note: senderSecret is generated by JWT. Please see https://medium.com/identity-beyond-borders/how-to-configure-sign-in-with-apple-77c61e336003
You can run the script by
Here is sample input.csv
Then you will receive "transfer identifier" for each user.
After that you can use the "transfer identifier" for retrieving new user id that is used with Recipient Team. Please read this article for convert "transfer identifier" to the new user id. https://developer.apple.com/documentation/sign_in_with_apple/bringing_new_apps_and_users_into_your_team
Note: You can modify the above script to call an API to convert it.
Finally, you will receive the new user id. Then you just need to update the user id into your database.
I hope the above information is useful to you.