> ## Documentation Index
> Fetch the complete documentation index at: https://docs.filexpress.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Marcaje de asistencia

> Marcación de entrada y salida desde la app móvil con PIN, selfie y ubicación

El marcaje permite que los empleados registren su **entrada** y **salida** desde la app móvil de FileXpress. Cada marca alimenta la misma [Asistencia](/docs/rrhh/asistencia) diaria que se usa al generar la planilla, por lo que no es necesario digitar ni importar esas horas.

* La **primera** marca del día es la **entrada**.
* La **segunda** marca del día es la **salida**.
* Una **tercera** marca se rechaza. Si hay que corregir algo, RR. HH. lo hace desde **Recursos Humanos → Asistencia** en la web.

<Note>
  Los empleados **no necesitan un usuario** del sistema para marcar. Basta con que un administrador les asigne un PIN.
</Note>

## Formas de marcar

<CardGroup cols={3}>
  <Card title="Con su cuenta" icon="user">
    Empleados que tienen usuario en FileXpress (vinculado a su ficha o con el mismo correo). Marcan desde **Mi marcaje** en la app, **sin PIN**.
  </Card>

  <Card title="Reloj de sucursal" icon="tablet-screen-button">
    Un teléfono o tablet compartido en la sucursal. Cualquier empleado de la empresa marca escribiendo su PIN.
  </Card>

  <Card title="Teléfono personal" icon="mobile">
    El teléfono propio del empleado, vinculado por un administrador. Solo acepta el PIN de ese empleado.
  </Card>
</CardGroup>

## PIN del empleado

* Tiene de **4 a 6 dígitos**.
* Lo asigna un administrador.
* Es **único dentro de la empresa** (dos empresas distintas pueden usar el mismo número).
* Se puede cambiar o quitar en cualquier momento.

### Asignar o cambiar un PIN

<Tabs>
  <Tab title="Desde la web">
    <Steps>
      <Step title="Ir a Recursos Humanos → Marcaje → pestaña Empleados y PIN" />

      <Step title="Buscar al empleado y asignar el PIN">
        Escribe un PIN de 4 a 6 dígitos y guarda. Para eliminarlo, usa **Quitar PIN**.
      </Step>

      <Step title="Comunicar el PIN al empleado de forma privada" />
    </Steps>
  </Tab>

  <Tab title="Desde la app">
    <Steps>
      <Step title="Abrir Más → Marcaje" />

      <Step title="Tocar el empleado" />

      <Step title="Asignar, cambiar o quitar el PIN" />
    </Steps>
  </Tab>
</Tabs>

## Dispositivos autorizados

Por seguridad, un PIN **solo funciona en un dispositivo autorizado**. Así, si un empleado comparte su PIN, otra persona no puede marcar por él desde cualquier teléfono.

### Configurar un reloj de sucursal

<Steps>
  <Step title="Iniciar sesión en la app con un usuario del sistema">
    Usar el teléfono o tablet que quedará fijo en la sucursal.
  </Step>

  <Step title="Ir a Marcaje y tocar Usar como reloj de sucursal" />

  <Step title="Dejar el dispositivo disponible para los empleados">
    Para marcar, el empleado solo escribe su PIN; no tiene que buscar su nombre.
  </Step>
</Steps>

### Vincular el teléfono personal de un empleado

<Steps>
  <Step title="Generar el código de vinculación">
    En **Recursos Humanos → Marcaje → Empleados y PIN** (o en la app, en **Más → Marcaje** tocando al empleado), elegir **Vincular teléfono**. Se muestra un código de **6 caracteres**, válido por **10 minutos** y de **un solo uso**.
  </Step>

  <Step title="El empleado abre la app en su teléfono">
    Sin iniciar sesión, toca **Marcar asistencia** en la pantalla de inicio.
  </Step>

  <Step title="El empleado escribe el código">
    Desde ese momento, ese teléfono acepta únicamente el PIN de ese empleado.
  </Step>
</Steps>

<Warning>
  Cada empleado puede tener **un solo teléfono personal** vinculado.
</Warning>

### Cambiar de teléfono

