RevenueHogdocs← Back to app

Setup guide

Connect App Store Connect, pull your revenue, and optionally route Apple's real-time subscription events through RevenueHog.

Connect App Store Connect

RevenueHog authenticates to Apple with an App Store Connect API key. Create one in App Store Connect under Users and Access → Integrations → App Store Connect API, then add it under Settings → Credentials.

  1. 1
    In App Store Connect, generate a key. Finance or Sales is enough to read sales, and that covers every number in RevenueHog today. Broader roles unlock more; the role ladder below maps each one, and setup detects what your key can do automatically. See the callout below.
  2. 2
    Download the .p8 private key file. Apple lets you download it once, so keep it somewhere safe.
  3. 3
    Note the Issuer ID (top of the Integrations page) and the Key ID (next to the key you created).
  4. 4
    Grab your Vendor Number from App Store Connect → Payments and Financial Reports. It is the number Apple files your sales reports under, and without it revenue and subscription history cannot be pulled at all. Everything else still works.
  5. 5
    Paste all four into Settings and save. Your private key is encrypted at rest with AES-256-GCM and scoped to your organization. Saving immediately starts a sync.

Read-only works. Write is optional.

A read-only sales key powers everything on this page: revenue, subscribers, trials, the funnel and the live feed. The single thing it cannot do is set your server-notification URL for you. Give the key the App Manager role and RevenueHog wires each app in one tap; keep it read-only and you paste one URL per app into App Store Connect instead, losing nothing but the shortcut. If a read-only key is used, auto-wiring reports that specifically rather than failing as a bad key. Whatever role you pick, the capability matrix under Settings → Credentials shows exactly what the key unlocks.

Deeper dive: Create an App Store Connect API key (.p8, Issuer ID, Key ID) walks the whole thing with screenshots-level detail, role guidance and a JWT snippet to prove the key works.

What each key role unlocks

Every RevenueHog feature reads from Apple except one (setting your server-notification URLs), so the role you give the key is a choice about how much it can see. Each rung of the ladder includes the ones below it.

key rolewhat it unlocks
Sales or FinanceDaily sales and subscription reports: every number shipped today, including revenue, subscribers, trials, the funnel and metrics. Analytics report reads work at this level too.
FinancePayout reports: what Apple actually pays you, per fiscal period. Sales access is included.
App ManagerThe one write: setting server-notification URLs for you. Also reads TestFlight builds, testers and beta feedback (the Developer role reads TestFlight too, but cannot write URLs).
AdminEverything above, plus webhooks and creating analytics report requests. RevenueHog recognizes an Admin key by its ability to list your team's users, which only Admin can do.

You do not have to remember any of this: saving credentials runs a sweep of cheap read-only checks against Apple, and the capability matrix under Settings → Credentials shows what your key unlocks, feature by feature.

Detection today, features as they ship

Payout reports, analytics, webhooks and TestFlight are capability detection only for now: the matrix tells you whether your key will power those surfaces when they arrive. Everything else in this guide works today.

Run your first sync

As soon as your credentials are saved, RevenueHog discovers your apps and pulls daily sales and developer proceeds. A sync runs automatically every day; saving credentials again also kicks one off.

The first sync can take a minute while it backfills recent history. When it finishes, your apps, net revenue, and unit counts appear on the overview.

Currency conversion

Non-USD revenue is converted to USD using daily ECB reference rates for each sale's date; a row is flagged estimated only when no published rate is available. Apple's own payout reports remain the source of truth for exact figures.

Wire Apple Server-to-Server notifications

Daily syncs cover revenue. To see subscription lifecycle events (new subscriptions, renewals, cancellations, billing issues) the second they happen, point Apple's App Store Server Notifications (V2) at RevenueHog. Each app has its own ingest URL on its app detail page.

  1. 1
    Open Apps → your app and copy the Apple ingest URL.
  2. 2
    In App Store Connect, set that URL as the App Store Server Notifications V2 endpoint for both the Production and Sandbox environments.
  3. 3
    If you already send notifications to your own server, add your existing endpoint under Forwarding endpoints. RevenueHog verifies each notification and forwards Apple's verbatim signed payload on to you, so you lose nothing.

Let RevenueHog wire it for you

The S2S configuration audit can read what App Store Connect currently posts to and re-point it at RevenueHog automatically, preserving your existing endpoint as a forward. It's free for every app, like everything else on the web (see the billing reference).

Deeper dive: App Store Server Notifications V2: the complete setup guide covers the JWS verification, every notificationType, and testing. Useful whether or not RevenueHog is the endpoint.

Verify the connection

Open your app's detail page and check Recent events: each notification Apple sends shows up with its type, environment, and forwarding status. The S2S configuration audit also reports whether App Store Connect is pointed at RevenueHog. Live events stream into the feed, and subscription activity rolls up on metrics.

No events yet?

Apple only sends notifications when something happens (a purchase, renewal, or cancellation). To force one, make a Sandbox purchase in your app, or use the Send test buttons on the app detail page.