KoderKoder.ai
PreciosEmpresasEducaciónPara inversores
Iniciar sesiónComenzar

Producto

PreciosEmpresasPara inversores

Recursos

ContáctanosSoporteEducaciónBlog

Legal

Política de privacidadTérminos de usoSeguridadPolítica de uso aceptableReportar abuso

Social

LinkedInTwitter
Koder.ai
Idioma

© 2026 Koder.ai. Todos los derechos reservados.

Inicio›Blog›Cómo construir una app móvil para pases digitales y tarjetas de acceso
09 may 2025·8 min

Cómo construir una app móvil para pases digitales y tarjetas de acceso

Aprende a planificar, construir y asegurar una app móvil para pases digitales y tarjetas de acceso usando QR y NFC, con flujos de emisión, pruebas y consejos de despliegue.

Cómo construir una app móvil para pases digitales y tarjetas de acceso

Aclara el caso de uso y las métricas de éxito

Antes de elegir QR vs. NFC —o Apple Wallet vs. un pase dentro de la app— aclara qué significa “pase digital” en tu proyecto. Una sola app puede emitir credenciales de acceso de empleado, IDs de miembro, entradas para eventos o pases de visitante con tiempo limitado, y cada uno tiene requisitos distintos para verificaciones de identidad, revocación y la frecuencia con que cambia la credencial.

Define el tipo de pase (y el flujo en el mundo real)

Escribe lo que sucede de punta a punta, incluyendo quién lo aprueba y qué significa “éxito” en la puerta.

Por ejemplo:

  • Credencial de acceso: ligada a una persona; necesita desbloqueo rápido; revocación inmediata al desvincularse.\n- Pase de membresía: puede priorizar inscripción y renovación fáciles sobre control de acceso estricto.\n- Entradas: escaneo de alto rendimiento, antidelito, ventana de validez corta.\n- Pase de visitante: patrocinado por un empleado; caduca automáticamente; puede estar restringido a ciertas áreas.

Identifica los usuarios principales (no solo “usuarios finales”)

Lista las personas que interactúan con el sistema y sus objetivos:

  • Empleados/clientes/visitantes: configuración simple, entrada fiable, baja fricción.
  • Admins/personal de seguridad: emitir, revocar, auditar, manejar excepciones (teléfono perdido, entrada denegada).
  • Recepción/personal de eventos: verificación rápida y resolución de problemas en periodos de alta afluencia.

Elige métricas de éxito que puedas medir

Escoge métricas que enlacen experiencia de usuario y operaciones:

  • Tasa de activación: % de usuarios invitados que añaden/habilitan el pase.\n- Tasa de éxito en la puerta: desbloqueos/escaneos que funcionan al primer intento.\n- Tiempo hasta emisión: desde solicitud/aprobación hasta que la credencial es usable.\n- Tickets de soporte: volumen, motivos principales y tiempo de resolución.

Decide desde temprano el acceso offline (y sus límites)

Si las puertas o escáneres deben funcionar sin conectividad, define cuánto tiempo el acceso offline sigue siendo válido (minutos, horas, días) y qué ocurre cuando un pase se revoca estando offline. Esta elección afecta el diseño de la credencial, la configuración del lector y tu modelo de seguridad más adelante.

Elige cómo se presentará el pase: QR, NFC y fallbacks

Tu “pase digital” vale tanto como el momento en que se escanea o se acerca. Antes de construir pantallas, decide qué aceptará el lector y qué pueden presentar los usuarios de forma fiable en condiciones reales (multitudes, mala conectividad, frío, guantes).

Opciones comunes de presentación (y para qué sirven)

Códigos QR son universales y baratos: cualquier escáner basado en cámara —o incluso la cámara de un teléfono para verificación visual— puede funcionar. Son más lentos por persona que el tap y son más fáciles de copiar si dependes de códigos estáticos.

NFC (tap) se siente como reemplazo de una tarjeta física. Es rápido y familiar, pero depende de lectores de puerta compatibles y del soporte del dispositivo. También tiene restricciones por plataforma (por ejemplo, si puedes emular una tarjeta o debes usar credenciales basadas en Wallet).

Bluetooth (manos libres) puede mejorar accesibilidad y velocidad, pero es más complejo de ajustar (alcance, interferencias) y puede generar “¿por qué no abrió?” en ocasiones.

Enlaces de un solo uso / códigos en la app (códigos rotativos, tokens firmados) son fallbacks robustos y pueden reducir el riesgo de clonación. Requieren lógica en la app y, según el diseño, pueden necesitar acceso periódico a la red.

Mapea la tecnología a tus restricciones

Ajusta cada método según: hardware lector existente, rendimiento (personas/minuto), necesidades offline, presupuesto y carga de soporte. Ejemplo: torniquetes de alta afluencia suelen demandar la velocidad de NFC; entradas temporales de eventos pueden tolerar QR.

