Nami Public Documentation
SDK Reference
SDK Reference
  • NAMI
    • configure
    • NamiConfiguration
    • NamiLanguageCodes
  • NamiCampaignManager
    • launch
    • allCampaigns
    • isCampaignAvailable
    • refresh
    • registerAvailableCampaignsHandler
    • NamiCampaign
    • NamiCampaignRuleType
    • LaunchCampaignError
  • NamiCustomerManager
    • CustomerJourneyState
    • isLoggedIn
    • journeyState
    • loggedInId
    • login
    • logout
    • registerAccountStateHandler
    • registerJourneyStateHandler
    • setCustomerAttribute
    • getCustomerAttribute
    • clearCustomerAttribute
    • clearAllCustomerAttributes
  • NamiEntitlementManager
    • active
    • isEntitlementActive
    • NamiEntitlement
    • refresh
    • registerActiveEntitlementsHandler
  • NamiPaywallManager
    • dismiss
    • displayedViewController
    • registerSignInHandler
    • registerCloseHandler
    • registerBuySkuHandler
    • registerDeeplinkActionHandler
    • buySkuComplete
    • NamiPurchaseSuccess
    • NamiPaywallAction
    • NamiSKUType
  • NamiPurchaseManager
    • anySkuPurchased
    • consumePurchasedSku
    • NamiPurchase
    • NamiPurchaseState
    • NamiRestorePurchasesState
    • NamiSKU
    • presentCodeRedemptionSheet
    • registerPurchasesChangedHandler
    • registerRestorePurchasesHandler
    • restorePurchases
    • skuPurchased
  • NamiMLManager
    • coreAction
    • enterCoreContent
    • exitCoreContent
Powered by GitBook
On this page
  1. NamiPaywallManager

registerBuySkuHandler

PreviousregisterCloseHandlerNextregisterDeeplinkActionHandler

Last updated 1 year ago

For Paywalls-only plans

This method is for customers who have implemented their own in-app purchases or subscription code directly with the App Store, Google Play, etc. or who are using another third-party for subscription or purchase management.

Your Nami account needs to be on a Paywalls-only plan to use this interface. Contact for details.

NamiPaywallManager.registerBuySkuHandler { sku in
    print("Start the purchase flow for App Store product: \(sku.storeId)")
}
NamiPaywallManager.registerBuySkuHandler { paywall, sku ->
    Log.d(LOG_TAG, "Start the purchase flow for Google Play/Amazon Appstore product: $skuRefId")
}
// Coming soon
NamiPaywallManager.registerBuySkuHandler((sku) => {
    // Start your purchase flow   
    console.log(
      'buy sku handler - start purchase flow for sku:',
      sku.skuId,
    );
}
NamiPaywallManager.RegisterBuySkuHandler(buySkuCallback);

Registering with NamiPaywallManager.registerBuySkuHandler will provide a callback from a Nami paywall when the user has selected a sku and asked for the purchase flow to start.

It is you're responsible to listen to this handler's callback to start the purchase with the provided sku.

Once the purchase is successful, indicate it is complete by calling to close the paywall.

support@nami.ml
buySkuComplete