<!--
{
  "documentType" : "article",
  "framework" : "AppStoreServerNotifications",
  "identifier" : "/documentation/AppStoreServerNotifications/app-store-server-notifications-changelog",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "App Store Server Notifications changelog"
}
-->

# App Store Server Notifications changelog

Learn about changes to the App Store Server Notifications service.

## Discussion

App Store Server Notifications has two versions of notifications. Version 1 notifications and the [`App Store Server Notifications V1`](/documentation/AppStoreServerNotifications/App-Store-Server-Notifications-V1) endpoint are deprecated. Instead, implement the [`App Store Server Notifications V2`](/documentation/AppStoreServerNotifications/App-Store-Server-Notifications-V2) endpoint on your server to receive version 2 notifications.

To set up your server to receive notifications, see [Enabling App Store Server Notifications](/documentation/AppStoreServerNotifications/enabling-app-store-server-notifications). Use this changelog to learn about feature updates, version information, deprecations, and removals for App Store Server Notifications.

### April 27, 2026

**New features**

- Added the following fields to support monthly subscriptions with a 12-month commitment: [`TransactionCommitmentInfo`](/documentation/AppStoreServerNotifications/TransactionCommitmentInfo) and [`billingPlanType`](/documentation/AppStoreServerNotifications/billingPlanType) in [`JWSTransactionDecodedPayload`](/documentation/AppStoreServerNotifications/JWSTransactionDecodedPayload); [`RenewalCommitmentInfo`](/documentation/AppStoreServerNotifications/RenewalCommitmentInfo) and [`renewalBillingPlanType`](/documentation/AppStoreServerNotifications/renewalBillingPlanType) in [`JWSRenewalInfoDecodedPayload`](/documentation/AppStoreServerNotifications/JWSRenewalInfoDecodedPayload).

### December 10, 2025

**New features**

- Added the [`revocationType`](/documentation/AppStoreServerNotifications/revocationType) and [`revocationPercentage`](/documentation/AppStoreServerNotifications/revocationPercentage) fields to the [`JWSTransactionDecodedPayload`](/documentation/AppStoreServerNotifications/JWSTransactionDecodedPayload).
- Added the [`advancedCommercePriceIncreaseInfo`](/documentation/AppStoreServerNotifications/advancedCommercePriceIncreaseInfo) object, and [`advancedCommercePriceIncreaseInfoDependentSKU`](/documentation/AppStoreServerNotifications/advancedCommercePriceIncreaseInfoDependentSKU), [`advancedCommercePriceIncreaseInfoStatus`](/documentation/AppStoreServerNotifications/advancedCommercePriceIncreaseInfoStatus), [`advancedCommercePriceIncreaseInfoPrice`](/documentation/AppStoreServerNotifications/advancedCommercePriceIncreaseInfoPrice), fields to the [`JWSRenewalInfoDecodedPayload`](/documentation/AppStoreServerNotifications/JWSRenewalInfoDecodedPayload).

### November 4, 2025

**New features**

- Updated the [`responseBodyV2DecodedPayload`](/documentation/AppStoreServerNotifications/responseBodyV2DecodedPayload) to include the new payload object, [`appData`](/documentation/AppStoreServerNotifications/appData).
- Added the notification type `RESCIND_CONSENT` to [`notificationType`](/documentation/AppStoreServerNotifications/notificationType).

### October 29, 2025

**New features**

- Added the `ONE_TIME` value to [`offerDiscountType`](/documentation/AppStoreServerNotifications/offerDiscountType) to indicate In-App Purchase offer codes.

### June 26, 2025

**New features**

- Added the `ACTIVE_TOKEN_REMINDER` and `CREATED` values to [`subtype`](/documentation/AppStoreServerNotifications/subtype), which can appear in notifications with an `EXTERNAL_PURCHASE_TOKEN` [`notificationType`](/documentation/AppStoreServerNotifications/notificationType).
- Updated [`externalPurchaseToken`](/documentation/AppStoreServerNotifications/externalPurchaseToken) to include the new fields [`tokenType`](/documentation/AppStoreServerNotifications/tokenType) and [`tokenExpirationDate`](/documentation/AppStoreServerNotifications/tokenExpirationDate).

### May 27, 2025

**New features**

- The `ONE_TIME_CHARGE` [`notificationType`](/documentation/AppStoreServerNotifications/notificationType) is now available in the production environment.

### March 24, 2025

**New features**

