English

Aviso de privacidad de BusDot

Aplicación móvil para pasajeros de transporte público (Android e iOS). Este aviso no aplica a BusDotDriver.

Última actualización: 7 de septiembre de 2026 Paquetes: org.busdot.app / com.busdot.app México — LFPDPPP

1. Identidad y domicilio del responsable

El responsable del tratamiento de los datos personales recabados a través de la aplicación BusDot (en adelante, “la App”) es el operador de BusDot, contactable en fastracklogisticsmx@gmail.com.

Este aviso se emite conforme a la Ley Federal de Protección de Datos Personales en Posesión de los Particulares (LFPDPPP) y su Reglamento.

2. Alcance

Este aviso cubre exclusivamente la App de pasajeros BusDot en:

No cubre BusDotDriver, el panel de administración ni cuentas de conductores, propietarios de flota o administradores.

Puede usar la App como invitado, sin crear cuenta. En ese caso no se crea un perfil de pasajero ni una cuenta en el sistema de autenticación; sí se procesan, si usted lo autoriza, ubicación y datos técnicos necesarios para el radar, el mapa y (en Android) la publicidad.

3. Datos personales que recabamos

No recabamos CURP, domicilio particular, números de tarjeta, datos biométricos ni historial persistente de trayectos del pasajero. La ubicación del pasajero no se guarda como historial en la base de datos de perfiles.

3.1 Datos que usted nos proporciona

Dato Cuándo se recaba Dónde se almacena
Correo electrónico Registro o inicio de sesión con correo y contraseña, o inicio de sesión con Google Supabase Auth (auth.users). También se guarda cifrado en el dispositivo mientras la sesión esté activa.
Contraseña Registro o inicio de sesión con correo La App la envía a Supabase Auth para autenticar. No se almacena en texto plano en el dispositivo ni en la tabla de perfiles. Supabase la guarda de forma hasheada.
Nombre para mostrar (display_name / full_name) Al crear cuenta; también puede editarse en Perfil. Con Google puede tomarse del nombre de la cuenta. Metadatos de Auth y tabla passenger_profiles (user_id, display_name, preferences, created_at, updated_at)
Preferencias de perfil (preferences, JSON) Al crear el perfil de pasajero (inicialmente vacío) passenger_profiles.preferences. El campo existe para ajustes del pasajero; no se usa hoy para guardar ubicación.

3.2 Datos recabados automáticamente o con permiso del sistema

Dato Permiso / origen Qué hace la App con él
Ubicación aproximada y precisa (latitud y longitud) Android: ACCESS_FINE_LOCATION y ACCESS_COARSE_LOCATION. iOS: ubicación mientras se usa la App (NSLocationWhenInUseUsageDescription). Solo en el radar, para centrar el mapa y consultar unidades cercanas. Se envía al servidor en cada consulta RPC nearby_bus_positions como p_lat, p_lng, radio p_radius_m = 1 500 metros y p_route_id de la ruta seleccionada. Esa consulta se repite mientras el radar está activo (instantánea cada 45 segundos). También se usa en el dispositivo para unirse a canales de tiempo real por celdas geohash (precisión 6) alrededor de su posición. No se escribe en passenger_profiles ni se conserva un historial de GPS del pasajero.
Identificadores de sesión (access token, refresh token, user id, expiración) Tras un inicio de sesión exitoso Android: EncryptedSharedPreferences (AES-256). iOS: Llavero (Keychain) y, para la expiración, NSUserDefaults. Se borran al cerrar sesión.
Indicador de onboarding completado Al pasar la pantalla de bienvenida Almacenamiento local del dispositivo. Permanece aunque cierre sesión.
Desbloqueo temporal de ocupación (anuncio recompensado) Tras ver un anuncio recompensado en Android Solo en el dispositivo: fecha de expiración y si ya se concedió el primer desbloqueo (8 minutos la primera vez, 5 minutos después). No se envía al servidor de BusDot.
Estado de suscripción Premium Google Play Billing, producto busdot_premium_monthly (solo Android; en iOS las compras no están disponibles aún) Google Play procesa el pago. La App consulta en el dispositivo si la suscripción está activa para ocultar anuncios. No enviamos el número de tarjeta a nuestros servidores.
Identificador de publicidad (AAID) y datos técnicos de anuncios Android: permiso com.google.android.gms.permission.AD_ID y Google Mobile Ads (AdMob). Anuncios: banner, anuncio al abrir la App y anuncio recompensado para ver ocupación. Google AdMob puede recabar identificador de publicidad, IP, tipo de dispositivo, idioma, y en algunos casos ubicación aproximada, para servir y medir anuncios. No hay AdMob en la versión iOS actual.
Datos de mapa SDK de Mapbox (Android e iOS) Para dibujar el mapa y su posición. Mapbox recibe solicitudes de teselas y puede procesar datos técnicos (IP, región del mapa visible) conforme a su propia política.
Datos de Google Sign-In Si elige “Continuar con Google” La App recibe un id_token y un nonce y los envía a Supabase Auth (grant_type=id_token). Google puede tratar correo, nombre e identificador de cuenta según su política. No pedimos acceso a contactos ni al Drive.
Confirmación de correo Al registrarse con correo Supabase envía un enlace. Al confirmarlo se llama a la Edge Function email-confirmed para completar el alta.

