> For the complete documentation index, see [llms.txt](https://docs.namiml.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.namiml.com/sdk-reference/namipaywallmanager/registerbuyskuhandler.md).

# registerBuySkuHandler

{% hint style="info" %}
**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 <support@nami.ml> for details.
{% endhint %}

{% tabs %}
{% tab title="Swift" %}

```swift
NamiPaywallManager.registerBuySkuHandler { sku in
    print("Start the purchase flow for App Store product: \(sku.storeId)")
}
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
NamiPaywallManager.registerBuySkuHandler { paywall, sku ->
    Log.d(LOG_TAG, "Start the purchase flow for Google Play/Amazon Appstore product: $skuRefId")
}
```

{% endtab %}

{% tab title="Flutter" %}

```
// Coming soon
```

{% endtab %}

{% tab title="React Native" %}

```jsx
NamiPaywallManager.registerBuySkuHandler((sku) => {
    // Start your purchase flow   
    console.log(
      'buy sku handler - start purchase flow for sku:',
      sku.skuId,
    );
}
```

{% endtab %}

{% tab title="Unity" %}

```c
NamiPaywallManager.RegisterBuySkuHandler(buySkuCallback);
```

{% endtab %}
{% endtabs %}

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 [buySkuComplete](/sdk-reference/namipaywallmanager/buyskucomplete.md) to close the paywall.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.namiml.com/sdk-reference/namipaywallmanager/registerbuyskuhandler.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
