<!--
{
  "documentType" : "article",
  "framework" : "AppStoreServerAPI",
  "identifier" : "/documentation/AppStoreServerAPI/simplifying-your-implementation-by-using-the-app-store-server-library",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "Simplifying your implementation by using the App Store Server Library"
}
-->

# Simplifying your implementation by using the App Store Server Library

Use Apple’s open source library to create JSON Web Tokens (JWT) to authorize your calls, verify transactions, extract transaction identifiers from receipts, and more.

## Discussion

The App Store Server Library is an open source library from Apple, available in four languages. It makes adopting the [`App Store Server API`](/documentation/AppStoreServerAPI) and working with JSON Web Signature (JWS) transactions easier. Find the App Store Server Library for each language in the following GitHub repositories:

- Swift: [App Store Server Swift Library](https://github.com/apple/app-store-server-library-swift)
- Java: [App Store Server Java Library](https://github.com/apple/app-store-server-library-java)
- Python: [App Store Server Python Library](https://github.com/apple/app-store-server-library-python)
- Node: [App Store Server Node Library](https://github.com/apple/app-store-server-library-node)

Choose the language that best supports your server and expertise.

The App Store Server Library offers the following capabilities:

- An API client that encodes [`App Store Server API`](/documentation/AppStoreServerAPI) requests, decodes the responses, and creates the JSON Web Token (JWT) you use to authenticate the calls. For more information on using JWTs, see [Generating JSON Web Tokens for API requests](/documentation/AppStoreServerAPI/generating-json-web-tokens-for-api-requests).
- Functions that verify JWS transactions, to verify that Apple signed the transaction data you get in API responses, from <doc://com.apple.documentation/documentation/AppStoreServerNotifications/App-Store-Server-Notifications-V2> and from devices using <doc://com.apple.documentation/documentation/StoreKit>. See the functions `verifyAndDecodeTransaction`, `verifyAndDecodeAppTransaction`, and `verifyAndDecodeRenewalInfo`, available in each language the library supports.
- A utility that extracts transaction identifiers from receipts. The App Store Server API endpoints take a transaction identifier in the path parameter. Use this utility as you migrate from using <doc://com.apple.documentation/documentation/AppStoreReceipts/Verify-Receipt> with <doc://com.apple.documentation/documentation/AppStoreReceipts> to using the App Store Server API for transaction information.
- A function that generates JWS signatures, which you use in your app for promotional offer signatures, Advanced Commerce API in-app requests, and introductory offer eligibility. For more information, see <doc://com.apple.documentation/documentation/StoreKit/generating-jws-to-sign-app-store-requests>.

For more information, see the WWDC23 session [Meet the App Store Server Library](https://developer.apple.com/videos/play/wwdc2023/10143/).

---

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)