- Added the notification types `METADATA_UPDATE` and `MIGRATE` to [`notificationType`](/documentation/AppStoreServerNotifications/notificationType).
- Added the [`previousOriginalTransactionId`](/documentation/AppStoreServerNotifications/previousOriginalTransactionId) field to the [`JWSTransactionDecodedPayload`](/documentation/AppStoreServerNotifications/JWSTransactionDecodedPayload).

### February 21, 2025

**New features**

- Updated the [`JWSRenewalInfoDecodedPayload`](/documentation/AppStoreServerNotifications/JWSRenewalInfoDecodedPayload) and [`JWSTransactionDecodedPayload`](/documentation/AppStoreServerNotifications/JWSTransactionDecodedPayload) to include the new [`appTransactionId`](/documentation/AppStoreServerNotifications/appTransactionId) and [`offerPeriod`](/documentation/AppStoreServerNotifications/offerPeriod) fields.
- Updated the [`JWSRenewalInfoDecodedPayload`](/documentation/AppStoreServerNotifications/JWSRenewalInfoDecodedPayload) to include the [`appAccountToken`](/documentation/AppStoreServerNotifications/appAccountToken) field.

### January 17, 2025

**New features**

- Added support for the <doc://com.apple.documentation/documentation/AdvancedCommerceAPI>.

### July 8, 2024

**New features**

- Updated the [`JWSRenewalInfoDecodedPayload`](/documentation/AppStoreServerNotifications/JWSRenewalInfoDecodedPayload) to include the new field [`eligibleWinBackOfferIds`](/documentation/AppStoreServerNotifications/eligibleWinBackOfferIds).
- Added the win-back offer type to [`offerType`](/documentation/AppStoreServerNotifications/offerType).

### June 10, 2024

**New features**

- Added the notification type `ONE_TIME_CHARGE` to [`notificationType`](/documentation/AppStoreServerNotifications/notificationType). This notification type is currently available only in the sandbox environment.
- Added the fields <doc://com.apple.documentation/documentation/AppStoreServerAPI/renewalPrice>, [`currency`](/documentation/AppStoreServerNotifications/currency), and [`offerDiscountType`](/documentation/AppStoreServerNotifications/offerDiscountType) to the [`JWSRenewalInfoDecodedPayload`](/documentation/AppStoreServerNotifications/JWSRenewalInfoDecodedPayload).

### April 11, 2024

**New features**

- Added the [`consumptionRequestReason`](/documentation/AppStoreServerNotifications/consumptionRequestReason) to the [`data`](/documentation/AppStoreServerNotifications/data) object.
- The `CONSUMPTION_REQUEST` [`notificationType`](/documentation/AppStoreServerNotifications/notificationType) added notifications for refund requests for auto-renewable subscriptions.

### March 12, 2024

**New features**

- The type of the [`price`](/documentation/AppStoreServerNotifications/price) field changed from `int32` to `int64`.

### February 29, 2024

**New features**

- Added a new [`notificationType`](/documentation/AppStoreServerNotifications/notificationType):  `EXTERNAL_PURCHASE_TOKEN` and a [`subtype`](/documentation/AppStoreServerNotifications/subtype): `UNREPORTED`.
- Updated the [`responseBodyV2DecodedPayload`](/documentation/AppStoreServerNotifications/responseBodyV2DecodedPayload) to include the new payload object, [`externalPurchaseToken`](/documentation/AppStoreServerNotifications/externalPurchaseToken).
- Added the types [`externalPurchaseId`](/documentation/AppStoreServerNotifications/externalPurchaseId) and [`tokenCreationDate`](/documentation/AppStoreServerNotifications/tokenCreationDate).

### January 23, 2024

**New features**

- Changed the notification type the App Store server sends when a customer redeems a subscription offer for an inactive subscription to the `SUBSCRIBED` [`notificationType`](/documentation/AppStoreServerNotifications/notificationType). The App Store server only sends the `OFFER_REDEEMED` notification type when customers redeem an offer on an active subscription.

### October 26, 2023

**New features**

- Added new properties in the [`JWSTransactionDecodedPayload`](/documentation/AppStoreServerNotifications/JWSTransactionDecodedPayload) object: [`price`](/documentation/AppStoreServerNotifications/price), [`currency`](/documentation/AppStoreServerNotifications/currency), and [`offerDiscountType`](/documentation/AppStoreServerNotifications/offerDiscountType).

### June 5, 2023

**New features**

