Skip to main content

I’m working on setting up the Superwall integration, following the instruction on https://www.revenuecat.com/docs/integrations/third-party-integrations/superwall. I’m looking for advice on the best practices for making sure the user IDs match between RevenueCat and Superwall.

 

Our iOS app uses a RevenueCat anonymous ID on first launch, then asynchronously generates a user ID and sends it to RevenueCat. However, the ID is not guaranteed to exist because it’s tied to the user’s iCloud account, so some users may just use the anonymous RevenueCat ID.

 

The flow I was considering was something like this:

  1. After launch, retrieve the RevenueCat anonymous appUserID and send to Superwall.
  2. Attempt to generate iCloud-based ID.
  3. If iCloud-based ID is created successfully, send to RevenueCat and Superwall. Otherwise, do nothing.

Does that seem correct? (Or is this something I need to take up with Superwall instead?)

Hey @Tim Schmitz,

This sounds like a good flow! If your user does end up using the app user id tied to their iCloud account, you can update this in RevenueCat by using .logIn(), and based on Superwall’s documentation, it looks like you can do the same with .identify(). 

As long as these match in both places, your user events should continue associating as expected.