Skip to content

Webhooks Setup

BitEasy needs to receive purchase events to calculate partner earnings. This page explains how to configure webhooks for each supported provider.


When a user makes a purchase, the purchase event flows through your IAP provider to BitEasy:

flowchart LR
    A[User Purchase] --> B[App Store / Play Store]
    B --> C[RevenueCat / Direct]
    C --> D[BitEasy Webhook]
    D --> E[Partner Earnings Calculated]

RevenueCat is the recommended integration for most apps.

  1. Get your webhook URL from BitEasy:

    https://api.biteasy.co/api/v1/revenuecat/<YOUR_APP_ID>
  2. Create a webhook secret in your RevenueCat project settings

  3. Configure the webhook in RevenueCat Dashboard:

    • Go to Project SettingsIntegrationsWebhooks
    • Add a new webhook with the BitEasy URL
    • Set the authorization header to your secret
  4. Enter the secret in BitEasy:

    • Go to your app’s Settings
    • Under IAP Provider, select RevenueCat
    • Enter the Webhook Authorization Secret

For direct integration with Apple’s App Store Server Notifications V2:

  1. Get your webhook URL:

    https://api.biteasy.co/api/v1/apple/<YOUR_APP_ID>
  2. Configure App Store Connect:

    • Go to App Store ConnectMy Apps → Your App
    • Navigate to App InformationApp Store Server Notifications
    • Enter the BitEasy webhook URL
  3. Create an API Key:

    • Go to Users and AccessKeysIn-App Purchase
    • Create a new key and download it
  4. Configure BitEasy:

    • In app Settings, select Apple as IAP Provider
    • Enter Bundle ID, App Apple ID, Issuer ID, Key ID
    • Paste the base64-encoded private key

For direct integration with Google Play Real-time Developer Notifications (RTDN):

  1. Enable the Google Play Android Developer API in your GCP project:

  2. Create a service account (if you haven’t already):

    • Go to IAM & AdminService Accounts in your GCP project
    • Create a service account and download the JSON key
    • You’ll paste the full JSON content in your BitEasy app settings
  3. Grant the service account access in Play Console:

    • Go to Google Play ConsoleSettingsUsers and permissions
    • Click Invite new users and enter the service account email (e.g., your-sa@your-project.iam.gserviceaccount.com)
    • Grant these permissions: View app information and download bulk reports, View financial data, orders, and cancellation survey responses, Manage orders and subscriptions
    • Scope to your app or all apps, then save
  4. Create a Pub/Sub topic in Google Cloud Console → Pub/Sub:

    • Create a topic (e.g., play-rtdn)
    • Important: Add google-play-developer-notifications@system.gserviceaccount.com as a Pub/Sub Publisher on the topic. Without this, Google Play cannot send notifications to your topic.
  5. Configure RTDN in Play Console:

    • Go to Google Play Console → Your app → Monetization setupReal-time developer notifications
    • Enter the full topic path: projects/<project-id>/topics/<topic-name>
  6. Create a push subscription on the topic:

    • In Google Cloud Pub/Sub, create a push subscription on the topic
    • Set the endpoint URL to:
      https://api.biteasy.co/api/v1/google/<YOUR_APP_ID>
    • Under Authentication, select Enable authentication with your service account and set the audience to the endpoint URL
    • Set the acknowledgement deadline to 10 seconds (the webhook is lightweight and responds quickly)
  7. Configure BitEasy:

    • In app Settings, select Google as IAP Provider
    • Enter your Package Name, Pub/Sub Topic, and paste the Service Account JSON key
  8. Send a test notification:

    • In Google Play Console → Monetization setup → Real-time developer notifications, click Send test notification
    • Check your API logs to confirm receipt

BitEasy processes these purchase event types:

EventDescription
INITIAL_PURCHASENew subscription or one-time purchase
RENEWALSubscription renewal
PRODUCT_CHANGEPlan upgrade/downgrade
CANCELLATIONSubscription cancelled (refund)

Revenue is attributed to the partner who referred the subscriber.


After configuring your webhook:

  1. Make a test purchase in your app (sandbox/TestFlight)
  2. Check your IAP provider’s webhook delivery logs to confirm delivery
  3. View the Finances → Earnings tab in BitEasy to see if the purchase was recorded

  1. Verify the webhook URL is correct
  2. Check your provider’s webhook delivery logs
  3. Ensure the authorization secret matches
  1. Verify the subscriber was attributed (has a subscribers record)
  2. Check the biteasyInstallId or app_user_id matches

BitEasy automatically deduplicates based on transaction_id. Retried webhooks won’t create duplicate earnings.