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

# Preconfirmations: Sinyal Transaksi Paling Awal di Solana

> Streaming transaksi Solana sebelum diubah menjadi shred — Preconfirmations Helius dengan status eksekusi, ditambah Jito BAM, dalam satu langganan WebSocket.

<Tip>
  **Gunakan [Sender Max](/docs/id/sending-transactions/sender-max) (tip minimum: 0,001 SOL) untuk
  menindaklanjuti Preconfirmations.** Prekonfirmasi hanya bermanfaat jika transaksi
  Anda masuk
  terlebih dahulu — Sender Max adalah cara tercepat untuk melakukannya. Gunakan Sender Max sejak
  awal untuk mendapatkan manfaat penuh dari Preconfirmations.
</Tip>

## Ikhtisar

Preconfirmations melakukan streaming transaksi pada titik paling awal saat transaksi dapat diamati — **sebelum** transaksi dikumpulkan menjadi entri dan diubah menjadi shred. Ini adalah sinyal transaksi dengan latensi terendah yang ditawarkan Helius — lebih awal daripada [Shred Delivery](/docs/id/shred-delivery/raw-shreds) dan streaming dengan tingkat komitmen processed.

Anda berlangganan melalui WebSocket dengan metode `preconfSubscribe` dan menerima setiap transaksi saat terjadi. Streaming ini menggabungkan dua sumber yang disertakan secara default, dan keduanya memancarkan data pada titik yang berbeda dalam pipeline:

