Owlio
ES
← Blog
Guía paso a pasoPrincipiante

Transacción Ethereum exitosa, pero faltan los tokens: qué revisar

Success describe la ejecución de la transacción. Por sí solo, no demuestra que los tokens previstos hayan llegado a la cuenta prevista.

Una transacción Ethereum exitosa no demuestra, por sí sola, que los tokens ERC-20 previstos hayan llegado a la cuenta prevista. Success indica si la transacción en su conjunto terminó sin revertirse. Confirma la acción ejecutada, el contrato exacto del token, el destinatario y las pruebas de transferencia antes de dar el pago por completado.

Empieza por el hash de la transacción original en Ethereum Mainnet. No envíes otro pago solo para comprobar una pantalla de cartera desactualizada. Esta guía describe una inspección de solo lectura de una transacción incluida en un bloque, no un servicio de recuperación ni instrucciones para firmar otra transacción.

Interpreta Success en el nivel correcto

EIP-658 define el estado del recibo como el resultado de la llamada de nivel superior. El estado 1 significa éxito y 0 significa fallo; JSON-RPC los representa como 0x1 y 0x0. Es información sobre la ejecución, no una lista de todos los resultados que esperabas de la aplicación.

Un contrato puede gestionar una operación interna fallida sin revertir toda la transacción. El estándar ERC-20 también exige expresamente que quien llama gestione un false devuelto. No supongas que todas las implementaciones de tokens notifican las transferencias fallidas revirtiendo la ejecución.

El estado del recibo no es el true o false devuelto por un método del token. La referencia de recibos expone el estado, el bloque y los registros de la transacción; no convierte el campo de estado en el valor devuelto por una llamada interna. Los detalles de ejecución decodificados pueden ayudar, pero un error de traza o una etiqueta de método por sí solos necesitan interpretarse en el contexto de toda la acción.

Si el recibo global muestra Failed, consulta la guía de transacciones fallidas y gas. Si aún no se ha incluido en un bloque, utiliza la guía de transacciones pendientes. Estas comprobaciones se refieren a una transacción incluida y marcada como Success.

Determina si la acción era una transferencia

Una aplicación puede pedir una aprobación antes de una transferencia, un intercambio o un depósito posterior. En ERC-20, approve establece una autorización de gasto; por sí mismo no envía el importe autorizado a quien recibe el permiso. Por tanto, su transacción exitosa puede dejar el saldo del token sin cambios.

Revisa la acción y los datos de entrada decodificados, si están disponibles. Anota el contrato de destino de la transacción y la operación que pretendías realizar. El campo To puede ser un enrutador u otro contrato, en lugar del destinatario final del token. No equipares ese campo con el destinatario registrado en una transferencia del token.

Observación Qué demuestra Qué falta comprobar
Estado del recibo Success Ejecución de nivel superior exitosa Resultado de la acción prevista
Aprobación exitosa Se ejecutó una acción de permiso Transferencia o acción de protocolo separada
Registro Transfer coincidente Ese contrato emitió un registro de transferencia Identidad, importe y estado resultante
Saldo actual del token Cantidad de la cuenta al consultarla Otra actividad y momento de observación

Conserva los hashes de los pasos separados. Una aprobación exitosa seguida de una transferencia son dos registros; una etiqueta Success no sustituye a ambos. El mensaje de finalización de una aplicación tampoco demuestra que un exchange haya abonado un depósito ni que un puente haya terminado en otra cadena. Esos servicios tienen sus propios registros y reglas.

Relaciona el registro con el token y destinatario exactos

El evento Transfer del estándar registra remitente, destinatario e importe. En los registros del recibo, revisa la dirección del contrato que emitió el registro y compara sus campos decodificados con el pago previsto. Un símbolo conocido no basta: otro contrato puede usar el mismo nombre o emitir un evento de aspecto similar.

Verifica la red y la dirección completa del contrato del token mediante una fuente en la que ya confíes. Compara la dirección completa del destinatario, no solo un prefijo y sufijo abreviados. Nuestra guía sobre dirección de cartera y contrato del token explica qué dirección identifica el activo y cuál la cuenta.

