Latest 0.0.2
License MIT
Platforms ios 8.0

Swift In-App Purchase Manager for iOS

Easy-to-use a singleton class that supports non-renewable in-app purchases.
It’s super cool because

1) it’s written in Swift

2) it uses blocks!


Just drag IAPManager.swift to your project.

or using CocoaPods

pod 'IAPurchaseManager'

Making a purchase

If you want to make a purchase, all you need to do is to call a method:

  IAPManager.sharedManager.purchaseProductWithId(productId) { (error) -> Void in 
    if error == nil {
      // successful purchase!
    } else {
      // something wrong.. 

You can call purchaseProductWithId without first loading products info because inside purchaseProductWithId it’ll load it if needed. So just call purchaseProductWithId whenever you want to make a purchase.

But if you need to get all products info, you can load it by calling:

  IAPManager.sharedManager.loadProductsWithIds(productIds) { (error) -> Void in }

Restore transactions

To restore transactions call:

  IAPManager.sharedManager.restoreCompletedTransactions { (error) -> Void in }


All completed transactions are saved to a file:

data.writeToFile(purchasedItemsFilePath(), options: .AtomicWrite | .DataWritingFileProtectionComplete, error: &error)

If you want to add validation, keychain support or some other features, feel free to send me pull requests!

Latest podspec

    "name": "IAPurchaseManager",
    "version": "0.0.2",
    "summary": "Swift In-App Purchase Manager for iOS",
    "homepage": "",
    "license": {
        "type": "MIT"
    "authors": {
        "Vitaliya Solomina": "[email protected]"
    "platforms": {
        "ios": "8.0"
    "source": {
        "git": "",
        "tag": "0.0.2"
    "source_files": "IAPManager.swift"

Pin It on Pinterest

Share This