# Introducción y modelo de integración

La solución Pinpad Getnet es una aplicación de pago especializada desarrollada para terminales **Newland N750P**. Esta aplicación transforma el dispositivo en un periférico de pago de alto rendimiento, permitiendo procesar pagos con tarjeta mediante banda magnética, chip y tecnologías contactless, además de generar códigos QR dinámicos.

La solución se comunica con un **Sistema Host** a través de una interfaz de puerto serie. Mediante esta conexión, la aplicación recibe comandos estandarizados, gestiona las interacciones físicas del hardware (como la lectura de una tarjeta o la captura de un PIN) y devuelve respuestas formateadas con los datos necesarios de la transacción.

## Modelo general de integración

El modelo de integración define el flujo coordinado entre el titular de la tarjeta, el Pinpad, el Sistema Host y la autorizadora financiera.

1. **Requerimiento (Host Request)**: El Sistema Host inicializa la transacción y formatea un comando de requerimiento. Este payload se envía al terminal a través de la interfaz serie.
2. **Interacción**: El Pinpad recibe el comando y gestiona la interacción física, solicitando al usuario la introducción de la tarjeta o mostrando un código QR.
3. **Captura**: El titular de la tarjeta inserta, pasa o aproxima su tarjeta. El Pinpad captura los datos sensibles y, si es necesario, solicita un PIN utilizando su teclado seguro.
4. **Recuperación de Datos**: El Pinpad devuelve los datos procesados al Sistema Host.
5. **Autorización**: El Sistema Host se comunica con la **Autorizadora** (Switch/Banco) para aprobar o rechazar la solicitud.
6. **Finalización**: El Sistema Host reenvía la respuesta de la autorizadora al Pinpad. Si la transacción ha sido una operación **EMV con contacto (Chip)**, el Pinpad utiliza estos datos para realizar el "Second Generate AC" para finalizar la transacción.

## Arquitectura de software interna

El Pinpad Getnet se basa en una arquitectura modular compuesta por bibliotecas especializadas y componentes que gestionan el ciclo de vida del pago.

* **`SerialCom` (Biblioteca de Comunicación Serie)**: Una biblioteca `.aar` reutilizable que proporciona una interfaz unificada para gestionar el flujo de datos brutos del puerto serie entre el terminal y el Sistema Host.
* **`HandlerCommands` (Procesador de Comandos)**: Este módulo gestiona el procesamiento de los comandos recibidos del Host. Funciona mediante su propia máquina de estados interna para validar los tipos de comandos (ej: Y19, Y02) y activar la lógica adecuada.
* **`Transaction` (Estado de la Transacción)**: Un módulo centralizado que almacena el estado actual, los importes y los metadatos de la transacción en curso para garantizar informes de datos consistentes.
* **`CardReader` & `EmvL3Flow` (Lógica de Hardware)**: El `CardReader` gestiona la detección física de la tarjeta en todas las interfaces. Una vez detectada, el módulo `EmvL3Flow` ejecuta los complejos pasos del protocolo EMV L3, incluyendo la autenticación de la tarjeta y la selección de la aplicación.
* **`UI/UX` & `PinEntryActivity` (Interfaz de Usuario)**: `UI/UX` gestiona la navegación visual. Cuando se requiere un PIN, el `EmvL3Flow` activa la `PinEntryActivity`, que toma el control exclusivo del teclado seguro del terminal para capturar de forma segura la entrada del usuario.

## Próximos pasos

Para comenzar su integración:

1. Revise el [**Glosario**](/es/host-to-host/glossary) para comprender los formatos de mensajes y la terminología específicos.
2. Siga la guía de [**Configuración del Entorno**](https://docs.globalgetnet.com/es/products/in-store-payments/host-to-host?doc=h2h-environment-setup\&section=qhv6nzspm4fa7zajc43yr3ka) para preparar su terminal Newland N750P.