Classes

The following classes are available globally.

  • The EntitlementInfo object gives you access to all of the information about the status of a user entitlement.

    See more

    Declaration

    Objective-C

    
    @interface RCEntitlementInfo : NSObject
  • This class contains all the entitlements associated to the user.

    See more

    Declaration

    Objective-C

    
    @interface RCEntitlementInfos : NSObject
  • Class that holds the introductory price status

    See more

    Declaration

    Objective-C

    @interface RCIntroEligibility : NSObject
  • An offering is a collection of Packages (RCPackage) available for the user to purchase. For more info see https://docs.revenuecat.com/docs/entitlements

    See more

    Declaration

    Objective-C

    
    @interface RCOffering : NSObject
  • This class contains all the offerings configured in RevenueCat dashboard. For more info see https://docs.revenuecat.com/docs/entitlements

    See more

    Declaration

    Objective-C

    
    @interface RCOfferings : NSObject
  • Contains information about the product available for the user to purchase. For more info see https://docs.revenuecat.com/docs/entitlements

    See more

    Declaration

    Objective-C

    
    @interface RCPackage : NSObject
  • A container for the most recent purchaser info returned from RCPurchases. These objects are non-mutable and do not update automatically.

    See more

    Declaration

    Objective-C

    
    @interface RCPurchaserInfo : NSObject
  • RCPurchases is the entry point for Purchases.framework. It should be instantiated as soon as your app has a unique user id for your user. This can be when a user logs in if you have accounts or on launch if you can generate a random user identifier.

    Warning

    Only one instance of RCPurchases should be instantiated at a time! Use a configure method to let the framework handle the singleton instance for you.
    See more

    Declaration

    Objective-C

    
    @interface RCPurchases : NSObject
  • Utility class used to construct [NSError] instances.

    See more

    Declaration

    Objective-C

    
    @interface RCPurchasesErrorUtils : NSObject
  • Undocumented

    Declaration

    Objective-C

    @interface RCPurchasesErrors
    
    /**
     `NSErrorDomain` for errors occurring within the scope of the Purchases SDK.
     */
    extern NSErrorDomain const RCPurchasesErrorDomain NS_SWIFT_NAME(Purchases.ErrorDomain);
    
    /**
     `NSErrorDomain` for errors occurring within the scope of the RevenueCat Backend.
     */
    extern NSErrorDomain const RCBackendErrorDomain NS_SWIFT_NAME(Purchases.RevenueCatBackendErrorDomain);
    
    extern NSErrorUserInfoKey const RCFinishableKey NS_SWIFT_NAME(Purchases.FinishableKey);
    
    extern NSErrorUserInfoKey const RCReadableErrorCodeKey NS_SWIFT_NAME(Purchases.ReadableErrorCodeKey);
    
    
    /**
     Error codes used by the Purchases SDK
     */
    typedef NS_ERROR_ENUM(RCPurchasesErrorDomain, RCPurchasesErrorCode) {
        RCUnknownError = 0,
        RCPurchaseCancelledError = 1,
        RCStoreProblemError = 2,
        RCPurchaseNotAllowedError = 3,
        RCPurchaseInvalidError = 4,
        RCProductNotAvailableForPurchaseError = 5,
        RCProductAlreadyPurchasedError = 6,
        RCReceiptAlreadyInUseError = 7,
        RCInvalidReceiptError = 8,
        RCMissingReceiptFileError = 9,
        RCNetworkError = 10,
        RCInvalidCredentialsError = 11,
        RCUnexpectedBackendResponseError = 12,
        RCReceiptInUseByOtherSubscriberError __attribute((deprecated("Use RCReceiptAlreadyInUseError."))) = 13,
        RCInvalidAppUserIdError = 14,
        RCOperationAlreadyInProgressError = 15,
        RCUnknownBackendError = 16,
        RCInvalidAppleSubscriptionKeyError = 17,
        RCIneligibleError = 18,
        RCInsufficientPermissionsError = 19,
        RCPaymentPendingError = 20,
        RCInvalidSubscriberAttributesError = 21,
        RCLogOutAnonymousUserError = 22,
        RCConfigurationError = 23,
    } NS_SWIFT_NAME(Purchases.ErrorCode);
    
    /**
     Error codes sent by the RevenueCat backend. This only includes the errors that matter to the SDK
     */
    typedef NS_ENUM(NSInteger, RCBackendErrorCode) {
        RCBackendInvalidPlatform = 7000,
        RCBackendStoreProblem = 7101,
        RCBackendCannotTransferPurchase = 7102,
        RCBackendInvalidReceiptToken = 7103,
        RCBackendInvalidAppStoreSharedSecret = 7104,
        RCBackendInvalidPaymentModeOrIntroPriceNotProvided = 7105,
        RCBackendProductIdForGoogleReceiptNotProvided = 7106,
        RCBackendInvalidPlayStoreCredentials = 7107,
        RCBackendInternalServerError = 7110,
        RCBackendEmptyAppUserId = 7220,
        RCBackendInvalidAuthToken = 7224,
        RCBackendInvalidAPIKey = 7225,
        RCBackendBadRequest = 7226,
        RCBackendPlayStoreQuotaExceeded = 7229,
        RCBackendPlayStoreInvalidPackageName = 7230,
        RCBackendPlayStoreGenericError = 7231,
        RCBackendUserIneligibleForPromoOffer = 7232,
        RCBackendInvalidAppleSubscriptionKey = 7234,
        RCBackendInvalidSubscriberAttributes = 7263,
        RCBackendInvalidSubscriberAttributesBody = 7264
    } NS_SWIFT_NAME(Purchases.RevenueCatBackendErrorCode);
    
    @end
  • Undocumented

    See more

    Declaration

    Objective-C

    @interface RCTransaction : NSObject
    
    @property (nonatomic, readonly, copy) NSString *revenueCatId;
    @property (nonatomic, readonly, copy) NSString *productId;
    @property (nonatomic, readonly, copy) NSDate *purchaseDate;
    
    - (instancetype)initWithTransactionId:(NSString *)transactionId
                                productId:(NSString *)productId
                             purchaseDate:(NSDate *)purchaseDate NS_DESIGNATED_INITIALIZER;
    - (instancetype)init NS_UNAVAILABLE;
    + (instancetype)new NS_UNAVAILABLE;
    
    @end