# Changelog - PixelPay Java Standalone SDK
Todos los cambios notables de este proyecto se documentarán en este archivo. Los registros de cambios son *para humanos*, no para máquinas, y la última versión es lo primero a mostrar.

El formato se basa en [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
y este proyecto se adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
Tipos de cambios: `Added`, `Changed`, `Deprecated`, `Removed`, `Fixed`, `Security`.

## [v2.5.2] - 2026-05-06
## Added
- Funciones y variables para identificar transacciones con Tap2Pay.

## [v2.5.1] - 2026-04-30
### Changed
- Se actualizó CDN para jsdelivr y unpkg

## [v2.5.0] - 2026-04-29
### Changed
- Se actualizó compilación del paquete

## [v2.4.13] - 2026-04-10
### Added
- Se agregó encriptación de datos de tarjeta.

## [v2.4.12] - 2026-03-31
### Added
- Se agregó `timeout` para esperar que se complete el methodURL de cardinal

## [v2.4.11] - 2026-03-05
### Added
- Se agregó campo `click_to_pay` a payload de 3D Secure

## [v2.4.10] - 2026-02-09
### Fixed
- Se arregló procesamiento de mensajes no deseados en Cardinal API

## [v2.4.9] - 2026-02-09
### Changed
- Se hizó ajustes de logs para errores Cardinal API

## [v2.4.8] - 2026-02-09
### Fixed
- Se arregló mensajes del banco siendo interpretados como que fueran de Cardinal

## [v2.4.7] - 2026-02-05
### Fixed
- Se agregó propiedad `data` a errores 520 de Cardinal
- Se agregó mensajes descriptivos para errores de Cardinal API

## [v2.4.6] - 2026-01-08
### Added
- Se agregó método para ejecutar callback antes de transacciones

## [v2.4.5] - 2025-10-07
### Added
- Se agregó campo `click_to_pay` a payload de 3D Secure
- Se agregó headers a settings

## [v2.4.4] - 2025-08-20
### Changed
- Se cambia dominio de `pixel-pay.com` a `pixelpay.dev`

## [v2.4.3] - 2025-07-02
### Added
- Se agregó soporte para router en Checkin/Checkout

## [v2.4.2] - 2025-06-17
### Added
- Se agregó soporte para router

## [v2.4.1] - 2025-05-20
### Added
- Se agregó soporte para autenticación de 3D Secure con Cardinal API

## [v2.4.0] - 2025-03-13
### Added
- Se agregó autenticación de 3D Secure con Cybersource

## [v2.3.2-beta.0] - 2024-12-19
### Changed
- Se modifica configuración de la función `validateStatus` de forma global a la instancia de Axios.

## [v2.3.1] - 2024-10-28
### Changed
- Se actualizó dependencias para resolver vulnerabilidades
- Se actualizó la configuración de Jest para soportar ES Modules, permitiendo compatibilidad con Axios 1.X

## [v2.3.0] - 2024-07-01
### Added
- Se agregó autenticación de 3D Secure con tokenización

## [v2.2.5] - 2024-07-24
### Fixed
- Se arregla la función `ValidateResponse` de `TransactionResult.ts`, para que no deje pasar los `InputErrorResponse`

## [v2.2.4] - 2024-04-01
### Added
- Se agregó campo `secure_payload` para transacciones

## [v2.2.3] - 2024-02-27
### Fixed
- Se arreglan códigos de estados en Nicaragua, Reino Unido, Estados Unidos, Guatemala, Panamá, Perú y Portugal

## [v2.2.2] - 2023-11-29
### Added
- Se agregó validaciones para campos de firma heredada

## [v2.2.1] - 2023-10-23
### Added
- Se agregaron campos para firma heredada.

## [v2.2.0] - 2023-09-21
### Removed
- Se eliminó lógica de encriptación

## [v2.1.3-beta.0] - 2023-08-16
### Added
- Se agregó campo de cuotas para autenticación con 3D Secure

## [v2.1.2] - 2023-08-16
### Added
- Se omiten los métodos de encriptación si la petición no lo requiere

### Changed
- En caso de fallos, se hacen reintentos para adquirir la llave pública del comercio
- En caso de fallos, se hacen reintentos para encriptar los datos de tarjeta

### Fixed
- Se corrigió caso donde reintentos de transacciones con una misma instancia de `RequestBehaviour` encripta datos múltiples veces
- Se corrigió encriptación para transacciones de 3D Secure
- Se arregló conflicto de encriptación al reutilizar instancias de `RequestBehaviour`
- Se arregló servicios de tokenización enviando fecha de expiración incorrecta si no se llenan los campos

## [v2.1.1] - 2023-08-09
### Changed
- Rollback temporal a v2.0.6

## [v2.1.0] - 2023-07-18
### Added
- Se agregó encriptación de datos de tarjeta.

## [v2.0.6] - 2023-06-09
### Added
- Se agregan campos de cuotas y puntos
- Se agrega firma de transacciones de anulación
- Se agrega función para obtener listado de formatos de teléfono y zip

## [v2.0.5] - 2022-12-13
### Fixed
- Mitigar enviar dos transacciones de manera concurrente
- Si se desea enviar más de una transacción concurrentemente, llamar el método `Transaction.withConcurrency`

## [v2.0.4] - 2022-11-04
### Fixed
- Arreglar eventos de Cardinal duplicándose en algunos casos

## [v2.0.3] - 2022-05-08
### Added
- Se agrega recoleccion de datos para garantizar 3DS EMV (v2.^)

## [v2.0.2] - 2022-05-08
### Fixed
- Se corrige el método `verifyPaymentHash` donde no se utilizaba el parámetro hash.

## [v2.0.1] - 2022-05-08
### Added
- Se agrega el method `getCybersourceFingerprint` para la integraciones con Promerica o Cybersource
- Se agrega soporte para integraciones con Bac Legacy/FAC

### Fixed
- Correción del error de compilacion con Jackson y sus anotaciones

## [v2.0.0] - 2022-04-28
### Added
- Se publica primer version de pruebas