Escoge un método principal y un fallback deliberado

Un patrón práctico es NFC principal + QR como fallback. NFC gestiona la velocidad; QR cubre teléfonos antiguos, NFC roto o sitios sin lectores NFC.

Planifica los escenarios de “mal día”

Documenta exactamente qué pasa cuando:

  • El teléfono está bloqueado: ¿se puede presentar el pase desde la pantalla de bloqueo (Wallet) o el usuario debe desbloquear la app?\n- Sin red: ¿la credencial es verificable offline (token firmado, derecho en caché) y por cuánto tiempo?\n- Batería baja / teléfono muerto: ¿ofreces un QR impreso temporal, una anulación in situ o una tarjeta física de respaldo?

Estas decisiones moldean la integración del lector, la postura de seguridad y el playbook de soporte al usuario.

Decide: Pases in-app vs. Apple Wallet y Google Wallet

Elegir dónde “vive” la credencial es una decisión temprana porque afecta la integración con lectores, la experiencia de usuario y las limitaciones de seguridad.

Opción A: Pases in-app (dentro de tu app)

Un pase in-app se renderiza y gestiona desde tu aplicación. Esto te da máximo control sobre UI, autenticación, analíticas y flujos personalizados.

Pros: branding total y pantallas personalizadas, autenticación flexible (biometría, step-up), contexto enriquecido (mapas del sitio, instrucciones) y mejor soporte para múltiples tipos de credenciales.

Contras: los usuarios deben abrir tu app (o usar un widget/acción rápida que construyas), el acceso desde la pantalla de bloqueo está limitado por el sistema operativo y el comportamiento offline es totalmente tu responsabilidad.

Opción B: Pases Apple Wallet / Google Wallet

Los pases de Wallet (por ejemplo, PKPass en iOS) son familiares y diseñados para presentación rápida.

Pros: alta confianza y descubribilidad, acceso desde pantalla de bloqueo/rápido, manejo sólido del SO para presentación y comportamiento rápido de “mostrar el código”.

Contras: restricciones más estrictas por plataforma (formatos de códigos de barras/NFC soportados, UI limitada), las actualizaciones siguen las reglas del Wallet y puede que necesites configuración específica de Apple/Google (certificados, configuración de emisor y, a veces, revisión/aprobación). La telemetría profunda también es más difícil.

Regla práctica de decisión

Usa Wallet cuando importen la velocidad, la familiaridad y la disponibilidad constante (visitantes, eventos, flujos simples por código/barcode). Usa in-app cuando necesites comprobaciones de identidad más fuertes, flujos más ricos o lógica compleja de credenciales (acceso multi-sede del personal, aprobaciones, acceso basado en roles).

Múltiples tipos de pase, plantillas y branding

Si sirves a múltiples organizaciones, planifica plantillas por organización: logos, colores, instrucciones y distintos campos de datos. Algunos equipos envían ambos: un pase en Wallet para entrada rápida más una credencial in-app para administración y soporte.

Ciclo de vida del pase que debes soportar

Independientemente del contenedor, define acciones de ciclo de vida que puedas disparar:

  • Emitir (inscripción inicial)\n- Actualizar (nombre, nivel de acceso, expiración, cambios visuales)\n- Suspender (retención temporal)\n- Revocar (eliminación permanente)\n- Reemitir (nuevo dispositivo, teléfono perdido, sospecha de compromiso)

Mantén estas operaciones consistentes entre in-app y Wallet para que los equipos de operaciones gestionen el acceso sin soluciones manuales improvisadas.

Diseña el modelo de datos y el ciclo de vida del pase

Un modelo de datos limpio hace predecible el resto del sistema: emitir un pase, validarlo en un lector, revocarlo e investigar incidentes deberían ser consultas claras, no suposiciones.

Entidades centrales a modelar

Comienza con un conjunto pequeño de objetos “primarios” y amplía solo cuando sea necesario:

  • Usuario: la persona que debe obtener acceso.\n- Organización / Sitio: quien es propietario del sistema (y dónde aplica el acceso).\n- Pase: la “tarjeta” visible para el usuario (lo que muestra la app o el wallet).\n- Credencial: el token presentado a un lector (credencial NFC, payload QR, etc.). Un pase puede tener múltiples credenciales a lo largo del tiempo.\n- Dispositivo: la instancia del teléfono que contiene o muestra la credencial.\n- Lector / Puerta: el endpoint físico (ID del lector, ID de la puerta, ubicación).\n- Política de acceso: reglas que conectan usuarios/grupos a puertas y horarios.

Esta separación ayuda cuando un usuario cambia de teléfono: el pase puede permanecer conceptualmente igual mientras credenciales rotan y dispositivos cambian.

Estados del pase y ciclo de vida

Define estados explícitos y permite solo transiciones deliberadas:

  • pending (invitado/inscribiéndose)\n- active (usable)\n- suspended (bloqueado temporalmente)\n- expired (fin por tiempo)\n- revoked (inválido permanentemente)