3.3 Datos que la App consulta pero no son suyos

Para mostrar el radar, la App lee catálogo público de rutas (id, short_name, name) y posiciones de unidades reportadas por conductores (bus_id, route_id, latitud, longitud, recorded_at, ocupación, destinos). Esos datos pertenecen a la operación de las unidades, no al pasajero. Solo se muestran unidades con ubicación reciente (umbral de frescura: 120 segundos).

La App de pasajeros no escribe en tablas de conductores, solicitudes de vehículos, incidentes, flotas ni administradores.

3.4 Lo que no hacemos hoy

4. Finalidades del tratamiento

4.1 Finalidades primarias (necesarias para el servicio)

4.2 Finalidades secundarias

Si no desea finalidades secundarias de publicidad, puede usar iOS (sin AdMob en la versión actual), suscribirse a Premium en Android, o limitar el identificador de publicidad en ajustes del sistema. El radar con ubicación sigue siendo una finalidad primaria si usa esa función.

5. Encargados, transferencias y terceros

Compartimos datos con proveedores que actúan como encargados o terceros independientes:

Proveedor Rol Datos involucrados Ubicación / política
Supabase (Postgres, Auth, Realtime, Edge Functions) Backend de la App. Proyecto losmvkzqeqhiofbhzqgt.supabase.co Cuenta, perfil, consultas de radar con coordenadas, catálogo de rutas y posiciones de unidades supabase.com/privacy
Google (Sign-In, Play Billing, AdMob, servicios de ubicación de Play) Identidad, pagos, anuncios y GPS en Android Token de Google, compras, identificador de publicidad, ubicación del dispositivo policies.google.com/privacy
Mapbox Mapas Solicitudes de mapa y datos técnicos del SDK mapbox.com/legal/privacy
Firebase Hosting (Google) Alojamiento de este sitio de aviso de privacidad Registros técnicos típicos de un sitio web (por ejemplo IP, fecha y recurso solicitado) firebase.google.com/support/privacy
Apple Sistema iOS, Sign in with Google en iOS, distribución Datos de sistema y, si aplica, los que Apple trate al usar la App Store apple.com/legal/privacy

No vendemos su lista de correo ni su ubicación a brokers de datos. AdMob puede personalizar anuncios según las prácticas de Google; eso es tratamiento de un tercero independiente cuando usted usa la versión Android con anuncios activos.

6. Plazos de conservación

7. Derechos ARCO y revocación

Usted puede acceder, rectificar, cancelar u oponerse al tratamiento de sus datos (derechos ARCO), y revocar el consentimiento, en los términos de la LFPDPPP.

Desde la App puede:

Para cancelar la cuenta o solicitar acceso/eliminación de datos en servidor, escriba a codexia.labs.admon@gmail.com desde el correo asociado a la cuenta, indicando:

Responderemos en los plazos legales aplicables. Podemos pedir información para verificar identidad.

Si considera que su derecho de protección de datos ha sido lesionado, puede acudir al INAI: home.inai.org.mx.

8. Menores de edad

BusDot está pensada para uso general de transporte público. No dirigimos el servicio a menores de 18 años ni recabamos de forma intencional datos de menores. Si un tutor identifica una cuenta de un menor, puede solicitar su cancelación a codexia.labs.admon@gmail.com.

9. Medidas de seguridad

Ningún sistema es 100 % seguro. Si detectamos un incidente que afecte sus datos, lo informaremos por los medios razonables, incluido el correo de la cuenta si existe.

10. Cambios a este aviso

Publicaremos la versión vigente en este sitio. La fecha de “última actualización” indica el inicio de vigencia. Si el cambio es sustancial (por ejemplo, nuevas categorías de datos o finalidades), lo reflejaremos aquí y, cuando la ley lo exija, solicitaremos un nuevo consentimiento.

URL de este aviso (para Play Console / App Store): la dirección de Firebase Hosting de este sitio.