# ¿Cómo funciona QRwey!? La **API de QRwey!** permite a los comercios generar **códigos QR seguros y de vida corta** que representan una intención para autofacturarse. Estos códigos QR están diseñados para ser escaneados por la **aplicación móvil de QRwey!**, donde el cliente puede consultar los detalles de la operación y continuar con su proceso de autofactura. ## Flujo general El flujo típico de uso de QRwey! es el siguiente: 1. Se registra una intención de autofactura usando la API de QRwey! 2. QRwey! genera un **token opaco**, único y no predecible 3. El token se firma usando **HMAC-SHA256** para garantizar su integridad 4. El token firmado se codifica dentro de un **código QR** 5. El cliente final escanea con la app de [QRwey!](https://qrwey.com) el QR para autofacturarse 1. La app resuelve el QR y obtiene los detalles de la transacción 2. El cliente final confirma con que RFC desea autofacturarse y con un clic se autofactura El código QR **no contiene información sensible** directamente, solo una referencia segura a la transacción. ## Tokens opacos QRwey! utiliza **tokens opacos** como identificadores de las transacciones. Esto significa que: - No contienen información legible - No siguen una secuencia - No pueden ser adivinados o enumerados Cada token es válido únicamente dentro de las reglas definidas al momento de su creación. ## Firma e integridad Para evitar que un QR sea manipulado, QRwey! protege cada token con una firma: - Algoritmo: **HMAC-SHA256** - Firma truncada para uso eficiente en URLs - Validación obligatoria en cada resolución de QR Si el token o la firma no coinciden, la transacción es rechazada. ## Expiración controlada Todos los códigos QR generados por QRwey! tienen una fecha de expiración explícita: - La expiración se define usando el campo `expires_at` - Una vez vencido, el QR ya no puede resolverse - La validación de expiración es **del lado de los servidores de QRwey!** Esto evita el uso indebido de QRs antiguos o reutilizados. ## Casos de uso comunes QRwey! es ideal para escenarios como: - Estaciones de servicio (ventas de combustible) - Sistemas y terminales de venta - Flujos de facturación electrónica - Confirmación de pagos posteriores a la venta - Restaurantes, Cafeterías o venta al público para integrar en el ticket nuestros códigos QR En todos estos casos, **¡olvidate de crear portales de autofactura!** ## ¿Qué sigue? Ahora que conoces el funcionamiento general, continúa con: - [Autenticación](/guides/authentication) - [Guía Rápida](/guides/quickstart)