What does configurationError (code 23) mean in the purchases SDK?

The purchases SDK raises configurationError (code 23) when its setup does not match the store or the server.

Quick facts#

Error ErrorCode.configurationError (iOS), PurchasesErrorCode.ConfigurationError (Android), code 23
Where Purchases SDK (iOS, Android and the hybrid SDKs built on them)
What the vendor says There is an issue with your configuration. Check the underlying error for more details.

Cause#

  • iOS: none of the products in your offerings could be fetched from App Store Connect, or from the StoreKit configuration file when one is in use.
  • An offering exists but has no products for this app's store, or the API key belongs to a store with no products registered.
  • The backend answered 7000 (invalid platform), 7255 (could not create alias) or 8077; Android also maps 7230 (invalid package name) here.

Fix#

  1. Compare product IDs: the ID in the offering must equal the store's product ID exactly, and each product must be approved and ready to sell.
  2. Use the iOS app's key in the iOS build and the Android app's key in the Android build.
  3. Mark an offering as current and add this app's products to its packages.
  4. Read the SDK's message with debug logs; it says which case applies.

Example#

Swift
// The purchases SDK throws `ErrorCode` values; match the one you handle and let the rest fall through.
func handle(_ error: Error) {
    guard let code = error as? ErrorCode else {
        print("Not a purchases SDK error: \(error)")
        return
    }
    switch code {
    case .configurationError:
        // A setup problem: do not retry. Alert yourself and show a neutral message.
        print("The SDK configuration does not match the store")
    default:
        print("Other purchases error: \(code.description)")
    }
}

Compile-checked: npm run check:snippets type-checks this snippet with swiftc together with the ErrorCode.swift file of the RevenueDot purchases-ios fork (checked 2026-10-03).

How the RevenueDot SDK reports it#

Deep dive: revenuedot.app/errors/configuration-error. See common problems.

Source#

Checked: 2026-10-03

Edit this page on GitHub ↗ View as Markdown Last updated