We set up MobilePush in our Marketing Cloud Instance but didn't fully set up Sending Services. Our App was released and MobilePush Opt-ins started to flow in for Android but not for iOS (despite sending services not being set up for either).

Our understanding is that iOS opt ins are not showing up in our org because a Certificate was never set up (.p8 or .p12). It is also our understanding that future push opt-ins should show up once the certificate IS set up.

A review of our existing app by internal team members showed that if someone downloads the app and opts in for push notifications, this opt in shows up in the iOS system notifications. The implication is that the app has already been granted the access required, but hasn't informed MC of this request. We have 3 questions here:

  1. What will happen once the iOS Certificate is enabled for all the "existing" signups that never appeared prior? We are planning to use.p12.

  2. Would these signups retroactively appear in Marketing Cloud somehow or is there someway to retrieve them if not?

  3. Is it possible to push an app update after the certificate is added to avoid having end users have to opt in a second time?

Basically, we are looking for a way to ensure that anyone who opted in previously doesn't need to re-opt in again once the .p12 certificate is added, as this is a poor user experience. We are also hoping to avoid the losing anyone who opted in previously.

Thanks in advance to anyone who can assist here.

1 Answer 1


If you implemented the SDK correctly, the SDK should register the device in Marketing Cloud (assuming that's what you meant by "signups". Didn't quite understand what you were talking about there). If you did and you're not seeing your device registered in the system then feel free to create a support ticket. The only exception to that is when setDelayRegistrationUntilContactKeyIsSet is set to true and no contact key was set.

The SDK doesn't explicitly ask for permissions. That's something your application does. Take a look at our learning app for an example.

Once the application asks for permission and it's accepted by your user, that means the didRegisterForRemoteNotificationsWithDeviceToken will start getting called by the iOS runtime. At that point, you provide the token to the SDK via the aforementioned delegate method when it is triggered.

The app's permissions are tied to the app's bundle ID, not the certificate. What certificate you use does not have any bearing on the app's permissions.

The only way I can think of that would cause a user to be prompted for permissions again is if they uninstalled the app and re-installed it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .