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

# Transacciones preprocesadas: datos de Solana previos a la ejecución sin reconstruir shreds

> Transmite transacciones de Solana previas a la ejecución antes de que alcancen el nivel de compromiso processed. Helius se encarga de decodificar los shreds; tú recibes transacciones firmadas mediante WebSocket.

## Descripción general

Las transacciones preprocesadas son transacciones de Solana previas a la ejecución que se entregan **antes de que alcancen el nivel de compromiso `processed`**. Helius agrega varias fuentes previas a la ejecución —principalmente shreds decodificados directamente a medida que llegan al validador, complementados con señales de [preconfirmación](/docs/es/pre-confirmations/overview)— y las entrega como un único flujo sin duplicados, sin que tengas que recibir paquetes de shreds sin procesar ni operar infraestructura para reconstruirlos.

Las transacciones procedentes de señales de preconfirmación llegan más tarde a este feed que al producto específico [Preconfirmations](/docs/es/pre-confirmations/overview), que sigue proporcionando el acceso más temprano a ellas.

Puedes consumir las transacciones preprocesadas mediante el [método WebSocket `preprocessedSubscribe`](/docs/es/preprocessed-transactions/preprocessed-subscribe) (beta pública), disponible en **todos los planes de pago** por **0.1 créditos por mensaje**.

<CardGroup cols={2}>
  <Card title="preprocessedSubscribe (WSS)" icon="tower-broadcast" href="/docs/es/preprocessed-transactions/preprocessed-subscribe">
    La forma recomendada de transmitir transacciones preprocesadas: filtrado de cuentas, cargas útiles binarias compactas y compatibilidad con todos los planes de pago.
  </Card>
</CardGroup>

## Dónde se ubican las transacciones preprocesadas en el ciclo de vida

En la arquitectura de Solana, las transacciones pasan por varias etapas antes de quedar completamente procesadas:

1. **Recepción de shreds** → El validador recibe los shreds de la transacción (fragmentos de datos). ← Los **[shreds sin procesar (UDP)](/docs/es/shred-delivery/raw-shreds)** se entregan aquí.
2. **Decodificación de shreds** → Los shreds se decodifican para obtener transacciones sin procesar. ← **Las transacciones preprocesadas se entregan principalmente aquí.**
3. **Ejecución de la transacción** → El entorno de ejecución ejecuta la transacción.
4. **Generación de metadatos** → Se calculan los saldos previos y posteriores, los registros y la información de errores.
5. **Compromiso** → La transacción alcanza el estado processed/confirmed/finalized. ← **[LaserStream gRPC](/docs/es/laserstream)** y **[LaserStream WebSocket](/docs/es/rpc/websocket)** realizan la entrega aquí.

Las suscripciones posteriores a la ejecución entregan datos en la etapa 5, después de la ejecución completa y la generación de metadatos. Las transacciones preprocesadas se entregan en el momento correspondiente a la etapa 2: después de decodificar los shreds y antes de que finalice la ejecución. Para obtener una señal aún más temprana, [Preconfirmations](/docs/es/pre-confirmations/overview) transmite las transacciones antes de que se conviertan en shreds.

**La contrapartida:** recibes los datos de las transacciones antes, pero sin metadatos de ejecución como cambios de saldo, registros o información de errores.

<Warning>
  **Este flujo solo contiene transacciones.** Las actualizaciones del estado de cuentas y programas
  no existen hasta que el entorno de ejecución procesa la transacción. Si necesitas actualizaciones en tiempo real
  de cuentas o programas —saldos de tokens, estado de la curva de vinculación, cuentas de
  programas— usa **[LaserStream gRPC](/docs/es/laserstream) con el nivel de compromiso `processed`**
  en su lugar.
</Warning>

## ¿Qué datos están disponibles?

Las transacciones preprocesadas incluyen la transacción firmada completa, pero no incluyen metadatos de ejecución:

### Datos disponibles

