> ## 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.

# Transações Pré-processadas: Dados Solana Pré-Execução Sem Desmontagem

> Transmita transações Solana pré-execução antes de atingirem o compromisso processado. Helius trata a decodificação dos fragmentos — você recebe transações assinadas via WebSocket.

## Visão Geral

Transações pré-processadas são transações Solana pré-execução entregues **antes de atingirem o nível de compromisso `processed`**. Helius agrega múltiplas fontes de pré-execução — principalmente fragmentos decodificados diretamente conforme chegam ao validador, complementados por sinais de transação agendada ([pré-confirmação](/docs/pt-BR/pre-confirmations/overview)) — e os entrega como um fluxo único deduplicado, sem pacotes de fragmentos brutos para receber ou infraestrutura de desmontagem para operar no seu lado.

Transações originadas de sinais de pré-confirmação chegam mais tarde neste feed do que no produto dedicado [Pré-confirmações](/docs/pt-BR/pre-confirmations/overview), que continua sendo o acesso mais cedo a elas.

A principal maneira de consumir transações pré-processadas é o [método `preprocessedSubscribe` WebSocket](/docs/pt-BR/preprocessed-transactions/preprocessed-subscribe) (Beta Pública) — disponível em **todos os planos pagos** a **0,1 créditos por mensagem**. A entrega anterior via [gRPC](/docs/pt-BR/preprocessed-transactions/grpc) será descontinuada em favor deste método.

<CardGroup cols={2}>
  <Card title="preprocessedSubscribe (WSS)" icon="tower-broadcast" href="/docs/pt-BR/preprocessed-transactions/preprocessed-subscribe">
    A maneira recomendada de transmitir transações pré-processadas: filtragem de conta, cargas compactas binárias, todos os planos pagos.
  </Card>

  <Card title="gRPC (legado)" icon="binary" href="/docs/pt-BR/preprocessed-transactions/grpc">
    A entrega anterior baseada em LaserStream. Será descontinuada — novas integrações devem usar o método WebSocket.
  </Card>
</CardGroup>

## Onde as transações pré-processadas se encontram no ciclo de vida

Na arquitetura Solana, as transações passam por várias etapas antes de serem totalmente processadas:

1. **Recepção de Fragmentos** → O validador recebe fragmentos de transações (fragmentos de dados). ← **[Fragmentos brutos (UDP)](/docs/pt-BR/shred-delivery/raw-shreds)** são entregues aqui.
2. **Decodificação de Fragmentos** → Fragmentos são decodificados em transações brutas. ← **As transações pré-processadas são entregues principalmente aqui.**
3. **Execução de Transações** → A transação é executada pelo runtime.
4. **Geração de Metadados** → Saldos pré/pós, logs e informações de erro são computados.
5. **Compromisso** → A transação atinge o estado processado/confirmado/finalizado. ← **[LaserStream gRPC](/docs/pt-BR/laserstream)** e **[LaserStream WebSocket](/docs/pt-BR/rpc/websocket)** entregam aqui.

Assinaturas pós-execução entregam dados na etapa 5 — após execução completa e geração de metadados. Transações pré-processadas são entregues no tempo da etapa 2 — após a decodificação de fragmentos, antes da conclusão da execução. Para um sinal ainda mais precoce, [Pré-confirmaciones](/docs/pt-BR/pre-confirmations/overview) transmitem transações agendadas antes de se tornarem fragmentos.

**A troca:** você recebe dados de transação mais cedo, mas sem metadados de execução como alterações de saldo, logs ou informações de erro.

<Warning>
  **Este é um fluxo somente de transações.** Atualizações de estado de conta e programa
  não existem até que o runtime execute a transação. Se você precisar de atualizações
  em tempo real de conta ou programa — saldos de tokens, estado de curva de ligação, contas de programa — use **[LaserStream gRPC](/docs/pt-BR/laserstream) em compromisso `processed`**
  em vez disso.
</Warning>

## Quais dados estão disponíveis?

As transações pré-processadas incluem a transação assinada completa, mas não possuem metadados de execução:

### Dados Disponíveis

