Bulletin: Update App Store credendials for iOS ROI360 receipt validation

What's new AppsFlyer will transition the ROI360 iOS validation flow to Apple's new in-app purchase validation APIs, as the current API is deprecated by Apple.
To ensure your iOS revenue data continues to be validated accurately and in real-time, you’ll need to update your App Store credentials in the AppsFlyer platform.
If your app still uses Apple Server Notifications Version 1, you’ll also be required to switch to Version 2 notifications before updating credentials.
Update date 02/04/2025
What you need to know

This change affects apps using ROI360 for iOS in-app purchase and subscription revenue validation.
By upgrading to the new iOS validation flow, you’ll benefit from:

  • Enhanced real-time validation with the Apple Store using new Apple endpoints.
  • No changes to in-app event structure or parameters.
  • Updated validation result responses in the AppsFlyer Purchase SDK Connector, including a new store_status code for failed validations.
  • No changes to your SDK implementation are required.

Apple may sunset the old API at any time, so we strongly recommend updating your credentials to stay ahead of any potential disruptions.

What you need to do
To complete the setup:
  1. Generate In-App Purchase Key from App Store Connect.
  2. Upload the new key in the Revenue Settings section of the AppsFlyer platform.
If your app is using Apple Server Notifications Version 1, you must switch to Version 2 before updating your credentials. You’ll see a message in the Revenue Settings page if this applies to your app as prerequisite.
Follow the detailed instructions below:

Set up version 2 of Apple Server Notifications

If your app previously used Apple Server Notifications Version 1, you must switch to Version 2 in App Store Connect before updating your validation credentials. (If this applies to your app, you’ll see a message on the Revenue settings page.)

To set up version 2 of Apple Server Notifications:

  1. In App Store Connect, in the App Information section, scroll to App Store Server Notifications.

    image (24).png

  2. For Production Server URL, click Edit.
  3. Do not change the URL in the Production Server URL box.

    image (25).png

  4. Under Notification Version, select Version 2 Notifications.
  5. Click Save.
  6. Under the App Store Server Notifications section, click Edit for the Sandbox Server URL.
  7. Repeat the steps 3-5. 

Update the App Store credentials for ROI360 receipt validation

The required credentials for the iOS In-App Purchase API integration are:

  • In-App Purchase  key
  • Key ID
  • Issuer ID

Before you start:

  • Updating the keys involves steps performed in both App Store Connect and AppsFlyer. During setup, keep both the App Store Connect and AppsFlyer tabs open.
  • You need admin permissions to set up keys in AppsFlyer.

To update iOS credentials:

  1. In the App Store Connect, go to Users and Access
  2. Go to Users and Access > Integrations, and from the Keys list, select In-App Purchase.
  3. Click + to generate a new In-App Purchase key.
  4. Enter a name for your API key.
  5. Click Generate.
  6. Click Download In-App Purchase Key next to the key you just generated to download it. Note: You can only download the key once.
  7. In AppsFlyer, from the side menu, select Settings > Revenue Settings.
  8. Select your app from the list.
  9. In the Purchases & subscriptions tab, click Update keys.
  10. Under New keys, in the In-App Purchase key field, click the Upload icon ( upload-2.png) to upload the p8 file.
  11. In App Store Connect, copy the Key ID of the key you just generated and paste it into the AppsFlyer purchases & subscriptions setting for Key ID.
  12. In App Store Connect, copy the Issuer ID and paste it into the AppsFlyer purchases & subscriptions setting for Issuer ID. Note: If the Issuer ID is not displayed at the top of the page, create an App Store Connect API key (with any access level). After that, the Issuer ID will appear at the top of the page for the In-App Purchase key. 

  13. In the AppsFlyer purchases and subscriptions settings, click Validate keys to ensure the keys you entered are correct. 
  14. Click Update keys. Once the keys are updated, your app will be fully transitioned to Apple’s new iOS validation flow.