In-App Purchase Overview

Following Apple's updated policy changes, iOS developers now have the ability to redirect users to third-party websites for complete the purchase transactions. This guide explains how to use Breeze SDK to provide a smooth purchasing process with minimal code changes.

Breeze provides a built-in iOS In-App Purchase SDK to replace Apple's StoreKit framework, offering enhanced functionality while maintaining complete compatibility with existing App Store configurations. This SDK enables merchants to process in-app purchases through an external browser flow while preserving all existing product configurations and identifiers.

Key Benefits

  • Enjoy Breeze Features: As the merchant of record, we help our merchants with fraud prevention, refunds, chargebacks, managed tax, customer support, and more.
  • Complete StoreKit Compatibility: All existing Apple StoreKit configurations map one-to-one to our SDK
  • Product ID and Entitlements Preservation: Merchants retain their existing Product IDs and user purchased entitlements without any modifications
  • Seamless Integration: Drop-in replacement requiring minimal code changes

Purchase Flow Overview

sequenceDiagram
    participant App
    participant SDK
    participant Browser

    App->>SDK: fetchProducts()
    SDK-->>App: Display Product list with existing Product IDs

    App->>SDK: initializePurchase(productId)
    SDK->>SDK: Create purchase session
    SDK-->>Browser: Redirect to external payment URL
    
    Browser-->>Browser: User complete payment
    Browser-->>SDK: handleReturnFromBrowser(transactionData)
    SDK-->>SDK: Validate receipt and transaction

    alt Validation Successful
        SDK-->>App: Purchase success callback
        App->>App: Unlock content/features
    end

1. Fetch Available Products

The SDK retrieves available products using existing Product IDs when users initiate product discovery. Product information displays with original pricing and metadata, requiring no changes to existing product catalog implementation.

2. Purchase Initialization

When users start a purchase, the SDK creates a secure payment session and redirects them to an external browser to process the payment.

3. App Return Redirection and Receipt Validation

Upon payment completion, users automatically redirect back to the application via deep linking or universal link, where the SDK captures return parameters and starts the validation process. The SDK then performs a secure receipt validation to ensure transaction authenticity and prevent fraud.

4. Purchase Completion

When a purchase is validated, a success callback is triggered that instantly unlock content or activate features on the application side. Transaction records are updated in both local and remote systems, and users receive confirmation of their successful purchase.


Customize Your Payment

Breeze allows merchant to customize the payment page and receipts. You can change colors, fonts, text, and the available payment methods. You can also personalize the payment page by adding your logo, images, and other brand elements.