* ✅ **Firma de la transacción** - Identificador único de la transacción
* ✅ **Claves de las cuentas** - Todas las cuentas a las que hace referencia la transacción
* ✅ **Instrucciones** - Datos completos de las instrucciones y llamadas a programas
* ✅ **Blockhash reciente** - Referencia de vencimiento de la transacción
* ✅ **Firmas** - Todas las firmas de la transacción
* ✅ **Número de slot** - Slot en el que se observó la transacción

### Datos no disponibles

* ❌ **Metadatos de la transacción** - Cambios en los saldos de tokens, saldos previos y posteriores, estado de la transacción
* ❌ **Errores de la transacción** - No podemos determinar si la transacción falló
* ❌ **Instrucciones internas** - No se incluyen las invocaciones entre programas (CPI)
* ❌ **Mensajes de registro** - Los registros de los programas se generan durante la ejecución
* ❌ **Unidades de cómputo consumidas** - Las métricas de ejecución no están disponibles

Piensa en las transacciones preprocesadas como si recibieras la «propuesta» sin el «resultado». Ves lo que el remitente intentó hacer, pero no lo que realmente ocurrió.

## Garantías de entrega

La entrega se realiza con el mejor esfuerzo, no está garantizada y no existe reproducción histórica. Una transacción transmitida es una señal previa a la ejecución, no un nivel de compromiso: puede fallar, descartarse o incluirse en una bifurcación diferente. Elimina los duplicados mediante la firma y compáralos con un flujo processed o confirmed cuando los resultados de la ejecución sean importantes.

Para aplicaciones críticas que requieran entrega garantizada y datos completos, usa [LaserStream gRPC](/docs/es/laserstream) en su lugar.

## Cuándo usar transacciones preprocesadas

Aplicaciones sensibles a la latencia que necesitan transacciones decodificadas y previas a la ejecución sin operar un decodificador de shreds:

* propAMMs
* Bots francotiradores
* Operadores de copy trading
* Bots de liquidación
* Arbitraje

Si cada microsegundo importa y puedes reconstruir shreds a la velocidad de línea, usa [shreds sin procesar (UDP)](/docs/es/shred-delivery/raw-shreds). Si necesitas la señal más temprana posible, usa [Preconfirmations](/docs/es/pre-confirmations/overview).

## Precios

[`preprocessedSubscribe`](/docs/es/preprocessed-transactions/preprocessed-subscribe) está disponible en **todos los planes de pago** y tiene un costo de **0.1 créditos por mensaje**: un mensaje por cada transacción entregada. Consulta [Créditos](/docs/es/billing/credits) para obtener más información.

## Preguntas frecuentes

<AccordionGroup>
  <Accordion title="Can you update preprocessed subscription filters live?">
    No, el filtro queda fijado por el `preprocessedSubscribe` inicial. Para evitar una interrupción, te recomendamos abrir una segunda conexión con el filtro nuevo, esperar la confirmación de su suscripción y luego cambiar tu servicio al filtro nuevo.
  </Accordion>

  <Accordion title="Is the preprocessedSubscribe concurrent subscription limit per API key or account?">
    El límite de 10 conexiones simultáneas se aplica por clave de API. Cada clave de API de un proyecto tiene su propio límite de 10 conexiones.
  </Accordion>
</AccordionGroup>

## Próximos pasos

<CardGroup cols={2}>
  <Card title="Subscribe with preprocessedSubscribe" icon="tower-broadcast" href="/docs/es/preprocessed-transactions/preprocessed-subscribe">
    Endpoint, filtrado de cuentas, estructura de la carga útil binaria y ejemplos de código.
  </Card>

  <Card title="Preconfirmations" icon="bolt" href="/docs/es/pre-confirmations/overview">
    Transacciones transmitidas antes de que se conviertan en shreds: la señal de transacción más temprana.
  </Card>

  <Card title="Raw Shreds (UDP)" icon="network-wired" href="/docs/es/shred-delivery/raw-shreds">
    Paquetes de shreds sin procesar mediante UDP. Tú implementas su reconstrucción.
  </Card>

  <Card title="Helius Sender" icon="paper-plane" href="/docs/es/sending-transactions/sender">
    Actúa según lo que ves con la inclusión de transacciones más rápida.
  </Card>
</CardGroup>
