Player Order Reporting

Note: View the Player Order Reporting Webhook in the API reference page.

The Player Order Reporting Webhook is a critical part of the transaction process. It updates the balance of the player on the publisher's side each time a purchase is completed. Appcharge processes the transaction and sends a detailed update to the publisher’s server, including all financial calculations such as payment amounts and taxes. This ensures that the publisher’s system reflects the correct transaction details, helping to track transactions, manage purchases, and maintain synchronized data across platforms.

Webhook Configuration

The webhook URL will be configured in Appcharge’s management dashboard. For setup instructions, refer to the Integration Settings Guide.

Transaction Alignment

  • Appcharge provides its own unique transaction identifier (orderId) to track each individual transaction.
  • The publisher generates their own unique identifier (publisherPurchaseId) for each transaction, which is returned to Appcharge.
  • By using the orderId and publisherPurchaseId, both systems create a 1-to-1 alignment, ensuring that each transaction on both sides corresponds to the same purchase. This alignment is essential for reconciling the data between the publisher's records and Appcharge's records.
  • The publisher must provide a successful response with their transaction ID to confirm the transaction details, which ensures accurate processing and alignment across both systems.
  • Idempotency ensures that if Apccharge sends the same request multiple times (due to retries or errors), the system will not duplicate transactions. This is crucial for maintaining accurate financial records and preventing errors during the reconciliation process.

Player Interaction Flow

  • After a player completes a purchase, all relevant transaction details are reported via the webhook.
  • The player will only see the success screen after receiving a successful response from the server.
  • The success screen includes a deep link that redirects players back to the game, allowing them to view the purchase details and complete the cycle.

Retry Mechanism

In case the publisher returns an unsuccesful response, Appcharge will retry sending the webhook notification up to 6 times over a period of 1.5 minutes to ensure the request is successfully delivered.

Free Orders

Free orders, such as those related to daily bonuses, are also tracked. For these orders, all financial information is nullified (set to 0).

The webhook update sent to the publisher will include the following transaction details for free orders:

  • purchaseDateAndTimeUtc: Timestamp when the bonus was awarded (in UTC).
  • action: Type of the offer (e.g., purchase or bonus).
  • subType: Subtype of the offer (e.g., bonus, rolling offer).
  • bundleName: Name of the specific offer.
  • products: Array representing the sequence of products that were part of the offer.
  • priceInDollar: For free orders, this displays as '0' (indicating no charge).
  • playerId: Identifier for the player who received the bonus.
  • externalTransactionId: External identifier for the transaction.
  • actionStatus:
    • completed: Awarding process completed successfully.
    • failed: Awarding process failed.