> ## Documentation Index
> Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 2026-10-30 — CPMM: InitializeV2 yaratıcı ücretini her havuz yaratıcısına açıyor

> CPMM, isteğe bağlı bir creator_fee_on argümanı alan izinsiz bir havuz oluşturma talimatı olan InitializeV2'yi ekler. Artık herhangi bir yaratıcı, Permission PDA olmadan yaratıcı ücretini etkinleştirebilir ve tarafını seçebilir. Initialize, InitializeWithPermission ve diğer tüm talimatlar değişmemiştir. Ekleyici: hiçbir hesap düzeni, hata kodu veya mevcut hesap listesi değişmemiştir.

> [!NOTE]
>
> **Bu sayfa yapay zekâ tarafından otomatik olarak çevrilmiştir. İngilizce sürüm esas alınır.**
>
> [İngilizce sürümü görüntüle →](https://docs.raydium.io/reference/changelog/2026-10-30-cpmm-initialize-v2.md)

> [!NOTE]
>
> Bu giriş, **2026-10-30** tarihinde planlanmış bir CPMM program yükseltmesini kapsamaktadır. Dağıtımdan önce `raydium-cp-swap` deposunun `feat/initialize-v2` dalı (head `40cbd81`) karşısında doğrulanmıştır. Yeni talimata güvenmeden önce dağıtılan programı onaylayın.

Her CPMM havuzunun, her ikisi de oluşturma sırasında sabitlenen bir `enable_creator_fee` bayrağı ve bir `creator_fee_on` tarafı vardır. Şimdiye kadar bir yaratıcı bunları yalnızca admin tarafından verilen bir `Permission` PDA'sı gerektiren `InitializeWithPermission` aracılığıyla ayarlayabiliyordu. Herkese açık `Initialize` ücreti her zaman devre dışı olarak kaydediyordu. Pratikte yalnızca LaunchLab mezuniyetleri ve diğer kapılı akışlar yaratıcı ücreti alan bir havuz oluşturabiliyordu.

Bu yayın **`InitializeV2`** ekler. Bu, fazladan bir argümana, `creator_fee_on: Option<CreatorFeeOn>`, sahip `Initialize`'dır ve herkes çağırabilir. Havuz matematiği, swap, likidite, ücret tahsili ve yaratıcı ücretinin protokol payı etkilenmez.

## Entegratörler için TL;DR

* **Yeni talimat: `InitializeV2`.** İzinsiz. Argümanlar `init_amount_0`, `init_amount_1`, `open_time` ve `creator_fee_on: Option<CreatorFeeOn>`'dur. Ayırıcı `[67, 153, 175, 39, 218, 16, 38, 32]`.
* **`Some(side)` yaratıcı ücretini o tarafta etkinleştirir; `None` kapalı bırakır.** `None`, tam olarak `Initialize`'ın kaydettiğini kaydeder.
* **`Initialize` ile aynı hesaplar, `rent` hariç.** İlk 19 hesap özdeştir ve aynı sıradadır. Bkz. [hesap listesi](https://docs.raydium.io/tr/products/cpmm/instructions.md#initializev2).
* **Yaratıcı imzalayandır.** `pool_state.pool_creator`, imzalayan `creator`'dır. `InitializeWithPermission`'dan farklı olarak, lehtar başka bir adrese ayarlanamaz.
* **Yaratıcı oranı değil, açık/kapalı durumunu ve tarafı seçer.** Havuz, ücret katmanının `AmmConfig.creator_fee_rate` oranını uygular. Bu oran varsayılan olarak `0`'dır, bu nedenle böyle bir katmandaki etkin bir havuz hiçbir şey tahakkuk ettirmez.
* **Mevcut hiçbir şey değişmedi.** `Initialize` ve `InitializeWithPermission` ayırıcılarını, hesaplarını, argümanlarını ve davranışlarını korur. Hiçbir hesap düzeni veya hata kodu değişmedi.
* **Yeni talimatı almak için IDL'nizi yenileyin.** Onu hiç çağırmayan istemciler değişiklik gerektirmez.

## Programda ne değişti

### Yeni talimat: `InitializeV2`

`InitializeV2`, `Initialize` ile aynı oluşturma kodunu çalıştırır. Şunları yapar:

* `pool_state` olarak kanonik havuz PDA'sını veya imzalanmış rastgele bir keypair'i kabul eder;
* aynı Token-2022 izin listesini ve `SupportMintAssociated` kontrollerini `remaining_accounts` aracılığıyla uygular;
* `amm_config.disable_create_pool` ayarlandığında oluşturmayı reddeder;
* `open_time` gelecekte değilse onu `block_timestamp + 1` değerine yükseltir;
* 100 LP temel birimini kilitler ve kalanını yaratıcıya basar;
* `amm_config.create_pool_fee` ücretini tahsil eder.

Tek fark, yeni `PoolState` içine ne yazdığıdır:

| `creator_fee_on` argümanı | Borsh baytları | `enable_creator_fee` | `creator_fee_on` |
| - | - | - | - |
| `None` | `00` | `false` | `0` (`BothToken`) |
| `Some(BothToken)` | `01 00` | `true` | `0` |
| `Some(OnlyToken0)` | `01 01` | `true` | `1` |
| `Some(OnlyToken1)` | `01 02` | `true` | `2` |

Geçersiz bir etiket veya varyant baytı Anchor'ın argüman deserializasyonunda başarısız olur. Yeni bir hata kodu söz konusu değildir.

| | Ayırıcı |
| - | - |
| `initialize` (değişmedi) | `[175, 175, 109, 31, 13, 152, 155, 237]` |
| `initialize_with_permission` (değişmedi) | `[63, 55, 254, 65, 49, 178, 89, 121]` |
| `initialize_v2` (yeni) | `[67, 153, 175, 39, 218, 16, 38, 32]` |

### Üç oluşturma yolunun karşılaştırması

| | `Initialize` | `InitializeV2` | `InitializeWithPermission` |
| - | - | - | - |
| Kim çağırabilir | Herkes | Herkes | `Permission` PDA sahibi |
| Yaratıcı ücreti | Her zaman kapalı | Yaratıcının seçimi | Her zaman açık |
| Taraf (`creator_fee_on`) | `BothToken` (kullanılmaz) | Yaratıcının seçimi | Çağıranın seçimi |
| Kaydedilen `pool_creator` | İmzalayan `creator` | İmzalayan `creator` | Ayrı `creator` hesabı, imzalayan değil |
| Ödeyici | `creator` | `creator` | Ayrı `payer` |
| Sondaki `rent` sysvar'ı | Evet | Hayır | Hayır |

### Dahili yeniden düzenleme

Üç işleyici artık tek bir `initialize_pool` rutinini paylaşır. Yeniden düzenleme, `Initialize` veya `InitializeWithPermission`'ın hesaplarını, argümanlarını, kontrollerini veya kaydedilen değerlerini değiştirmez. Yeni testler ayrıca aynı config üzerindeki düz bir `Initialize`'ın yaratıcı ücretini hâlâ devre dışı olarak kaydettiğini kontrol eder.

## Yaratıcıların bilmesi gerekenler

* **Önce ücret katmanını kontrol edin.** Yaratıcı ücreti oranı havuza değil `AmmConfig`'e aittir. `creator_fee_rate` değeri almak istediğiniz oran olan bir katman seçin. Oranlar [`products/cpmm/fees`](https://docs.raydium.io/tr/products/cpmm/fees) sayfasında listelenmiştir.
* **Seçim kalıcıdır.** Hiçbir talimat oluşturmadan sonra `enable_creator_fee` veya `creator_fee_on` değerini değiştirmez. Değiştirmek için yeni bir havuz oluşturmanız gerekir.
* **Trader'lar bunu işlem ücretinin üzerine öder.** Yaratıcı ücreti, swap'a eklenen ayrı bir orandır. LP, protokol veya fon paylarını azaltmaz, ancak havuzu aynı katmandaki ücreti kapalı bir havuza göre işlem yapmak için daha pahalı hâle getirir.
* **Tahsilat değişmedi.** `CollectCreatorFee` veya `CollectCreatorFeePermissionless` kullanın. [2026-09-19 yayınından](https://docs.raydium.io/tr/reference/changelog/2026-09-19-cpmm-creator-fee-protocol-share.md) gelen protokol payı uygulanır ve oluşturma sırasında bundan vazgeçemezsiniz.

## Geçiş notları

* **Havuz yaratıcıları.** Yalnızca yaratıcı ücretini açmak istiyorsanız `Initialize`'dan `InitializeV2`'ye geçin. `Some(side)` geçin ve `rent` hesabını çıkarın. `Initialize` çalışmaya devam eder.
* **SDK kullanıcıları.** `@raydium-io/raydium-sdk-v2@0.2.64-alpha` içindeki `raydium.cpmm.createPool`, `Initialize` oluşturur. Bir sürüm `InitializeV2` oluşturucusu sunana kadar talimatı yenilenmiş IDL'den kodlayın.
* **İndeksleyiciler ve yönlendiriciler.** LaunchLab yerine sıradan cüzdanlar tarafından oluşturulan, `enable_creator_fee = true` olan daha fazla havuz bekleyin. Fiyat tekliflerini yalnızca oluşturma yoluna veya katmana göre değil, her zaman her havuzun kendi `enable_creator_fee` ve `creator_fee_on` değerlerine göre verin. Havuz oluşturmayı talimatlardan izliyorsanız yeni talimatı çözümleyin. `PoolState` hesaplarından izleme değişiklik gerektirmez.
* **Arayüzler.** Aynı katmandaki iki havuz artık farklılık gösterebileceğinden, bir havuzun yaratıcı ücreti alıp almadığını ve hangi oranda aldığını gösterin.
* **LaunchLab ve diğer izinli akışlar.** Değişiklik yok. Ödeyici ile kaydedilen yaratıcının farklı olması gerektiğinde yol hâlâ `InitializeWithPermission`'dır.

## Değişmeyen şeyler

* **Her hesap düzeni**, `PoolState` ve `AmmConfig` dahil.
* **`Initialize` ve `InitializeWithPermission`**: ayırıcılar, hesaplar, argümanlar ve kaydedilen değerler.
* **`Permission`, `CreatePermissionPda` ve `ClosePermissionPda`.**
* **Swap, depozito ve çekim matematiği**, yaratıcı ücreti tahsili ve yaratıcı ücretinin protokol payı.
* **Hata kodları.** `6000`–`6015` değişmedi; hiçbir şey eklenmedi.
* **Program ID'si.**

## Güncellenen sayfalar

* `products/cpmm/instructions`: yükseltme başlığı; özet ve durum değişikliği matrisi satırları; argümanlar, kodlama ve hesap listesiyle yeni `InitializeV2` bölümü; `Initialize` son koşulu artık `InitializeV2`'ye işaret ediyor.
* `products/cpmm/fees`: "Yaratıcı ücreti" bölümü üç oluşturma yolunun tamamını listeler ve ücreti etkinleştirmenin oranını belirlemediğini belirtir.
* `products/cpmm/accounts`: `poolState` ve havuz ID'si notları; `creator_fee_on` / `enable_creator_fee` alan notları; `Permission` notu; hesap yaşam döngüsü satırı.
* `products/cpmm/overview`: "Yenilikler" açıklaması ve "Öngörülebilir ücretler" maddesi.
* `products/cpmm/code-demos`: `createPool`'un `Initialize` oluşturduğuna ve `InitializeV2`'ye nasıl ulaşılacağına dair not.
* `protocol-overview/shared-infrastructure`: yaratıcı ücretleri artık LaunchLab mezunu havuzlarla sınırlı değildir.
* `reference/token-2022-support`: CPMM havuz oluşturma yolları.

**Doğrulanmış**: `raydium-cp-swap` dalı `feat/initialize-v2` (`40cbd81`): `programs/cp-swap/src/lib.rs`, `instructions/initialize_v2.rs`, `instructions/initialize.rs`, `instructions/initialize_with_permission.rs`, `instructions/mod.rs`, `states/pool.rs` ve `tests/initialize_v2.test.ts`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.