Expo APNs token InvalidRegistration

Solution for Expo APNs token InvalidRegistration
is Given Below:

SDK Version: 40.0
Platforms(Android/iOS/web/all): iOS & Android

I’m having an issue on iOS with Push Notifications

I’ve built and released the app on the Play Store following the FCM guide, meaning

  • getting the json config for the app to get FCM token
  • getting server key to be able to send notifications from the server

all of it worked like a charm on Android, then when I got to iOS, followed the guide as well

  • got the PLIST file
  • added the file to the app and built it
  • when configuring the app on Firebase console, I got asked the .p8 file, the one generated/added by Expo was no longer downloadable
  • I added a new one and replaced the one on expo using the credentials manager
  • replaced the provision profile as well
  • Built the app, released it
  • Token are generated, up to this point everything seems fine

Now trying to send message to the iOS device always resulted in the same response

{"multicast_id":6161497705980646930,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]}

I can’t tell what I’ve gotten wrong, I’ve been trying everything and reading anything I can to no luck

Here are the steps I followed

  • On Apple Dev Account

    • Added a key
    • Added a Provision Profile
    • Added both on Expo Credentials(verified all the IDs, everything checks out)
  • On Firebase Console

    • Added iOS app
    • Fill in the Apple informations(Team ID, bundle, etc…)
    • Downloaded the plist file
    • Uploaded the .p8 file
    • Copied the Server key to the backend server
  • On the App

    • added the plist file path in the app.json
    • built the app
    • fetched the device token(seems legit, 64 chars long)
      But when I try to send a notification to the iOS devices it doesn’t work, but on Android everything works like a charm.

What am I missing?