---
title: "Web paywall'ları uygulama"
description: "Adapty SDK ile React Native uygulamanızda web paywall'larını nasıl uygulayacağınızı öğrenin."
---

> **AI agents**: to search Adapty docs faster and with fewer tokens, install the Adapty skill. Claude Code (self-updating via plugin): `claude plugin marketplace add adaptyteam/adapty-skills && claude plugin install adapty-skills@adapty` — other tools: `npx skills add adaptyteam/adapty-skills --all`

:::important
Başlamadan önce [kontrol panelinde web paywall'ınızı yapılandırdığınızdan](web-paywall) ve Adapty SDK 3.6.1 veya daha yeni bir sürümünü kurduğunuzdan emin olun.
:::

## Web paywall'ları açma \{#open-web-paywalls\}

Kendiniz geliştirdiğiniz bir paywall ile çalışıyorsanız, web paywall'larını SDK metoduyla yönetmeniz gerekir. `.openWebPaywall` metodu:
1. Adapty'nin belirli bir kullanıcıya gösterilen paywall'ı yönlendirildikleri web sayfasıyla ilişkilendirebilmesi için benzersiz bir URL oluşturur.
2. Kullanıcılarınızın uygulamaya geri döndüğü anı takip eder ve ardından profil erişim haklarının güncellenip güncellenmediğini belirlemek için kısa aralıklarla `.getProfile` isteği gönderir.

Bu sayede, ödeme başarılı olmuşsa ve erişim hakları güncellenmiş ise abonelik uygulamada neredeyse anında etkinleşir.

```typescript showLineNumbers title="React Native (TSX)"

try {
    await adapty.openWebPaywall(product);
} catch (error) {
    console.warn('Failed to open web paywall:', error);
}
```

:::note
`openWebPaywall` metodunun iki versiyonu bulunmaktadır:
1. Paywall'a göre URL oluşturan ve ürün verilerini de URL'lere ekleyen `openWebPaywall(product)`.
2. Paywall'a göre URL oluşturan ancak ürün verilerini URL'lere eklemeyen `openWebPaywall(paywall)`. SDK v4'te bu, getirilen flow'un bir paywall varyasyonu olan `AdaptyFlowPaywall` alır. Örneğin `flow.paywalls[0]` şeklinde indeks kullanmadan önce `flow.paywalls` değerinin boş olmadığını kontrol edin.
:::

#### Hataları Yönetme \{#handle-errors\}

| Hata                                    | Açıklama                                                      | Önerilen işlem                                                                      |
|-----------------------------------------|---------------------------------------------------------------|-------------------------------------------------------------------------------------|
| AdaptyError.paywallWithoutPurchaseUrl   | Paywall'da yapılandırılmış bir web satın alma URL'si yok      | Paywall'ın Adapty Kontrol Paneli'nde doğru şekilde yapılandırılıp yapılandırılmadığını kontrol edin |
| AdaptyError.productWithoutPurchaseUrl   | Ürünün web satın alma URL'si yok                              | Adapty Kontrol Paneli'nde ürün yapılandırmasını doğrulayın                          |
| AdaptyError.failedOpeningWebPaywallUrl  | URL tarayıcıda açılamadı                                      | Cihaz ayarlarını kontrol edin veya alternatif bir satın alma yöntemi sunun          |
| AdaptyError.failedDecodingWebPaywallUrl | URL'deki parametreler doğru şekilde kodlanamadı               | URL parametrelerinin geçerli ve doğru biçimlendirilmiş olduğunu doğrulayın          |

## Web paywalllarını uygulama içi tarayıcıda açma \{#open-web-paywalls-in-an-in-app-browser\}

:::important
Web paywalllarını uygulama içi tarayıcıda açma özelliği Adapty SDK v3.15'ten itibaren desteklenmektedir.
:::

Web paywallları varsayılan olarak harici tarayıcıda açılır.

Kesintisiz bir kullanıcı deneyimi sunmak için web paywalllarını uygulama içi tarayıcıda açabilirsiniz. Bu sayede web satın alma sayfası uygulamanızın içinde gösterilir ve kullanıcılar uygulama değiştirmeden işlemlerini tamamlayabilir.

Bunu etkinleştirmek için `openWebPaywall` fonksiyonuna ikinci argüman olarak `WebPresentation.BrowserInApp` değerini geçin:

```typescript showLineNumbers title="React Native (TSX)"

try {
    await adapty.openWebPaywall(
        product,
        WebPresentation.BrowserInApp, // default – WebPresentation.BrowserOutApp
    );
} catch (error) {
    console.warn('Failed to open web paywall:', error);
}

```