Skip to main content
Provider integrations connect your HyperX project to Google, Apple, Facebook, stores, FCM, and APNs. Secrets are registered in Console and must never be shipped in Unity clients.

Principles

  • Register credentials from the project Credentials page in Console.
  • Unity clients send only values they should receive, such as provider tokens, purchase tokens, and device tokens.
  • Do not include service account private keys, APNs .p8 keys, Facebook app secrets, or webhook secrets in client builds.
  • If one project has multiple apps for the same provider, pass appIdentifier or receipt_payload.app_identifier.

Common Credential Fields

Social Login

After signing in with a provider SDK, pass the token to HyperX.

Google

The Unity client passes an ID token from Google Play Games or Google Sign-In. HyperX checks token signature and audience.

Apple

Native iOS/macOS login usually uses the bundle ID as client_id. The Unity client passes the Apple identity token.

Facebook

The Unity client passes the Facebook user access token as identityToken. HyperX checks token validity and app ID.

Store Purchase Validation

After a purchase succeeds, call player.ValidatePurchase. HyperX validates the receipt through the provider API using Console credentials.

Google Play

Grant the service account permission to read purchase data through Google Play Developer API. Send the purchase token as receipt_payload.purchase_token or receipt_payload.token.

App Store

Register the App Store Server API issuer ID, key ID, and private key. Send the StoreKit transaction ID as transaction_id.

ONE Store

Register the ONE store client ID and client secret. Send the purchase token as receipt_payload.purchase_token or receipt_payload.token.

Refund and Cancellation Webhooks

Providers send refund, cancel, and revoke events to the HyperX webhook URL. HyperX deduplicates events and marks matched purchases as refunded.
Prefer the x-hyperx-webhook-secret header. If the provider console does not support custom headers, use the webhook_secret query parameter.

Push Providers

Push requires provider console setup, HyperX credentials, and Unity device token registration.

FCM

Register a service account with Firebase Cloud Messaging HTTP v1 permission. The Android package name must match Firebase, Unity Player Settings, and HyperX.

APNs

Enable Push Notifications capability in Apple Developer and register the APNs Auth Key. The iOS bundle ID must match the Unity iOS build and HyperX credential.

Campaign Delivery

Operators create and send push campaigns from Console. A campaign target can include platform, environment, app_identifier, limit, max_attempts, and validate_only. HyperX sends Android devices through FCM and iOS devices through APNs, retries retryable provider failures up to the campaign max_attempts boundary, and records one delivery result per device. Console shows delivery status, attempts, provider message IDs, provider errors, and invalid-token cleanup. When FCM or APNs reports an invalid device token, HyperX marks that device as opted out so future campaigns do not keep retrying a stale token.

Checklist

  • Provider secrets are not included in Unity builds.
  • Package name, bundle ID, and client ID match the released app.
  • Social tokens are fresh short-lived tokens from provider SDKs.
  • Purchase requests use real store transaction_id and purchase token values.
  • Call RegisterDevice again when the push token changes.
  • Check Console campaign delivery diagnostics after production sends.