Transiciones ejemplo: pending → active tras verificación; active → suspended por violaciones de política; active → revoked al terminar la relación laboral; suspended → active tras restauración por admin.

Identificadores y mapeo a lectores

Planea IDs únicas a dos niveles:

  • Un pass_id estable (interno) para ciclo de vida y soporte.\n- Uno o más credential_id / token_id que los lectores pueden validar.

Decide cómo los lectores mapean tokens a reglas de acceso: búsqueda directa (token → usuario → política) o token → grupo de política (más rápido en el edge). Mantén identificadores no adivinables (aleatorios, no secuenciales).

Registros de auditoría: qué registrar y dónde

Trata los logs de auditoría como append-only y separados de las tablas de “estado actual”. Como mínimo registra:

  • emitido (quién emitió, a quién, dispositivo, hora)\n- escaneo (lector, resultado, código de razón)\n- denegado (desajuste de política, expirado, revocado, fallo offline)\n- revocar/suspender/reactivar (actor, justificación, hora)

Estos eventos son tu fuente de verdad para troubleshooting, cumplimiento y detección de abuso.

Construye el flujo de inscripción y emisión del pase

Un proyecto de pases digitales gana o pierde en la experiencia de los primeros minutos reales: cuán rápido una persona puede inscribirse, recibir una credencial y saber qué hacer después.

Rutas de inscripción (elige 1–2 principales)

La mayoría de equipos soportan una mezcla de estos pasos, según seguridad y tamaño del despliegue:

  • Enlace de invitación: un admin (o sistema de RRHH) genera un enlace con validez limitada. El usuario lo abre en su teléfono y entra directamente al flujo correcto.\n- Verificación por email/SMS: envía un código de un solo uso para confirmar el número de teléfono o el email ligado al registro de identidad.\n- SSO: para empleados, usa SAML/OIDC para emitir el pase solo tras el inicio de sesión corporativo.\n- Aprobación por admin: para sitios de mayor seguridad, coloca la solicitud en una cola de revisión (con códigos de motivo, marcas temporales y rastro de auditoría).

Un patrón práctico es: enlace de invitación → verificar email/SMS → (opcional) SSO → emitir pase.

Cómo se añade el pase (y cómo guías a los usuarios)

Diseña la emisión para que los usuarios no tengan que “averiguarlo”:

  • Pase in-app: la credencial vive dentro de tu app; tú controlas actualizaciones y UI. Ideal cuando necesitas autenticación personalizada, reglas offline o comportamientos especiales de lector.\n- Agregar a Wallet: proporciona un botón “Add to Apple Wallet” / “Add to Google Wallet” tras la verificación. También soporta deep links que abren la pantalla de añadido al wallet desde una invitación.\n- Fallback por QR para invitación: in situ, permite que una recepción muestre un QR que abra el enlace de inscripción (útil cuando el usuario no encuentra el correo).

Mantén el texto extremadamente claro: para qué sirve el pase, dónde aparecerá (app vs. wallet) y qué hacer en la puerta.

Cambios de dispositivo y reglas de reemisión

Planifica esto temprano para evitar tickets de soporte:

  • Teléfono nuevo: ofrece un flujo de re-inscripción autoservicio que re-verifique identidad y re-emita el pase.\n- Múltiples dispositivos: decide si permitirlo. Si se permite, limita la cantidad y muestra dispositivos activos en ajustes.\n- Dispositivo perdido: habilita revocación remota instantánea y luego permite reemisión tras re-verificación.

Mensajes al usuario para fallos en el mundo real

Redacta mensajes amables y específicos para:

  • Acceso denegado (y próximo paso: “Contacta con seguridad” vs. “Intenta de nuevo tras actualizar”)\n- Pase expirado (incluye fecha de expiración y acción de renovación)\n- Problemas de conectividad (explica qué funciona offline y cómo recuperarse cuando haya conexión)

Una buena emisión no es solo “crear un pase”: es un viaje completo y entendible con vías de recuperación predecibles.

Autenticación y autorización para usuarios y admins

Crea un piloto de pases rápido
Prototipa un sistema de pases en chat y entrega un piloto funcional web, backend y móvil.
Probar gratis

Los pases digitales sólo son tan confiables como la identidad y permisos que los respaldan. Trata la autenticación (quién eres) y la autorización (qué puedes hacer) como características de producto de primera clase, no solo como tubería.

Elegir un enfoque de autenticación

Elige el método de login que cuadre con tu audiencia y nivel de riesgo:

  • Email + código de un solo uso (OTP): fácil para consumidores, menos restablecimientos de contraseña.\n- Passwordless “magic link”: excelente para baja fricción, pero requiere entrega de email fiable.\n- SSO / identidad empresarial (SAML/OIDC): mejor para empleados, contratistas y campus; enlaza acceso a políticas de RRHH/TI existentes.