Comprueba el importe además de la presencia del evento. ERC-20 contempla transferencias de valor cero, por lo que encontrar un evento Transfer no demuestra un pago positivo. Si el registro muestra un entero sin procesar, interprétalo con la escala decimal verificada del token. No apliques el formato dos veces ni inventes una escala si los metadatos no están disponibles.

Por ejemplo, imagina un pago previsto de 25 tokens. Una aprobación exitosa de 25 tokens no es ese pago. Un registro de transferencia de cero tokens tampoco. Un registro de 25 tokens de otro contrato sigue sin demostrar que se haya recibido el activo previsto. Son comparaciones hipotéticas, no observaciones de una cartera real.

Compara el estado sin atribuir cada cambio a este hash

Consulta el saldo del destinatario para el mismo contrato del token en la misma red. El método estándar balanceOf(account) informa del saldo de tokens de la cuenta, no explica qué cambió una transacción concreta. Una galería de la cartera o el valor total del portafolio en moneda fiduciaria pueden estar desactualizados o describir otra cosa.

Anota el bloque o la hora de la consulta. El saldo más reciente puede incluir transferencias posteriores a la transacción que investigas. Incluso comparar el saldo del bloque anterior y el del bloque que la contiene puede incluir otras transacciones de ese bloque. No afirmes que una diferencia aísla este hash sin examinar la otra actividad.

Si las pruebas discrepan, conserva esa discrepancia. La mecánica particular de un token, un lector no compatible o la contabilidad interna de un protocolo pueden requerir documentación y soporte del contrato exacto. Un registro de contrato no certifica autenticidad ni seguridad. Una consulta de saldo fallida significa desconocido, no saldo cero.

Guarda un registro antes de decidir otro pago

Utiliza un explorador o lector de contratos conocido al que hayas accedido por una vía de confianza. Estas comprobaciones públicas no requieren conectar la cartera, firmar, aprobar ni proporcionar una frase de recuperación. El procedimiento se basa en documentación primaria consultada el 26 de octubre de 2026; no se probó con una transacción real para este artículo.

  1. Identifica la transacción original. Guarda Ethereum Mainnet, el hash completo, el remitente, el bloque y el estado global del recibo.
  2. Identifica la acción real. Distingue la aprobación de la transferencia, el intercambio o el depósito. Conserva todos los hashes separados del proceso.
  3. Contrasta las pruebas del token. Registra el contrato emisor, remitente de la transferencia, destinatario e importe con sus unidades. Compáralos con el activo y la cuenta previstos.
  4. Comprueba el estado resultante. Consulta el saldo del token exacto o el registro pertinente del protocolo, anotando el bloque o la hora y cualquier otra actividad que pueda afectarlo.
  5. Deja pendientes los puntos sin resolver. Conserva la falta de registros, las consultas fallidas y las diferencias sin explicación. Consulta al soporte oficial de la cartera o del protocolo con los datos públicos de la transacción antes de decidir si procede otra transacción.

La inspección termina cuando puedes explicar qué tuvo éxito y qué pruebas respaldan la recepción prevista. Si la transacción tuvo éxito pero el pago sigue sin verificarse, indícalo así. La etiqueta Success es una prueba útil; no permite ignorar el activo, el destinatario o el importe.

Preguntas frecuentes

¿El estado 1 significa que mi transferencia ERC-20 funcionó sin duda?

Significa que la ejecución de Ethereum de nivel superior tuvo éxito. Revisa la acción ejecutada, el contrato exacto del token, el destinatario, el importe y el estado resultante. Una aprobación exitosa o un fallo interno gestionado no prueban el pago que pretendías hacer.

¿Puedo leer el true o false devuelto por un token en el estado del recibo?

No. El estado del recibo es el resultado de ejecución de nivel superior, no el valor devuelto por un método ERC-20. El estándar exige que quien llama gestione false; diagnosticar una llamada concreta puede requerir detalles de ejecución decodificados o ayuda del soporte del protocolo.

¿Debo enviar el pago otra vez si mi cartera no se ha actualizado?

Primero aclara qué ocurrió con el hash original en la red correcta. Una nueva transacción puede generar otro pago. Conserva el recibo original y comprueba el activo y la cuenta exactos antes de decidir una nueva acción.