* **Prekonfirmasi Helius** dari validator yang meneruskan data ke Helius. Dipancarkan tepat saat pemimpin **mengeksekusi** transaksi, beserta status eksekusinya — momen pertama ketika hasilnya tersedia di mana pun.
* **[Prekonfirmasi BAM](#prekonfirmasi-bam)** dari validator yang menjalankan klien Block Assembly Marketplace (BAM) milik Jito. Dipancarkan ketika validator **berkomitmen untuk mengeksekusi** transaksi, sebelum transaksi dijalankan — sehingga tidak memuat status eksekusi.

<Note>
  Preconfirmations disajikan dari endpoint [Gatekeeper](/docs/id/gatekeeper/overview) Helius,
  `wss://beta.helius-rpc.com`. Nama host `beta` merujuk pada
  peluncuran Gatekeeper, bukan tingkat kematangan Preconfirmations — endpoint ini akan menjadi
  endpoint standar saat lalu lintas dimigrasikan ke Gatekeeper.
</Note>

<CardGroup cols={2}>
  <Card title="Lowest Latency" icon="bolt">
    Transaksi dikirim sebelum shred dan streaming dengan tingkat komitmen
    processed
  </Card>

  <Card title="WebSocket Streaming" icon="tower-broadcast">
    Berlangganan sekali dengan `preconfSubscribe` dan terima prekonfirmasi Helius dan BAM
    dalam satu streaming
  </Card>

  <Card title="Credit-Based Pricing" icon="coins">
    Paket Professional atau lebih tinggi; 10 kredit per pesan (setiap transaksi yang
    di-streaming)
  </Card>

  <Card title="Built for Traders" icon="chart-line">
    Tanggapi aktivitas onchain sebelum transaksi masuk, untuk propAMM, sniper, trader
    penyalin, dan bot likuidasi
  </Card>
</CardGroup>

## Posisi Preconfirmations dalam pipeline

Sebuah transaksi melewati beberapa tahap di dalam validator sebelum masuk secara onchain. Latensi meningkat dari kiri ke kanan — semakin jauh ke kanan Anda mengamati, semakin lambat Anda mengetahui transaksi tersebut.

<Frame caption="Preconfirmations deliver transactions ahead of shreds and processed commitment streams.">
  <img src="https://mintcdn.com/helius/8YmEB-0rF0Db0-AR/images/pre-confirmations-latency.png?fit=max&auto=format&n=8YmEB-0rF0Db0-AR&q=85&s=40a2de7b866c2e5f65f1009914b64bc1" alt="Transaction latency flow inside a validator: User Tx to TPU to Scheduler to Preconf (scheduled transaction) to Shreds, with latency increasing left to right." width="1024" height="244" data-path="images/pre-confirmations-latency.png" />
</Frame>

Prekonfirmasi Helius dipancarkan dari tahap **eksekusi** — tepat saat pemimpin mengeksekusi transaksi dan statusnya diketahui, tetapi sebelum hasilnya dicatat ke dalam entri dan diubah menjadi shred. Ini adalah titik pertama dalam siklus hidup transaksi ketika hasilnya tersedia sekaligus dapat dilaporkan.

Prekonfirmasi BAM dipancarkan satu tahap lebih awal, ketika validator berkomitmen untuk mengeksekusi transaksi, tetapi sebelum transaksi dijalankan. Keduanya tiba sebelum transaksi diubah menjadi shred, sehingga latensinya benar-benar lebih rendah daripada pengiriman berbasis shred untuk transaksi yang sama.

## Prekonfirmasi BAM

[BAM (Block Assembly Marketplace)](https://bam.dev/docs/bam/bam-overview/) adalah sistem pembuatan blok milik Jito untuk Solana. Validator yang menjalankan klien kompatibel dengan BAM memancarkan prekonfirmasi tepat saat berkomitmen untuk mengeksekusi transaksi. Helius menyerap data ini dari endpoint BAM regional milik Jito dan mengirimkannya melalui langganan `preconfSubscribe` serta payload biner yang sama dengan prekonfirmasi Helius. Saat diluncurkan, BAM menambahkan cakupan dari validator yang mewakili lebih dari 34% stake jaringan.

Prekonfirmasi BAM mengikuti tata letak payload yang sama, tetapi berbeda pada beberapa bidang:

* `tx_index` selalu berupa `0`. BAM mengurutkan transaksi berdasarkan ID urutan dan posisi bundel, bukan indeks slot; keduanya tidak dapat dipetakan ke bidang Helius, dan keduanya tidak disertakan dalam streaming. Lihat [Membedakan kedua sumber](/docs/id/pre-confirmations/preconf-subscribe#membedakan-kedua-sumber).
* `regionInclude` sesuai dengan endpoint BAM regional yang memancarkan prekonfirmasi, bukan wilayah Helius yang menyerapnya.
* Sebagian kecil transaksi mencapai Helius melalui kedua sumber, sehingga tanda tangan yang sama dapat diterima dua kali. Lihat [Notifikasi duplikat](/docs/id/pre-confirmations/preconf-subscribe#notifikasi-duplikat).

Untuk hanya menerima prekonfirmasi Helius, teruskan `includeBam: false` dalam [filter langganan](/docs/id/pre-confirmations/preconf-subscribe#pemfilteran).

## Kapan menggunakan Preconfirmations

<CardGroup cols={2}>
  <Card title="Good fit" icon="circle-check">
    propAMM, sniper, trader penyalin, dan bot likuidasi — strategi apa pun yang
    perlu menanggapi transaksi sedini mungkin secara fisik.
  </Card>

  <Card title="Consider alternatives" icon="circle-info">
    Untuk data historis lengkap atau data terkonfirmasi, gunakan [LaserStream](/docs/id/laserstream) atau
    [Enhanced WebSockets](/docs/id/rpc/websocket/transaction-subscribe). Untuk data jaringan
    mentah, lihat [Shred Delivery](/docs/id/shred-delivery/raw-shreds).
  </Card>
</CardGroup>

<Warning>
  Prekonfirmasi adalah sinyal awal, bukan jaminan. Transaksi belum
  masuk secara onchain dan masih dapat dibatalkan — dan status eksekusi prekonfirmasi
  Helius mencerminkan hasil lokal pemimpin, yang belum final hingga
  blok dikonfirmasi. Konfirmasikan bahwa transaksi telah masuk melalui pemeriksaan tingkat komitmen standar
  sebelum menganggapnya final.
</Warning>

## Harga

Preconfirmations memerlukan **paket Professional atau lebih tinggi** dan dikenai biaya **10 kredit per pesan** — satu pesan untuk setiap transaksi yang di-streaming — yang ditagihkan dari paket Anda. Lihat [Kredit](/docs/id/billing/credits) untuk detailnya.

<Note>
  Preconfirmations adalah produk baru dan harganya dapat berubah.
</Note>

## Cakupan

Preconfirmations hanya tersedia untuk transaksi yang dijadwalkan oleh validator yang meneruskan streaming mereka ke Helius atau menjalankan klien kompatibel dengan BAM. Cakupan bertambah sesuai dengan bagian stake jaringan yang dicakup oleh kedua sumber tersebut, sehingga streaming ini **tidak berkelanjutan**. Menetapkan `includeBam: false` membatasi cakupan pada validator yang meneruskan data secara langsung ke Helius.

<Warning>
  Bersiaplah menghadapi celah. Selama slot yang pemimpinnya tidak dicakup oleh kedua sumber,
  Anda tidak akan menerima pesan prekonfirmasi untuk slot tersebut. Rancang integrasi Anda agar
  dapat menangani celah ini — jangan mengasumsikan streaming tanpa putus, dan gunakan sinyal lain
  seperti [LaserStream](/docs/id/laserstream) atau [Shred
  Delivery](/docs/id/shred-delivery/raw-shreds) sebagai cadangan saat Anda memerlukan cakupan berkelanjutan.
</Warning>

Cakupan bertambah seiring makin banyak validator meneruskan data ke Helius. Jika Anda mengoperasikan validator, Anda dapat [membantu menutup celah ini dan memperoleh pendapatan](/docs/id/pre-confirmations/for-validators).

## Untuk validator

Mengoperasikan validator? Anda dapat memperoleh pendapatan dengan meneruskan streaming prekonfirmasi Anda ke Helius — sekaligus meningkatkan cakupan bagi semua pengguna Preconfirmations.

<Card title="Validators: earn by sending Preconfirmations" icon="server" href="/docs/id/pre-confirmations/for-validators">
  Pelajari cara mulai meneruskan prekonfirmasi dan memperoleh pendapatan.
</Card>

## Langkah berikutnya

<CardGroup cols={2}>
  <Card title="preconfSubscribe reference" icon="code" href="/docs/id/pre-confirmations/preconf-subscribe">
    Pelajari cara berlangganan, format pesan, dan contoh WebSocket lengkap.
  </Card>

  <Card title="Helius Sender" icon="rocket" href="/docs/id/sending-transactions/sender">
    Pasangkan Preconfirmations dengan Sender untuk menindaklanjuti apa yang Anda lihat dengan
    proses masuk tercepat.
  </Card>
</CardGroup>