<Steps>
  <Step title="Remover el teléfono actual">
    En la ficha del empleado dentro de **Marcaje**, usar **Remover teléfono** (en la app, sección **Teléfonos autorizados**).
  </Step>

  <Step title="Generar un nuevo código y vincular el teléfono nuevo">
    Seguir los pasos de [Vincular el teléfono personal](#vincular-el-teléfono-personal-de-un-empleado).
  </Step>
</Steps>

### Remover dispositivos

Un administrador puede remover relojes de sucursal (pestaña **Relojes de sucursal**) y teléfonos personales. Un dispositivo removido deja de aceptar marcas y pide vincularse otra vez.

<Note>
  Después de **5 PIN incorrectos**, el dispositivo se bloquea durante **10 minutos**.
</Note>

## Cómo marca un empleado

<Tabs>
  <Tab title="Con PIN (reloj o teléfono personal)">
    <Steps>
      <Step title="Abrir la app y tocar Marcar asistencia" />

      <Step title="Escribir el PIN" />

      <Step title="Tomarse la selfie con la cámara frontal">
        La selfie es **obligatoria** en las marcas con PIN.
      </Step>

      <Step title="Confirmar">
        La app indica si se registró como entrada o salida.
      </Step>
    </Steps>
  </Tab>

  <Tab title="Con su cuenta">
    <Steps>
      <Step title="Iniciar sesión en la app" />

      <Step title="Abrir Mi marcaje y marcar" />
    </Steps>
  </Tab>
</Tabs>

### Evidencia que se guarda en cada marca

| Dato | Detalle |
| - | - |
| Selfie | Obligatoria en marcas con PIN, tomada con la cámara frontal |
| Ubicación GPS | Se guarda si el empleado dio permiso de ubicación; si no, la marca se acepta igual |
| Dispositivo | Teléfono personal, reloj de sucursal o la cuenta del empleado |
| Sucursal | Sucursal desde donde se marcó |

## Marcar sin internet

Si el teléfono no tiene conexión, la marca **no se pierde**:

1. Se guarda en el teléfono con su **hora real**, la selfie y la ubicación, y la app muestra **Marca guardada**.
2. Se envía automáticamente cuando vuelve la conexión: cada minuto, al abrir de nuevo la app o antes de la siguiente marca.
3. Se aceptan marcas de hasta **7 días** de antigüedad.

<Warning>
  El PIN de una marca hecha sin internet se valida al sincronizar. Si era incorrecto, la marca aparece como **rechazada** en la app y se puede descartar.
</Warning>

## Consultar las marcas en la web

Ir a **Recursos Humanos → Marcaje**. La página tiene tres pestañas:

<AccordionGroup>
  <Accordion title="Marcas" icon="list">
    Muestra cada marca con: miniatura de la selfie, tipo (**entrada** o **salida**), fecha y hora, enlace al mapa con la precisión del GPS y el origen (**Su cuenta**, **Teléfono personal** o **Reloj de sucursal**). Las marcas que llegaron con más de 5 minutos de retraso llevan la etiqueta **Sin conexión**.

    Se puede filtrar por **empleado** y por **rango de fechas**.
  </Accordion>

  <Accordion title="Empleados y PIN" icon="key">
    Lista de empleados con su estado de PIN, cuenta y teléfono vinculado. Desde aquí se asignan PIN, se vinculan teléfonos y se remueven.
  </Accordion>

  <Accordion title="Relojes de sucursal" icon="tablet-screen-button">
    Dispositivos configurados como reloj de sucursal, con opción de removerlos.
  </Accordion>
</AccordionGroup>

<Note>
  Las selfies son privadas y se abren mediante enlaces temporales. Solo los usuarios con rol **root** o **administrador** pueden ver las marcas y administrar PIN y dispositivos. Ver [Roles y permisos](/docs/roles).
</Note>

## Preguntas frecuentes y solución de problemas

<AccordionGroup>
  <Accordion title="La app dice que el PIN es incorrecto">
    Verificar con el administrador el PIN asignado en **Empleados y PIN**. En un teléfono personal, solo funciona el PIN del empleado dueño de ese teléfono. Tras 5 intentos fallidos el dispositivo se bloquea 10 minutos.
  </Accordion>

  <Accordion title="Dispositivo no autorizado">
    El teléfono no está configurado como reloj de sucursal ni vinculado a un empleado, o fue removido. Configurarlo como reloj o generar un nuevo código de vinculación.
  </Accordion>

  <Accordion title="Ya marcó entrada y salida">
    Solo se permiten dos marcas por día. Para corregir horas, RR. HH. edita el registro en [Asistencia](/docs/rrhh/asistencia).
  </Accordion>

  <Accordion title="La hora del teléfono está incorrecta">
    Configurar el teléfono con fecha y hora automáticas. Las marcas guardadas sin conexión usan la hora del teléfono, y el sistema rechaza horas en el futuro o con más de 7 días de antigüedad.
  </Accordion>

  <Accordion title="Quiero vincular un segundo teléfono al mismo empleado">
    No es posible: primero se debe remover el teléfono actual y luego vincular el nuevo.
  </Accordion>

  <Accordion title="El código de vinculación no funciona">
    El código vence a los 10 minutos y solo se puede usar una vez. Generar uno nuevo.
  </Accordion>
</AccordionGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.