Find your StoreKit Subscription Offer key

Export the private key that signs auto-renewable subscription promotional offers from your Xcode StoreKit configuration file, or generate the production key in App Store Connect.

Your StoreKit Subscription Offer key is the EC private key (a .p8 file) used to cryptographically sign auto-renewable subscription promotional offers. For local testing, Voidhash expects the key Xcode embeds in your .storekit configuration file — not the production In-App Purchase key from App Store Connect. Use the production key only when signing live offers.

Open your StoreKit configuration file in Xcode

In your Xcode project, open your .storekit configuration file (for example Configuration.storekit). If you don't have one, create it via File → New → File, search for StoreKit, and add a StoreKit Configuration File with an auto-renewable subscription and at least one promotional offer.

Open the Subscription Offers Key panel

With the .storekit file focused, choose Editor → Subscription Offers Key from the macOS menu bar. Xcode generates one key pair per configuration file and reveals it here.

Verify the menu label

This menu path is the long-standing Xcode behavior but isn't in Apple's current first-party docs, and StoreKit UI labels have changed between versions — confirm the exact wording in your installed Xcode.

Copy the Key ID and the private key

The panel shows a Key ID (a short hex string, e.g. BD3A7A04) and the EC private key. Paste the Key ID into the Voidhash Key ID field and the private key text into the Voidhash StoreKit Subscription Offer key field. A mismatched Key ID fails signature validation.

Need a .p8 file?

Xcode shows the test key as text rather than downloading a file. If Voidhash requires a file, paste the key into one named SubscriptionKey_<KEYID>.p8 (e.g. SubscriptionKey_BD3A7A04.p8).

Production alternative: generate the App Store Connect key

For live offer signing, go to App Store Connect, open Users and Access, click the Integrations tab, then under the Keys sidebar heading click In-App Purchase. Click Generate In-App Purchase Key, enter a name, and click Generate. This requires the Account Holder or Admin role.

You can only download it once

Download the .p8 immediately — App Store Connect lets you download the In-App Purchase key only once, then deletes it from Apple's servers. The Key ID appears in the Key ID column.

Paste into Voidhash

Enter the private key value into the Voidhash StoreKit Subscription Offer key field — the Xcode test key for sandbox and local testing, or the App Store Connect In-App Purchase key for production — along with its matching Key ID.