Framework

StoreKit

Embed a store in your app. Process financial transactions associated with the purchase of content and services.

Overview

The Store Kit framework provides classes that allow an app to request payment from a user for additional functionality or content that your application delivers.

Symbols

Classes

SKCloudServiceController

An SKCloudServiceController object is used to determine the current capabilities of the user’s music library, such as if the device allows playback of Apple Music catalog tracks and the addition of tracks to the library.

SKDownload

A SKDownload object represents downloadable content associated with a product. When you create a product in iTunes Connect, you can associate one or more pieces of downloadable content with it. Then, at runtime, when a product is purchased by a user, your app uses SKDownload objects to download the content from the App Store.

SKMutablePayment

The SKMutablePayment class defines a request to the Apple App Store to process payment for additional functionality offered by your application. A payment encapsulates a string that identifies a particular product and the quantity of that item the user would like to purchase.

SKPayment

The SKPayment class defines a request to the Apple App Store to process payment for additional functionality offered by your application. A payment encapsulates a string that identifies a particular product and the quantity of those items the user would like to purchase.

SKPaymentQueue

The SKPaymentQueue class provides a queue of payment transactions to be processed by the App Store. The payment queue communicates with the App Store and presents a user interface so that the user can authorize payment. The contents of the queue are persistent between launches of your app.

SKPaymentTransaction

The SKPaymentTransaction class defines objects residing in the payment queue. A payment transaction is created whenever a payment is added to the payment queue. Transactions are delivered to your application when the App Store has finished processing the payment. Completed transactions provide a receipt and transaction identifier that your application can use to save a permanent record of the processed payment.

SKProduct

SKProduct objects are returned as part of an SKProductsResponse object. Each product object provides information about a product you previously registered in iTunes Connect.

SKProductsRequest

An SKProductsRequest object is used to retrieve localized information about a list of products from the Apple App Store. Your application uses this request to present localized prices and other information to the user without having to maintain that list itself.

SKProductsResponse

An SKProductsResponse object is returned by the Apple App Store in response to a request for information about a list of products.

SKReceiptRefreshRequest

The SKReceiptRefreshRequest class allows an app to refresh its receipt. With this API, the app can request a new receipt if the receipt is invalid or missing. In the sandbox environment, you can request a receipt with any combination of properties to test the state transitions related to Volume Purchase Plan receipts.

SKRequest

SKRequest is an abstract class representing a request to the Apple App Store. Subclasses of SKRequest represent different kinds of requests.

SKStoreProductViewController

A SKStoreProductViewController object presents a store that allows the user to purchase other media from the App Store. For example, your app might display the store to allow the user to purchase another app.

Protocols

SKPaymentTransactionObserver

The SKPaymentTransactionObserver protocol declares methods that are implemented by observers of an SKPaymentQueue object.

SKProductsRequestDelegate

The SKProductsRequestDelegate protocol declares methods that are implemented by the delegate of an SKProductsRequest object. The delegate receives the product information that the request was interested in.

SKRequestDelegate

The SKRequestDelegate protocol declares common methods that are implemented by delegates for any subclass of the SKRequest abstract class.

SKStoreProductViewControllerDelegate

An object implementing the SKStoreProductViewControllerDelegate protocol is called when the user dismisses the store screen. Typically, this protocol is implemented by the view controller in your application that originally displayed the store screen.

Reference

StoreKit Constants

This document describes the constants defined in the StoreKit framework and not described in a document for an individual class.

StoreKit EnumerationsStoreKit Functions

Structures

SKCloudServiceCapability

Constants that specify the current capabilities of the user’s music library on the device.

SKError

Extended Types

See Also