Si soportas multi-tenant, decide temprano si un usuario puede pertenecer a más de un tenant y cómo cambian de contexto.

Autorización: roles, scopes y auditabilidad

Define roles en lenguaje claro (por ejemplo, Titular del Pase, Recepción, Admin de Seguridad, Auditor), y luego mapea permisos:

  • Quién puede emitir, reemitir, revocar o suspender pases\n- Quién puede ver logs de acceso y exportar informes\n- Quién puede cambiar reglas de la instalación (grupos de puertas, horarios)

Mantén las comprobaciones de autorización en el servidor (no solo en la UI) y registra cada acción sensible con quién, qué, cuándo, dónde (IP/dispositivo), más un campo motivo para acciones manuales de admin.

Sesiones, confianza de dispositivo y conveniencia del usuario

Usa tokens de acceso de corta duración con refresh tokens y soporta re‑entrada segura vía biometría (Face ID/Touch ID) para mostrar el pase.

Para despliegues de mayor seguridad, añade vinculación al dispositivo para que una credencial sea válida solo en el/los dispositivo(s) inscritos. Esto también dificulta el uso de un token copiado en otro lugar.

Salvaguardas de admin que reducen errores y abusos

Las herramientas de admin necesitan guardarraíles extras:

  • Flujos de aprobación para emisión masiva o pases privilegiados\n- Límites de tasa en endpoints de emisión/reemisión\n- Alertas por patrones inusuales (p. ej., muchas emisiones al mismo dominio de email, picos fuera de horario)

Documenta estas políticas en un runbook interno y enlázalo desde la UI de admin (por ejemplo, /docs/admin-security) para mantener operaciones coherentes.

Modelo de seguridad: prevenir clonados, capturas y replay

La seguridad de pases digitales trata menos de “ocultar el QR” y más de decidir qué puede confiar el lector. El modelo correcto depende de conectividad, capacidades del lector y la rapidez con que necesites revocar acceso.

¿Qué valida el lector?

Normalmente tienes tres patrones:

  • Payload firmado (validación offline): el QR/NFC lleva una carga firmada por tu sistema. Los lectores verifican la firma localmente, por lo que las puertas funcionan offline. Esto es rápido, pero la revocación depende de las actualizaciones de los lectores.\n- Chequeo servidor-side (validación online): el lector envía el token escaneado a tu backend para aprobar/denegar en tiempo real. La revocación es inmediata, pero dependes de la disponibilidad y latencia de la red.\n- Híbrido: los lectores verifican una firma primero (para bloquear falsificaciones obvias) y luego llaman al servidor opcionalmente para zonas de alto riesgo o cuando hay conectividad.

QR: reduce el riesgo de capturas y replay

Los QR estáticos son fáciles de compartir y capturar. Prefiere códigos rotativos o de tiempo limitado:

  • Usa un token de corta duración (por ejemplo, válido 15–60 segundos).\n- Vincúlalo a un dispositivo/sesión cuando sea posible (así una captura reenviada no validará en otro lugar).\n- Incluye datos anti-replay (timestamp + nonce) y haz que el backend rechace tokens ya usados cuando se requiera “entrada de un solo uso”.

Si debes soportar validación offline por QR, haz el QR firmado y con tiempo limitado, y acepta que la revocación en tiempo real no será posible sin sincronizar lectores.

NFC: protege claves en el dispositivo

Para NFC, planifica dónde viven los secretos y cómo se usan:

  • Almacena claves de credencial en almacenamiento seguro con respaldo hardware (Secure Enclave/Keystore cuando esté disponible).\n- Evita exponer identificadores de larga duración sobre NFC; usa challenge-response o claves de sesión derivadas si el lector lo soporta.\n- Asume que existen dispositivos rooteados/jailbreakeados; confía en claves con respaldo hardware y reglas de riesgo server-side en lugar de ofuscación de la app.

Velocidad de revocación: define el requisito operacional

Decide desde el inicio cuán rápido debe dejar de funcionar un pase revocado (segundos, minutos, horas). Ese requisito impulsa la arquitectura:

  • Segundos: por lo general se requieren checks online (o lectores con conectividad constante).\n- Minutos: sincronizaciones frecuentes del lector + tokens de corta duración pueden funcionar.\n- Horas: actualizaciones periódicas pueden ser aceptables para áreas de bajo riesgo.

Documenta esto como un SLO de seguridad y operaciones porque afecta configuración de lectores, disponibilidad del backend y respuesta a incidentes.

Integración con lectores de puerta y sistemas de control de acceso

Reduce el costo de desarrollo
Obtén créditos compartiendo tu build o invitando a compañeros a probar Koder.ai.
Gana créditos

Aquí es donde tus pases digitales se encuentran con el mundo real: torniquetes, controladoras de puerta, lectores de ascensor y escáneres de recepción. Las elecciones de integración afectan fiabilidad, velocidad y qué ocurre cuando la red cae.

