AppTransactionId support in Get Transaction Info endpoint — documentation change and actual behavior?

Hello,

I have a question regarding the App Store Server API's getTransactionInfo endpoint.

Previously, the official documentation for getTransactionInfo mentioned that:

“This endpoint doesn’t support an app transaction. To get information about an app transaction, decode the signed app transaction received from the device.”

However, as of June 2025, I can no longer find this sentence in the current documentation (link). Now, the docs state that all in-app purchase transaction IDs are supported (consumable, non-consumable, auto-renewable subscriptions, etc.).

But in practice, when I call getTransactionInfo with an AppTransactionId (extracted from a signed App Transaction JWS), I receive this error: apiErrorCode: 4000048 “Invalid request. App transactions aren’t supported by this endpoint.”

  • Is this endpoint supposed to support AppTransactionId now, or is the restriction still in place (but not mentioned in the docs)?
  • Is there any official statement about when this restriction was added/removed?
  • Can you clarify if only in-app purchase transaction IDs (and not AppTransactionIds) are supported for this endpoint, or has the policy changed recently?

Any clarification or historical context would be greatly appreciated.

Additionally, I would like to know about the behavior of an App Transaction in the event of a refund.

  • If a user receives a refund for the app itself (not an in-app purchase), how can changes to the AppTransaction be detected?
  • Does the App Store Server Notification v2 provide notifications for app-level refunds, or are such events only visible by decoding the latest App Transaction JWS on the device?
  • Is there any way to receive app-level refund information server-side, or must we always rely on the device to provide the updated signed app transaction?

Any clarification on this refund flow and notification coverage would also be appreciated.

Thank you!

AppTransactionId support in Get Transaction Info endpoint — documentation change and actual behavior?
 
 
Q