Anatomía de una transacción
Inputs, outputs, cambio y fees. Los componentes que forman cada transacción Bitcoin.
La transacción como caja negra
Hasta ahora has usado tu wallet para enviar y recibir bitcoin. Introduces una dirección, una cantidad, y la wallet hace el resto. Funciona, pero es una caja negra.
Abrir esa caja negra te da poder: entiendes por qué las fees varían, por qué algunas transacciones tardan más, y cómo tus decisiones afectan tu privacidad.
La estructura básica
Una transacción Bitcoin tiene tres componentes principales:
Inputs: Los UTXOs que gastas. Son las "monedas" que usas para pagar.
Outputs: Los nuevos UTXOs que se crean. Típicamente dos: uno para el destinatario y otro para tu cambio.
Fee: La comisión para el minero que incluye tu transacción en un bloque. No aparece como output; es la diferencia entre inputs y outputs.
Inputs: de dónde viene el dinero
Los inputs son referencias a UTXOs anteriores que te pertenecen. Cada input dice básicamente: "Quiero gastar este UTXO específico, y aquí está la firma digital que demuestra que soy el dueño."
Una transacción puede tener múltiples inputs. Si quieres pagar 1 BTC y tu UTXO más grande es de 0.6 BTC, tu wallet puede combinar varios UTXOs: 0.6 + 0.3 + 0.15 = 1.05 BTC en inputs.
Cada input añadido aumenta el tamaño de la transacción (más datos que verificar y almacenar), lo que significa más fees. Por eso, tener pocos UTXOs grandes es más eficiente que muchos pequeños.
Outputs: a dónde va el dinero
Los outputs son los nuevos UTXOs que crea la transacción. Cada output especifica:
- Una cantidad de bitcoin
- Una dirección (técnicamente, un script de bloqueo) que determina quién puede gastar ese UTXO
En una transacción típica de pago hay dos outputs:
Output de pago: La cantidad que envías a la dirección del destinatario.
Output de cambio: La diferencia entre lo que gastaste (inputs) y lo que enviaste + fees, que vuelve a una dirección tuya.
La dirección de cambio (change address)
Aquí es donde el modelo UTXO se diferencia claramente del modelo de cuenta.
Si tu UTXO es de 0.5 BTC y quieres enviar 0.1 BTC, no puedes "gastar parcialmente" el UTXO. Gastas los 0.5 BTC completos y creas dos nuevos UTXOs:
- 0.1 BTC → dirección del destinatario
- ~0.399 BTC → dirección de cambio (tuya)
- ~0.001 BTC → fee al minero
Tu wallet genera automáticamente una nueva dirección de cambio para cada transacción. Esto es bueno para la privacidad: si siempre recibieras el cambio en la misma dirección, sería trivial vincular todas tus transacciones.
Ejemplo con números reales
Situación inicial:
- Tienes un UTXO de 50.000 sats (0.0005 BTC)
- Quieres enviar 15.000 sats a un amigo
Tu wallet construye la transacción:
Input:
- UTXO de 50.000 sats
Outputs:
- Output 1: 15.000 sats → dirección de tu amigo
- Output 2: 34.500 sats → tu dirección de cambio
Fee: 500 sats (50.000 - 15.000 - 34.500 = 500)
La suma de inputs (50.000) siempre es igual a la suma de outputs (15.000 + 34.500) más la fee (500).
La fee: el coste de la transacción
La fee no aparece como un output explícito. Es simplemente la diferencia entre inputs y outputs. El minero que incluye tu transacción en un bloque reclama esa diferencia como parte de su recompensa.
Las fees se miden en sats por byte virtual (sat/vB). Una transacción simple ocupa unos 140-200 vBytes. Una transacción compleja con muchos inputs/outputs puede ocupar 500+ vBytes.
Esto explica por qué:
- Transacciones con muchos inputs cuestan más (más datos)
- Consolidar UTXOs pequeños puede ser caro si hay congestión
- Las fees varían según la demanda de espacio en bloques
Visualizar transacciones
Puedes ver cualquier transacción en un explorador de bloques como mempool.space:
- Copia el ID de transacción (txid) de tu wallet
- Pégalo en la barra de búsqueda del explorador
- Verás los inputs a la izquierda, los outputs a la derecha, y la fee abajo
Explorar tus propias transacciones es una buena forma de entender el modelo. Verás cómo cada transacción consume UTXOs existentes y crea nuevos.
Por qué esto importa
Entender la anatomía de las transacciones te permite:
- Estimar fees con precisión antes de enviar
- Entender por qué una transacción tarda más o menos
- Tomar mejores decisiones sobre coin control (nivel avanzado)
- Detectar si algo no va bien antes de confirmar
En la siguiente página veremos dónde esperan las transacciones antes de ser incluidas en un bloque: la mempool.