Elige la ruta de validación del lector

Caminos comunes incluyen:

  • Lector → tu API (validación en la nube): el lector (o su controlador) llama a tu endpoint de validación por cada tap/escaneo. Flexible, pero depende de la calidad de la red y requiere cuidadoso rate limiting.\n- Lector → ACS existente: tu app emite una credencial que el ACS entiende, y el ACS decide permitir/denegar. Menos lógica custom en puertas, pero puede limitar qué datos puedes codificar.\n- Lector → gateway local (validación en el edge): los lectores hablan con un servicio en sitio que valida credenciales localmente y sincroniza con tu backend. Mejora resiliencia y mantiene latencia predecible.

Fija objetivos de tiempo de respuesta y comportamiento offline

Define objetivos temprano (por ejemplo, “decisión de apertura en menos de 300–500 ms”). También documenta qué significa “offline” para cada sitio:

  • Si la red cae, ¿fallas cerradas (denegar todo) o fallas abiertas en puertas específicas?\n- ¿Soportas listas de permitidos en caché en el gateway/controlador con expiraciones cortas?\n- ¿Cómo registrarás eventos y los sincronizarás sin duplicar entradas?

Documenta puntos de integración (no omitas detalles complicados)

Escribe los sistemas y datos que debes alinear:

  • Provisionamiento de credenciales: quién crea el registro de persona y cuándo (sistema de RRHH, sistema de visitantes, portal de admin)?\n- Grupos y horarios de acceso: mapeo de roles a puertas, pisos, ventanas horarias y reglas festivas.\n- Inventario de puerta y lector: IDs canónicos de puerta, ubicaciones, tipos de lector (NFC, QR) y limitaciones de firmware de controladora.

Un diagrama simple de “fuente de verdad” en tus docs internos ahorra semanas más adelante.

Planifica monitorización y diagnóstico

Trata los lectores como infraestructura de producción. Rastrea:

  • Salud del lector: timestamp de última conexión, versión de firmware, estado de batería/energía (si está disponible).\n- Tasas de fallo y latencia: tiempo de validación p95, timeouts y reintentos.\n- Razones de acceso denegado: pase expirado, credencial revocada, fuera de horario, puerta desconocida, replay sospechoso.

Hazlos visibles en un dashboard de ops y enruta incidentes críticos al on-call. Un flujo rápido de “¿por qué me denegaron?” reduce la carga de soporte durante el despliegue.

Arquitectura backend: APIs, firma y escalabilidad

Un sistema de pases digitales vive o muere por su backend: emite credenciales, controla validez y registra lo ocurrido—rápida y confiablemente—cuando la gente está en la puerta.

APIs centrales (mantenlas simples y versionadas)

Comienza con un conjunto pequeño de endpoints que puedas evolucionar:

  • POST /v1/passes/issue — crear un pase para un usuario, devolver un enlace de activación o el payload del pase\n- POST /v1/passes/refresh — rotar identificadores / actualizar derechos, devolver datos de pase más recientes\n- POST /v1/passes/validate — verificar un token QR/NFC presentado en un lector (lectores online)\n- POST /v1/passes/revoke — invalidar inmediatamente un pase (teléfono perdido, terminación de acceso)\n- POST /v1/events — registrar intentos de entrada y resultados (aceptado/denegado/error)

Aunque algunas validaciones ocurran en el dispositivo o en el lector, conserva una API de validación server-side para auditoría, revocación remota y operaciones de “romper el vidrio”.

Firma y gestión de claves (y cómo rotarlas de forma segura)

Si soportas Apple Wallet (PKPass) u otras cargas firmadas, trata las claves de firma como secretos de producción:

  • Almacena claves privadas en un KMS/HSM gestionado; nunca en servidores de aplicación ni en logs de CI.\n- Rota claves según calendario y tras incidentes; soporta múltiples claves públicas activas para que pases antiguos sigan funcionando durante la transición.\n- Audita cada operación de firma (quién/qué emitió, para quién, cuándo y con qué versión de clave).

Un patrón práctico es un servicio dedicado de “firma” con una interfaz estrecha (por ejemplo, “sign pass payload”), aislado del resto de la aplicación.

Diseñar para escala en picos de entrada

Los picos de entrada son predecibles (9:00 AM, inicio de eventos). Planea para lecturas en ráfaga:

Usa caching para listas de revocación y búsquedas de derechos, añade reintentos con claves de idempotencia para emisión, y encola trabajo no crítico (analítica, notificaciones) para que la validación permanezca rápida. Si los lectores se ponen online, mantén baja la latencia evitando dependencias demasiado conversacionales.

Controles de privacidad y retención de logs

