Documentation > iOS

Troubleshooting

If you are having trouble integrating the SDK, uploading your certificates or sending notifications, here are some suggestions.

Common issues

I’m not seeing any data on my dashboard

There are several points you should check if Batch doesn't show any data on your dashboard:

  • Dev/Live API key. Make sure that you used the Live API key in the build you uploaded to the store. Stats are only displayed for the Live API key.
  • 24h delay. Installs, DAU, starts and redeems shown on the Analytics tab are updated on a 24h basis for the Live API key.
  • Integration issue. If you still don't see any stats for your app 24h after changing the API key, see if you find anything related to Batch in your logs and double check your integration using the documentation.

"Unable to find a token"

There are several points you should check if Batch doesn't detect any device tokens:

  • Push disabled: See if you have enabled the notifications for your app in the iOS settings (Settings → Notifications).
  • Look for errors: Check your Xcode logs to see if Batch published any error messages.
  • Provisioning issue: Make sure you have correctly set up your provisioning profile with Xcode.

My device doesn't seem to receive any notifications

If you are not receiving any of the notifications sent from Batch, here are some suggestions to find the issue:

  • App opened: Make sure your app is not opened in the foreground during your tests. By default iOS only displays notifications for apps opened in the background: It only calls your delegate, which can be invisible to you if you don't log anything.
  • Push disabled: See if you have enabled the notifications for your app in iOS settings (Settings → Notifications).
  • Connection issues: Connect your device to a 3G/4G network or try to disconnect/reconnect to your WiFi network.
  • Test notifications: Try to send a test notification to your device from the message editor ("Push" tab → "New push campaign" → "Send a test").

I'm receiving notifications twice

You may receive the same notification twice if you have reinstalled your app with different API keys, several times on the same device (Dev/Live). Rest assured, your users won't receive the same notification twice.

Certificates issues

The P12 export button is greyed out

Make sure you have selected "My certificates" in the left pane of the Keychain application.

"Wrong file or password"

First, double check your certificate password. If your password is correct, make sure your certificate is not named "Apple Production IOS Push Services" or "Apple Development IOS Push Services". These are not supported anymore. You will need to generate a new production certificate if it's the case.

"Unable to parse the p12"

You cannot upload Apple's certificate directly. You will find more information on certificate generation here.

“Legacy or development certificates are no longer supported”

Development certificates or production certificates named "Apple Production IOS Push Services" are not supported anymore. Please generate a new Production certificate, export it and upload it. You'll find a step-by-step guide here.

Test push issues

"DeviceTokenNotForTopic"

DeviceTokenNotForTopic errors happen when your app's bundle ID and certificate's bundle ID don't match.

Bundle ID

Please ensure you set up your bundle ID correctly in your Xcode project settings.

"BadDeviceToken"

BadDeviceToken errors can happen for two reasons:

  • Invalid token: On iOS 9 and higher, your device token may change if you uninstall/reinstall an app. Please make sure your token hasn't change since your last tests. See how to obtain your token here.
  • Wrong environment: If your device token is valid, make sure you have chosen the right environment (sandbox/production) from Batch settings (Settings → Push settings). You can find the right environment for your token with our debug tool.

"The attempt to send a [test] notification was rejected : invalid certificate"

If you see an "Invalid certificate" error, this means that:

  • Legacy certificates: You are currently using a legacy certificate and the Development or the Production certificates are missing.
  • Delay: Batch is still processing your certificates. Please try again in a few minutes and reach us if the problem persists.

"There was an unknown error while processing the request"

If you are getting an unknown error, please contact us at support@batch.com or by clicking on the question mark in the bottom right corner. Our team will try to find more details on the issue.

APNS/internal errors

You can find the list of APNS and Batch internal errors in the Notifications tab, by hovering on the error count.

apns_invalid_token

APNS can send this feedback when:

  • Invalid token: The token Batch tries to push is not valid anymore. This usually happens when users uninstall/reinstall (iOS 9.x and higer) your app or disable notifications.
  • Wrong environment: Make sure you are targeting the right environment (sandbox/production) for your token.

apns2_device_token_not_for_topic

Happens when your app's bundle ID and certificate's bundle ID don't match. Make sure you set up your bundle ID correctly in your Xcode project settings.

max_retry_attempts

This internal error happens when the number of maximum send attempts is reached for a token. Feel free to reach us if you are seeing to many max_retry_attemps errors.