* ✅ **Assinatura da transação** - Identificador único da transação
* ✅ **Chaves de conta** - Todas as contas referenciadas pela transação
* ✅ **Instruções** - Dados completos de instrução e chamadas de programa
* ✅ **Hash do bloco recente** - Referência de expiração da transação
* ✅ **Assinaturas** - Todas as assinaturas de transação
* ✅ **Número do slot** - Em qual slot a transação foi observada

### Dados Ausentes

* ❌ **Metadados da transação** - Alterações de saldo de tokens, saldos pré/pós, status da transação
* ❌ **Erros de transação** - Não podemos determinar se a transação falhou
* ❌ **Instruções internas** - Invocações entre programas (CPIs) não são incluídas
* ❌ **Mensagens de log** - Logs de programas são gerados durante a execução
* ❌ **Unidades de computação consumidas** - Métricas de execução indisponíveis

Pense nas transações pré-processadas como receber a "proposta" sem o "resultado". Você vê o que o remetente tentou fazer, mas não o que realmente aconteceu.

## Garantias de entrega

A entrega é por melhor esforço, não garantida, e não há repetição histórica. Uma transação transmitida é um sinal pré-execução, não um nível de compromisso — ela pode falhar, ser descartada ou cair em um fork diferente. Deduplicate por assinatura e reconcilie contra um fluxo processado ou confirmado quando os resultados da execução forem importantes.

Para aplicações críticas que requerem entrega garantida e dados completos, use [LaserStream gRPC](/docs/pt-BR/laserstream) em vez disso.

## Quando usar transações pré-processadas

Aplicações sensíveis a latência que desejam transações decodificadas, pré-execução sem operar um decodificador de fragmentos:

* propAMMs
* Snipers
* Traders de cópia
* Bots de liquidação
* Arbitragem

Se cada microssegundo importa e você pode desmontar na velocidade da linha, use [fragmentos brutos (UDP)](/docs/pt-BR/shred-delivery/raw-shreds). Se você precisar do sinal mais cedo possível, use [Pré-confirmaciones](/docs/pt-BR/pre-confirmations/overview).

## Preços

[`preprocessedSubscribe`](/docs/pt-BR/preprocessed-transactions/preprocessed-subscribe) está disponível em **todos os planos pagos** e medido a **0,1 créditos por mensagem** — uma mensagem por transação entregue. A entrega antiga [gRPC](/docs/pt-BR/preprocessed-transactions/grpc) está disponível para assinantes do plano Professional por 2 créditos por 0,1 MB de dados transmitidos não compactados. Veja [Créditos](/docs/pt-BR/billing/credits) para detalhes.

## Perguntas Frequentes

<AccordionGroup>
  <Accordion title="Você pode atualizar filtros de assinaturas pré-processados ao vivo?">
    Não, o filtro é fixo pela `preprocessedSubscribe` inicial. Para evitar um gap, recomendamos abrir uma segunda conexão com o novo filtro, aguardar o reconhecimento da assinatura e então mudar o seu serviço para o novo filtro.
  </Accordion>

  <Accordion title="O limite de assinatura concorrente do preprocessedSubscribe é por chave de API ou conta?">
    O limite de 10 conexões concorrentes é imposto por projeto Helius. Criar uma segunda chave de API para o mesmo projeto compartilharia o mesmo limite de 10 conexões.
  </Accordion>
</AccordionGroup>

## Próximos passos

<CardGroup cols={2}>
  <Card title="Assine com preprocessedSubscribe" icon="tower-broadcast" href="/docs/pt-BR/preprocessed-transactions/preprocessed-subscribe">
    Endpoint, filtragem de conta, layout de carga binária e exemplos de código.
  </Card>

  <Card title="Pré-confirmaciones" icon="bolt" href="/docs/pt-BR/pre-confirmations/overview">
    Transações agendadas transmitidas antes de se tornarem fragmentos — o sinal de transação mais cedo.
  </Card>

  <Card title="Fragmentos brutos (UDP)" icon="network-wired" href="/docs/pt-BR/shred-delivery/raw-shreds">
    Pacotes de fragmentos não processados sobre UDP. Você implementa a desmontagem.
  </Card>

  <Card title="Helius Sender" icon="paper-plane" href="/docs/pt-BR/sending-transactions/sender">
    Aja com base no que você vê com o desembarque de transações mais rápido.
  </Card>
</CardGroup>