Minimiza datos personales almacenados: prefiere IDs internos de usuario en lugar de nombres/emails en registros de pases y eventos. Define retención desde el inicio (por ejemplo, conservar logs de acceso 30–90 días salvo requerimiento contrario) y separa logs operativos de logs de seguridad/auditoría con controles de acceso más estrictos.

Construir más rápido (sin atarte a una arquitectura)

Si iteras rápido—portal admin, APIs de emisión y una experiencia móvil inicial—herramientas como Koder.ai pueden ayudar a prototipar y enviar un sistema de pases end-to-end vía chat manteniendo un stack de ingeniería estándar (React para web, Go + PostgreSQL para backend, Flutter para móvil). Es útil para crear un piloto funcional (despliegue/hosting, dominios custom y snapshots con rollback) y luego exportar el código fuente cuando estés listo para integrar con un ACS o gateway on‑prem específico.

UX móvil: configuración, visualización y accesibilidad

Un pase digital gana o pierde en la pantalla que la gente ve en la puerta. Optimiza para tres momentos: configuración inicial, “mostrar mi pase ahora” y “algo salió mal—ayúdame a recuperarlo rápido”.

Elige el enfoque de app

  • Nativo (iOS/Android): mejor para experiencias NFC, integración con Wallet y comportamientos de sistema pulidos.\n- Cross-platform (Flutter/React Native): excelente para UI compartida y iteración rápida, pero valida NFC, comportamientos en background y handoffs a Wallet temprano.\n- Companion web: funciona para programas solo QR y pilotos rápidos, pero dependerás más de permisos de cámara y conectividad.

Si soportas Apple Wallet / Google Wallet, deja claro si la app será necesaria tras la provisión. Muchos usuarios prefieren “añadir a wallet y olvidarlo”.

Visualización del pase que funcione bajo presión

Diseña la pantalla de “presentar pase” como una tarjeta de embarque: inmediata, brillante y fácil de leer.

  • Renderizado de QR: usa un código de alto contraste con zonas de silencio generosas, bloquea la orientación si hace falta e incluye un aviso “maximizar brillo”.\n- UI de tap NFC: muestra un estado simple “Acerca al lector”, una pista animada para la posición y una confirmación clara de éxito.\n- Deep links a Wallet: proporciona una acción de un toque “Abrir en Wallet” / “Abrir en Google Wallet” (redirige a los usuarios directamente en lugar de hacerles buscar apps).

Evita enterrar el pase en menús. Una tarjeta persistente en la pantalla principal o un botón primario reduce demoras en la puerta.

Accesibilidad y claridad

Soporta Texto Grande, Dynamic Type, etiquetas para lectores de pantalla (“Código QR del pase de acceso”) y temas de alto contraste. Trata los estados de error como parte de la UX: cámara bloqueada, NFC desactivado, pase expirado o lector sin respuesta. Cada uno debe incluir una solución en lenguaje llano (“Habilita la cámara en Ajustes”) y una acción alternativa.

Casos límite para diseñar

Zonas horarias y desajustes de reloj del dispositivo pueden hacer que pases basados en tiempo parezcan “malos”, así que muestra tiempos con la zona horaria del lugar y añade un indicador sutil “Última sincronización”.

También planifica: modo avión, recepción inestable en lobbies, permisos revocados (cámara/NFC) y modos de accesibilidad por batería baja. Un pequeño enlace de “Solución de problemas” a /help/mobile-pass puede evitar colas de soporte en horas punta.

Estrategia de pruebas: dispositivos, lectores, offline y abusos

Prueba con tráfico real
Despliega y hospeda tu piloto para que los lectores puedan validar tokens en condiciones reales.
Desplegar app

Probar una app de tarjeta de acceso móvil es menos sobre “abre” y más sobre “abre siempre, bajo presión”. Trata las pruebas como un requisito de producto, no como una lista final.

Construye una matriz de pruebas práctica

Comienza con una matriz que refleje lo que los usuarios llevan y lo que tus puertas usan:

  • Dispositivos: mezcla de iPhones/Android antiguos y recientes, distintos tamaños de pantalla y cámaras de gama baja para escaneo QR.\n- Versiones OS: incluye al menos la versión actual y la anterior mayor de iOS/Android.\n- Capacidades: disponibilidad de NFC (y ubicación), velocidad de autoenfoque de la cámara, brillo y modos de ahorro de batería.\n- Modelos de lector: cada firmware/versión de lector que soportes, incluidos torniquetes y escáneres portátiles.

Incluye credenciales in-app y flujos de wallet (pase Apple Wallet / Google Wallet), porque el comportamiento de PKPass y la UI del sistema pueden diferir de tu app.

Ensaya condiciones reales de entrada

Los escaneos perfectos de laboratorio no coincidirán con colas reales. Realiza “pruebas de embotellamiento” donde 20–50 personas presentan pases rápidamente, una tras otra, con:

  • Iluminación pobre y reflejos (sol exterior, lobby tenue)\n- Conectividad inestable (Wi‑Fi con caídas, LTE débil)\n- Modo offline (modo avión + reinicio del dispositivo) para confirmar credenciales en caché y la guía UX

