Ir al contenido

Sincronización blockchain

El pipeline de sincronización blockchain obtiene, normaliza y deduplica los datos on-chain de cada wallet conectada. El progreso se transmite en tiempo real para que pueda monitorizar cada sincronización a medida que ocurre.

Cuando conecta una wallet o activa una sincronización, CryptaCount lanza dos flujos de datos en paralelo:

Transactions — Obtiene transferencias de moneda nativa (ETH en Ethereum, MATIC en Polygon, etc.) y llamadas normales a contratos. Son transacciones directas en la capa base de la cadena.

Token Transfers — Obtiene eventos de transferencia de tokens (ERC-20 y equivalentes). Son eventos emitidos por contratos capturados de los registros de transacciones, sincronizados de forma independiente respecto a las transacciones nativas.

Estado de sincronización con dos flujos paralelos

Cada flujo mantiene su propio rastreador de progreso (número del último bloque procesado) y cursor de paginación.

  1. Initialize — CryptaCount comprueba si otra wallet con la misma dirección y cadena ya está sincronizándose (evita la doble sincronización). Determina el bloque de inicio por flujo.
  2. Fetch — Solicita datos de transacciones a los proveedores blockchain en fragmentos paginados
  3. Normalize — Convierte los formatos específicos de cada cadena al modelo de transacción universal de CryptaCount
  4. Deduplicate — Comprueba cada transacción contra los registros existentes para evitar duplicados
  5. Store — Escribe las nuevas transacciones en el espacio de trabajo
  6. Classify — Ejecuta el motor de clasificación de transacciones sobre los nuevos registros
  7. Price — Obtiene el valor razonable de mercado (FMV) de cada activo en cada marca de tiempo de transacción
  8. Journal — Genera asientos contables de partida doble

A cada transacción se le asigna una clave única basada en la cadena, el bloque, el hash de transacción y el índice de evento. CryptaCount comprueba si existen registros previos antes de insertar, garantizando que no haya datos duplicados aunque una sincronización se interrumpa y se reinicie.

Tras la sincronización inicial completa, las sincronizaciones posteriores se reanudan desde el último bloque procesado. De forma crítica, el punto de reanudación se rastrea por flujo (transacciones frente a transferencias de tokens):

  • Cada flujo se reanuda de forma independiente
  • Esto evita el escenario en el que el número de bloque de un flujo que termina rápido provoca que el otro omita datos

El progreso de sincronización se transmite en tiempo real a la interfaz. La pantalla de progreso muestra:

  • Fase de sincronización actual (obtención, normalización, almacenamiento)
  • Transacciones procesadas / total estimado
  • Progreso de bloques (bloque actual / último bloque)
  • Estado por flujo (Transactions, Token Transfers)
  • Mensajes de error, si los hay

Esto permite indicadores de progreso en vivo sin necesidad de actualizar la página.

Cuando la misma dirección se usa en varias wallets del espacio de trabajo (por ejemplo, la misma dirección añadida bajo distintas etiquetas), CryptaCount comprueba duplicados y omite si otra wallet con la misma dirección ya está sincronizada o sincronizándose. Esto evita datos de transacciones duplicados a nivel de espacio de trabajo.

Los proveedores de datos blockchain imponen límites de velocidad. El pipeline de sincronización los gestiona con:

  • Retroceso automático — Cuando se alcanzan los límites de velocidad, el sistema retrocede y reintenta automáticamente
  • Preservación del progreso — Si una sincronización se interrumpe, el progreso se guarda por flujo y la siguiente sincronización se reanuda desde donde se dejó
  • Limpieza de sincronizaciones atascadas — Un proceso en segundo plano detecta y limpia periódicamente las sincronizaciones bloqueadas

Desde la vista detallada de la wallet, la pestaña Sync muestra:

Pestaña de sincronización de la wallet con detalles de progreso

  • Estado de sincronización actual por flujo (Transactions, Token Transfers)
  • Número del último bloque procesado por flujo
  • Total de transacciones obtenidas
  • Mensajes de error
  • Hora de la última sincronización correcta
  • Wallet individual: Abra el detalle de la wallet → haga clic en Sync Now
  • Rescan: Fuerza un reescaneo completo de una wallet desde el bloque 0
  • Sync request: Los usuarios pueden solicitar sincronizaciones, que los gestores del espacio de trabajo aprueban o rechazan

Errores de sincronización habituales y su resolución:

ErrorCausaResolución
Rate limit exceededDemasiadas solicitudes al proveedorEsperar y reintentar; el retroceso automático se encarga de esto
TimeoutLote de datos grande que tarda demasiadoAutomático; la siguiente sincronización se reanuda desde el último bloque por flujo
Invalid addressLa dirección de la wallet no coincide con la cadena seleccionadaVerificar el formato de la dirección y la selección de cadena
Provider unavailableProveedor de datos blockchain temporalmente inaccesibleReintento automático tras un período de espera
Double sync detectedLa misma dirección ya está sincronizándoseEsperar a que se complete la sincronización existente

Para problemas persistentes, consulte la guía de resolución de problemas Sync & Connectivity.

¿Aún necesita ayuda?

¿No encuentra lo que busca? Nuestro equipo de soporte está aquí para ayudarle.

¿Está evaluando CryptaCount para su firma? Ver precios · Reservar una demo