{{ loadingMsg }}
{{ snackbar.text }}
¿Confirmar registro?
Los datos de {{ nombreCompleto || 'este simpatizante' }} quedarán guardados en la base de datos.
Datum
{{ loggedUser.Nombre.charAt(0) }}
{{ loggedUser.Nombre }}
{{ loggedUser.Coordinador }} · {{ loggedUser.Zona }}
Capturar INE
Simpatizantes
Promotores
Descargar app Android
Sincronizar / Actualizar {{ offlinePendingCount }}
Cerrar sesión
Datum Visión Estadística
{{ loggedUser ? loggedUser.Nombre.split(' ')[0] : '' }}
Pili Pedrero
Sin conexión — los registros se guardarán localmente y se sincronizarán al recuperar señal
{{ currentStep <= 1 ? '1' : '' }}
{{ currentStep <= 2 ? '2' : '' }}
{{ currentStep <= 3 ? '3' : '' }}
Datum Electoral

Iniciar sesión

Ingresa tus credenciales para continuar.

{{ loginError }}
{{ usersCache.length ? `${usersCache.length} usuarios cargados` : 'Sin datos de acceso' }}
Para instalar en iPhone/iPad: toca Compartir y luego "Agregar a pantalla de inicio".
Descargar app Android
Funciona 100% offline · ideal para zonas rurales
{{ loggedUser ? loggedUser.Coordinador : '' }}
{{ loggedUser ? loggedUser.Nombre : '' }}
{{ selectedZone ? selectedZone.nombre : '' }}
Paso 1 de 3

Selecciona la sección

Elige la sección donde realizarás la captura de simpatizantes.

No hay secciones registradas para tu zona.
{{ selectedZone ? selectedZone.nombre : '' }} · Sección {{ selectedSection }}
Paso 2 de 3

Captura la INE

Toma una foto clara del documento. El frente es obligatorio.

Frente *
INE frente
Reverso (opcional)
INE reverso
Asegúrate de que el texto sea legible y no haya reflejos. La foto debe mostrar toda la credencial.
{{ selectedZone ? selectedZone.nombre : '' }} · Sección {{ selectedSection }}
La validación automática no pudo extraer los datos. Por favor completa los campos manualmente.
Paso 3 de 3

Datos del simpatizante

Verifica y completa la información extraída de la INE.

Frente
Reverso
Imágenes guardadas en servidor
Datos personales
Credencial
Domicilio
Datos geográficos INE
Estado
{{ formData.estado || '—' }}
Municipio
{{ formData.municipio || '—' }}
Sección INE
{{ formData.seccionIne || '—' }}
Localidad
{{ formData.localidad || '—' }}
Emisión
{{ formData.emision || '—' }}
Vigencia
{{ formData.vigencia || '—' }}
{{ wasOfflineSave ? '¡Guardado!' : '¡Registrado!' }}
Sin conexión — se sincronizará automáticamente al recuperar señal.
Usa Menú → Sincronizar cuando tengas internet.
{{ lastRegistered }}
{{ wasOfflineSave ? 'Guardado localmente.' : 'El simpatizante ha sido registrado exitosamente.' }}
{{ selectedZone ? selectedZone.nombre : '' }} · Sección {{ selectedSection }}
{{ sessionCount }}
Capturado{{ sessionCount !== 1 ? 's' : '' }} hoy
Desarrollado por Datum · Visión Estadística
Sistema de Control Electoral
Simpatizantes
{{ loggedUser.Zona }}
{{ listError }}
Cargando simpatizantes...
{{ simp.Nombre }}
{{ simp.CURP }}
{{ simp.Telefono }} {{ simp.Nacimiento }}
Sin simpatizantes en el servidor
{{ [cap.payload.Nombre, cap.payload.ApellidoPaterno, cap.payload.ApellidoMaterno].filter(Boolean).join(' ') || 'Sin nombre' }}
Sección {{ cap.seccion }} · {{ cap.payload.ZonaNombre }}
Sync
Sin capturas locales pendientes
Promotores
{{ promotores.length > 0 ? `${promotores.length} promotores` : '' }}
{{ listError }}
Cargando promotores...
{{ prom.Nombre ? prom.Nombre.charAt(0) : '?' }}
{{ prom.Nombre }}
{{ prom.Usuario }}
{{ prom.Activo ? 'Activo' : 'Inactivo' }}
{{ prom.Telefono }} {{ prom.Zona }} Sec. {{ prom.Seccion }}
Sin promotores registrados
Nuevo Promotor
Completa los datos del nuevo promotor.
{{ addPromotorError }}
{{ sessionCount }}
Registrados hoy