Mide tiempo medio hasta la entrada, tasa de fallo y tiempo de recuperación (qué hace el usuario a continuación).

Valida escenarios de abuso y fallo

Prueba activamente:

  • Intentos de replay (reusar el mismo QR dentro de su ventana de validez)
  • Uso de capturas de pantalla y edge cases de grabación de pantalla
  • Intentos con pase revocado (negación inmediata tras revocación server-side)
  • Límites de tasa y bloqueos por fallos repetidos

Escena como producción

Mantén un entorno staging con lectores de prueba y tráfico sintético que simule eventos pico. Verifica emisión, actualizaciones y revocaciones de pases bajo carga, y asegura que el logging permite trazar “tap/scan → decisión → resultado de puerta” de punta a punta.

Lanzamiento, despliegue y operaciones continuas

Un lanzamiento exitoso es menos una gran entrega y más entrada predecible en cada puerta, cada día. Planea un despliegue controlado, rutas de soporte claras y métricas que revelen dónde se esconde la fricción.

Migrar desde tarjetas físicas sin romper acceso

La mayoría funciona mejor con un despliegue por fases:

  • Grupo piloto primero (equipo de seguridad, facilities, una sola oficina/piso) para validar lectores, onboarding y casos límite.\n- Período de doble credencial donde empleados pueden usar tarjeta física o pase digital. Fija una fecha objetivo para terminar, pero mantiene excepciones para contratistas o dispositivos especiales.\n- Formación y comunicaciones: instrucciones cortas de “cómo entrar”, dónde tocar/escanear, qué hacer si el teléfono muere y cómo pedir ayuda.

Playbooks de soporte que usarás realmente

Crea flujos simples y repetibles para help desk y admins:

  • Teléfono perdido: revoca la credencial inmediatamente; re-emite a nuevo dispositivo tras verificación de identidad.\n- Acceso denegado: revisa logs del lector, estado del pase (activo/expirado), permisos del usuario y horarios; ofrece un fallback temporal si es necesario.\n- Cambio de dispositivo/upgrade: re‑inscripción autoservicio cuando sea posible, con límites de tasa y override admin.\n- Reemisión: define cuándo rotar identificadores vs. reactivar el mismo pase (importante para prevención de fraude y trazabilidad).

Mantén estos playbooks en un solo lugar y enlázalos desde la consola de admin y la documentación interna.

Instrumentación y métricas operacionales

Añade analítica que refleje desempeño real de entrada, no solo instalaciones:

  • Embudo de activación: invitación → instalación → inscripción → primera entrada exitosa\n- Tasa de éxito de escaneo/tap (por sitio, puerta, modelo de lector)\n- Tiempo hasta la entrada (mediana y p95)\n- Errores del lector y backend (timeouts, offline, fallos de firma)

Usa estas métricas para priorizar ajuste de lectores y educación de usuarios.

Checklist de despliegue (publica y reutiliza)

  • Lectores verificados (NFC/QR) y fallback probado\n- Roles de admin y contactos de escalado definidos\n- Scripts de soporte listos (teléfono perdido, acceso denegado, reemisión)\n- Dashboard de analítica activo con revisión semanal\n- Comunicaciones claras para usuarios y forma de pedir ayuda (/contact)\n- Plan comercial y de escalado confirmado (/pricing)

Preguntas frecuentes

¿Qué cuenta exactamente como “pase digital” en una app de tarjetas de acceso?

Un pase digital es la “tarjeta” visible para el usuario que la persona presenta para entrar o verificar un derecho (credencial de empleado, ID de miembro, entrada, pase de visitante). En el backend se respalda con una o varias credenciales (cargas útiles QR, tokens NFC) que los lectores validan, y con un ciclo de vida (emitir, actualizar, suspender, revocar, reemitir) que puedes gestionar operacionalmente.

¿Cómo defino el caso de uso y las métricas de éxito antes de elegir QR/NFC o Wallet/in-app?

Empieza por escribir el flujo de principio a fin (solicitud → aprobación → emisión → acceso → auditoría), y luego elige métricas medibles:

  • Tasa de activación (usuarios invitados que añaden/habilitan correctamente)
  • Tasa de éxito en el primer intento en la puerta (escaneo/tap funciona a la primera)
  • Tiempo hasta emisión (desde la solicitud/aprobación hasta la credencial usable)
  • Volumen de tickets de soporte y motivos principales

Estas métricas mantienen el “funciona” anclado en operaciones reales.

¿Cuándo debería usar códigos QR frente a NFC para pases digitales?

Usa QR cuando necesites compatibilidad amplia y bajo costo de hardware (escáneres de cámara, verificaciones visuales) y puedas tolerar menor rendimiento por persona. Usa NFC cuando necesites experiencias rápidas y familiares de “tocar para entrar” y dispongas de lectores compatibles.