- Added a new version 2 [`notificationType`](/documentation/AppStoreServerNotifications/notificationType), `REFUND_REVERSED`.
- Added the following new fields in the transaction decoded payload, [`JWSTransactionDecodedPayload`](/documentation/AppStoreServerNotifications/JWSTransactionDecodedPayload): [`storefront`](/documentation/AppStoreServerNotifications/storefront), [`storefrontId`](/documentation/AppStoreServerNotifications/storefrontId), and [`transactionReason`](/documentation/AppStoreServerNotifications/transactionReason).
- Added the `renewalDate` field in the renewal info decoded payload, [`JWSRenewalInfoDecodedPayload`](/documentation/AppStoreServerNotifications/JWSRenewalInfoDecodedPayload).
- Added a subscription [`status`](/documentation/AppStoreServerNotifications/status) field in the [`data`](/documentation/AppStoreServerNotifications/data) object of the [`responseBodyV2DecodedPayload`](/documentation/AppStoreServerNotifications/responseBodyV2DecodedPayload).
- The [`responseBodyV1`](/documentation/AppStoreServerNotifications/responseBodyV1) now includes a `deprecation` field.

**Deprecations**

- The [`App Store Server Notifications V1`](/documentation/AppStoreServerNotifications/App-Store-Server-Notifications-V1) endpoint and version 1 notifications are deprecated. Implement the [`App Store Server Notifications V2`](/documentation/AppStoreServerNotifications/App-Store-Server-Notifications-V2) endpoint on your server to receive version 2 notifications instead.

### January 30, 2023

**New features**

- Added a new notification type for App Store Server Notifications 2 that consists of the [`notificationType`](/documentation/AppStoreServerNotifications/notificationType) value `RENEWAL_EXTENSION` and [`subtype`](/documentation/AppStoreServerNotifications/subtype) values of `SUMMARY` and `FAILURE`. This notification provides information when you extend the subscription renewal date for all active subscribers, based on a product identifier. For more information, see <doc://com.apple.documentation/documentation/AppStoreServerAPI/Extend-Subscription-Renewal-Dates-for-All-Active-Subscribers> in the <doc://com.apple.documentation/documentation/AppStoreServerAPI>.
- Updated the [`responseBodyV2DecodedPayload`](/documentation/AppStoreServerNotifications/responseBodyV2DecodedPayload) to include the new [`summary`](/documentation/AppStoreServerNotifications/summary) object, which appears in the payload for a `RENEWAL_EXTENSION` notification with a `SUMMARY` [`subtype`](/documentation/AppStoreServerNotifications/subtype).

### November 7, 2022

**New features**

- Added the `PRODUCT_NOT_FOR_SALE` [`subtype`](/documentation/AppStoreServerNotifications/subtype) for the `EXPIRED` [`notificationType`](/documentation/AppStoreServerNotifications/notificationType).

### June 6, 2022

**New features**

- App Store Server Notifications 2 supports sending a `TEST` notification. For more information, see [`notificationType`](/documentation/AppStoreServerNotifications/notificationType), and the endpoints <doc://com.apple.documentation/documentation/AppStoreServerAPI/Request-a-Test-Notification> and <doc://com.apple.documentation/documentation/AppStoreServerAPI/Get-Test-Notification-Status> in the <doc://com.apple.documentation/documentation/AppStoreServerAPI>.

### May 12, 2022

**New features**

- In App Store Server Notifications 2, the notification subtype `ACCEPTED` is now sent when the App Store notifies the customer of an auto-renewable subscription price increase that doesn’t require customer consent. This notification subtype is available only in version 2 notifications. For more information, see [`subtype`](/documentation/AppStoreServerNotifications/subtype).

### October 21, 2021 - version 2

**New features**

- [`App Store Server Notifications V2`](/documentation/AppStoreServerNotifications/App-Store-Server-Notifications-V2) is available, and version 1 is still supported. For information about the notifications sent in version 2, see [`notificationType`](/documentation/AppStoreServerNotifications/notificationType), `substate`, and [`responseBodyV2`](/documentation/AppStoreServerNotifications/responseBodyV2).
- For information about the notifications sent in version 1, see [`notification_type`](/documentation/AppStoreServerNotifications/notification_type) and [`responseBodyV1`](/documentation/AppStoreServerNotifications/responseBodyV1) (previously named `responseBody`).

### March 10, 2021

**Deprecations**

- In [App Store Server Notifications Version 1](/documentation/AppStoreServerNotifications/app-store-server-notifications-version-1), the following notification type and top-level objects are deprecated and removed: `RENEWAL,latest_receipt`, `latest_receipt_info`, `latest_expired_receipt`, and `latest_expired_receipt_info`. For more information, see [`responseBodyV1`](/documentation/AppStoreServerNotifications/responseBodyV1) and [`notification_type`](/documentation/AppStoreServerNotifications/notification_type).

### November 21, 2019 - version 1

**New features**

- App Store Server Notifications is available.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)