Union
Source

Connect revenue

Union reads revenue from two webhooks: Apple’s App Store Server Notifications and RevenueCat. Both describe the same purchases, so only one of them counts at a time.

Which source counts

ConnectedWhat counts
App Store Server NotificationsApple’s notifications.
RevenueCat onlyRevenueCat’s webhooks.
BothApple’s notifications; RevenueCat events are stored but not counted, and the panel says so.

Apple signs every notification and needs no third party, so it wins when both are connected.

App Store Server Notifications

In Settings → App Store Server Notifications, create the notification URL and paste it into App Store Connect as the Production server URL. Apple accepts only one URL per app, so if your backend already receives notifications, enter its URL as the forward target: Union answers Apple first and forwards every notification unchanged, with retries and a log of each attempt.

Apple does not send a USD price, so revenue from notifications is shown per currency as charged.

RevenueCat

Create a webhook in RevenueCat pointing at the URL from Settings → RevenueCat. Optionally add a v2 secret key (sk_…): Union checks it against RevenueCat before saving it, uses it to import subscriptions from before the webhook existed, and to look up purchasers.

Strict anonymous projects

Union.installUUID is nil in strict anonymous mode, so purchases are counted but never linked to a person. Do not set appAccountToken from Union.

Updated Oct 23, 2026 · Markdown