Un esquema práctico común es:

  • NFC como principal para velocidad
  • QR como fallback para teléfonos antiguos, NFC roto o ubicaciones sin NFC
¿Cómo debo pensar en el acceso offline y la revocación para puertas y escáneres?

Decide (y documenta) tres cosas:

  • Ventana de validez sin conexión (minutos/horas/días)
  • Comportamiento de revocación mientras está offline (denegar solo tras sincronización, o aceptación con tiempo limitado)
  • Política fail open vs fail closed por puerta/sitio

Si necesitas revocación casi inmediata, normalmente requerirás validación en línea o sincronizaciones muy frecuentes del lector/gateway.

¿Debería mi pase vivir en Apple/Google Wallet o dentro de mi app?

Elige Wallet cuando la presentación rápida y la disponibilidad desde la pantalla bloqueada importen (visitantes, eventos, flujos sencillos). Elige in-app cuando necesites flujos más ricos y controles de identidad más estrictos (aprobaciones, acceso multi-sede, step-up auth).

Muchas organizaciones despliegan ambos:

  • Pase en Wallet para entrada rápida
  • Credencial dentro de la app para administración, soporte y actualizaciones
¿Qué modelo de datos necesito para pases, credenciales, dispositivos y puertas?

Modela al menos estas entidades:

  • Usuario, Organización/Sitio
  • Pase (lo que ve el usuario)
  • (el token que validan los lectores)
¿Qué estados del ciclo de vida del pase debo soportar (emitir, suspender, revocar, reemitir)?

Haz los estados explícitos y las transiciones deliberadas:

  • pending → el usuario está inscribiéndose
  • active → usable
  • suspended → bloqueado temporalmente
  • → ventana de tiempo finalizada
¿Cuál es el flujo recomendado de inscripción y emisión para un pase móvil?

Diseña para los “primeros 5 minutos”:

  • Usa enlaces de invitación que hagan deep-link al flujo de inscripción
  • Verifica identidad vía OTP (email/SMS) y/o SSO para empleados
¿Cómo prevengo capturas de pantalla de QR, clonados y ataques de replay?

Evita códigos estáticos. Prefiere:

  • Tokens QR rotativos y de corta duración (p. ej., 15–60 segundos)
  • Cargas firmadas (los lectores pueden verificar autenticidad)
  • Controles anti-replay (nonce/marca temporal; opcional uso único)
  • Vinculación a dispositivo/sesión cuando sea posible

Si debes validar offline, acepta que la revocación no será en tiempo real y compensa con ventanas de validez cortas y actualizaciones periódicas de lectores.

¿Cuáles son las principales formas de integrar con lectores de puerta y sistemas de control de acceso?

Elige uno de tres patrones:

  • Lector → tu API (validación en la nube): flexible, revocación inmediata; depende de la red
  • Lector → ACS existente: aprovecha decisiones del control de acceso actual; puede limitar formatos/datos
  • Lector → gateway local (validación en el borde): latencia predecible y mejor resiliencia offline

Fija objetivos (p. ej., 300–500 ms para la decisión), define el comportamiento offline y monitoriza p95 de latencia, tasas de fallo y razones de denegación por puerta/modelo de lector.

Contenido
Aclara el caso de uso y las métricas de éxitoElige cómo se presentará el pase: QR, NFC y fallbacksDecide: Pases in-app vs. Apple Wallet y Google WalletDiseña el modelo de datos y el ciclo de vida del paseConstruye el flujo de inscripción y emisión del paseAutenticación y autorización para usuarios y adminsModelo de seguridad: prevenir clonados, capturas y replayIntegración con lectores de puerta y sistemas de control de accesoArquitectura backend: APIs, firma y escalabilidadUX móvil: configuración, visualización y accesibilidadEstrategia de pruebas: dispositivos, lectores, offline y abusosLanzamiento, despliegue y operaciones continuasPreguntas frecuentes
Compartir
Koder.ai
Crea tu propia app con Koder hoy!

La mejor manera de entender el poder de Koder es verlo por ti mismo.

Empezar gratisReservar demo
Credencial
  • Dispositivo (donde se almacena/muestra la credencial)
  • Lector/Puerta y Política de acceso
  • Separar pase de credencial facilita cambios de dispositivo y rotación de credenciales sin “perder” identidad o historial.

    expired
  • revoked → inválido permanentemente
  • Define quién puede desencadenar transiciones (usuario vs admin vs políticas automatizadas) y registra cada cambio con actor, marca temporal y motivo.

  • Ofrece un claro botón Agregar a Wallet o una pantalla “Pase listo” con instrucciones
  • Proporciona un QR de kiosco o fallback in situ cuando el usuario no encuentra el correo
  • Además, planifica re‑inscripción autoservicio para teléfonos nuevos y revocación remota inmediata para dispositivos perdidos.