Issues Cerrados - UM-services/UM.tesoreria.mercadopago-service GitHub Wiki

Issues Cerrados - Servicio MercadoPago

#60: fix: improve payment methods configuration - Add explicit handling of…

Creado: 2025-05-26T23:53:50+00:00 Cerrado: 2025-05-26T23:54:29+00:00

Milestone: Payment Process

Labels: documentation, enhancement, critical

… installments and defaultInstallments - Include excludedPaymentTypes in base payment methods configuration - Update CHANGELOG with payment methods improvements - Closes #59


#59: Issue: Mejora en la configuración de métodos de pago y cuotas

Creado: 2025-05-26T23:50:44+00:00 Cerrado: 2025-05-26T23:54:30+00:00

Milestone: Payment Process

Labels: documentation, enhancement, critical

Issue: Mejora en la configuración de métodos de pago y cuotas

Descripción

Se requiere mejorar la configuración de métodos de pago en el servicio de MercadoPago para manejar de manera más explícita las cuotas y los tipos de pago excluidos, asegurando una mejor consistencia en la configuración de pagos.

Cambios Realizados

Mejoras en la Configuración de Pagos

  • Implementado manejo explícito de cuotas (installments) en la configuración de métodos de pago
  • Agregado soporte para cuotas por defecto (defaultInstallments)
  • Mejorada la configuración de tipos de pago excluidos
  • Actualizada la documentación en CHANGELOG

Detalles Técnicos

  • Modificación en PreferenceService.java:
    • Agregado manejo explícito de installments y defaultInstallments como null cuando no se permiten tarjetas de crédito
    • Incluido excludedPaymentTypes en la configuración base de métodos de pago
    • Mejorada la consistencia en la construcción de PreferencePaymentMethodsRequest

Impacto

  • Mayor control sobre la configuración de cuotas
  • Mejor manejo de tipos de pago excluidos
  • Configuración más consistente de métodos de pago
  • Mejor trazabilidad de la configuración de pagos

Tipo de Cambio

  • Mejora
  • Bug fix

Etiquetas

  • enhancement
  • payment-configuration
  • bug-fix

Relacionado con

  • Issue #57 (Mejoras en logging y configuración de TipoChequera)

Checklist

  • Código actualizado
  • Tests actualizados (si aplica)
  • Documentación actualizada
  • CHANGELOG actualizado

Notas Adicionales

Los cambios implementados mejoran la robustez de la configuración de pagos, especialmente en lo relacionado con:

  • Manejo de cuotas
  • Exclusión de métodos de pago
  • Consistencia en la configuración

Criterios de Aceptación

  • La configuración de cuotas debe ser explícita en todos los casos
  • Los tipos de pago excluidos deben aplicarse consistentemente
  • La documentación debe reflejar los cambios realizados
  • No debe haber regresiones en la funcionalidad existente

#58: feat: improve logging and TipoChequera configuration - Add emailCopia…

Creado: 2025-05-26T19:36:51+00:00 Cerrado: 2025-05-26T19:37:27+00:00

Milestone: Payment Process

Labels: documentation, enhancement

… field to TipoChequeraDto for email notifications - Add detailed logging for TipoChequeraContext and PaymentMethods - Add @Builder annotation to TipoChequeraDto - Update documentation in README and CHANGELOG - Closes #57


#57: Issue: Mejoras en logging y configuración de TipoChequera

Creado: 2025-05-26T19:34:20+00:00 Cerrado: 2025-05-26T19:37:28+00:00

Milestone: Payment Process

Labels: documentation, enhancement

Issue: Mejoras en logging y configuración de TipoChequera

Descripción

Se han implementado mejoras significativas en el manejo de logging y la configuración de TipoChequera para mejorar la trazabilidad y el manejo de errores en el servicio de MercadoPago.

Cambios Realizados

Nuevas Características

  • Agregado campo emailCopia en TipoChequeraDto para soporte de copias de email en notificaciones
  • Implementado logging detallado para TipoChequeraContext y PaymentMethods en PreferenceService
  • Agregada anotación @Builder a TipoChequeraDto para mejor construcción de objetos

Mejoras en Logging

  • Nuevo método logTipoChequeraContext para logging detallado de la configuración de tipo de chequera
  • Nuevo método logPaymentMethods para logging detallado de los métodos de pago configurados
  • Mejorado el manejo de errores en la serialización JSON de logs

Documentación

  • Actualizado CHANGELOG.md con los nuevos cambios
  • Mejorado README.md con documentación más detallada
  • Agregada sección específica de logging en la documentación

Impacto

  • Mejor trazabilidad de la configuración de pagos
  • Facilita el debugging de problemas con métodos de pago
  • Mejora en la documentación del servicio

Tipo de Cambio

  • Nueva característica
  • Mejora
  • Documentación

Etiquetas

  • enhancement
  • logging
  • documentation

Relacionado con

  • Issue #55 (Actualización de dependencias)
  • Issue #53 (Mejora en el manejo de errores)

Checklist

  • Código actualizado
  • Tests actualizados (si aplica)
  • Documentación actualizada
  • CHANGELOG actualizado
  • README actualizado

Notas Adicionales

Los cambios implementados mejoran significativamente la capacidad de debugging y monitoreo del servicio, especialmente en lo relacionado con la configuración de métodos de pago y el manejo de errores.


#56: feat(deps): actualización de dependencias y mejora en búsqueda de tar…

Creado: 2025-05-21T23:17:20+00:00 Cerrado: 2025-05-21T23:17:45+00:00

Labels: documentation, enhancement

…jetas de crédito

  • Actualización de MercadoPago SDK Java a 2.4.0

  • Actualización de Springdoc OpenAPI a 2.8.8

  • Modificación del endpoint de TipoChequeraMercadoPagoCreditCard para soportar búsqueda por tipoChequeraId y alternativaId

  • Actualización de documentación en README y CHANGELOG

  • Deprecación del endpoint /tipoChequera/{tipoChequeraId}

Closes #55


#55: Actualización de dependencias y mejora en la búsqueda de configuración de tarjetas de crédito

Creado: 2025-05-21T23:14:47+00:00 Cerrado: 2025-05-21T23:17:47+00:00

Milestone: Payment Process

Labels: enhancement

Actualización de dependencias y mejora en la búsqueda de configuración de tarjetas de crédito

Descripción

Se han realizado actualizaciones importantes en las dependencias del proyecto y se ha mejorado la funcionalidad de búsqueda de configuración de tarjetas de crédito para soportar búsquedas más específicas.

Cambios realizados

Actualizaciones de dependencias

  • Actualización de MercadoPago SDK Java de 2.2.0 a 2.4.0
  • Actualización de Springdoc OpenAPI de 2.8.6 a 2.8.8

Mejoras en la API

  • Modificación del endpoint de TipoChequeraMercadoPagoCreditCard para soportar búsqueda por tipoChequeraId y alternativaId
  • Reemplazo del endpoint /tipoChequera/{tipoChequeraId} por /unique/{tipoChequeraId}/{alternativaId}
  • Actualización del servicio de preferencias para utilizar el nuevo endpoint

Documentación

  • Actualización de badges en README.md
  • Actualización de CHANGELOG.md con los cambios realizados
  • Documentación de endpoints deprecados

Impacto

  • Mejora en la precisión de la búsqueda de configuración de tarjetas de crédito al considerar tanto el tipo de chequera como la alternativa
  • Actualización a versiones más recientes y estables de las dependencias
  • Mantenimiento de la compatibilidad con versiones anteriores mediante documentación clara de endpoints deprecados

Tipo de cambio

  • Actualización de dependencias
  • Mejora de funcionalidad
  • Documentación

Etiquetas sugeridas

  • enhancement
  • dependencies
  • api-change
  • documentation

Relacionado con

  • Issue #53 (Mejora en el manejo de errores y configuración de pagos de MercadoPago)

#54: feat: mejora en el manejo de errores y configuración de pagos de Merc…

Creado: 2025-05-07T00:01:53+00:00 Cerrado: 2025-05-07T00:02:19+00:00

Milestone: Payment Process

Labels: enhancement

…adoPago

  • Implementación de logging detallado para errores de la API

  • Eliminación del campo defaultPaymentMethodId

  • Optimización de la configuración de métodos de pago

  • Actualización de Spring Boot a 3.4.5

  • Actualización de documentación

Closes #53


#53: Mejora en el manejo de errores y configuración de pagos de MercadoPago

Creado: 2025-05-06T23:58:42+00:00 Cerrado: 2025-05-07T00:02:21+00:00

Milestone: Payment Process

Labels: bug, enhancement

Mejora en el manejo de errores y configuración de pagos de MercadoPago

Descripción

Se han realizado mejoras significativas en el servicio de MercadoPago para optimizar el manejo de errores y la configuración de métodos de pago. Los cambios incluyen una actualización de Spring Boot y mejoras en el logging de errores.

Cambios Realizados

Mejoras en el Logging de Errores

  • Implementación de logging detallado para errores de la API de MercadoPago
  • Captura y registro de códigos de estado HTTP
  • Registro de mensajes de error específicos
  • Inclusión de detalles de la solicitud que causó el error

Optimización de Configuración de Pagos

  • Eliminación del campo defaultPaymentMethodId de TipoChequeraMercadoPagoCreditCardDto
  • Simplificación de la configuración de métodos de pago excluidos
  • Mejora en la gestión de métodos de pago por tipo de chequera

Actualizaciones Técnicas

  • Actualización de Spring Boot a la versión 3.4.5
  • Mejoras en la documentación del código
  • Actualización de la documentación del proyecto (README y CHANGELOG)

Impacto

  • Mejor diagnóstico de errores en la integración con MercadoPago
  • Configuración más limpia y mantenible de métodos de pago
  • Mayor estabilidad con la última versión de Spring Boot

Pruebas Realizadas

  • Verificación de la captura correcta de errores de la API
  • Validación de la configuración de métodos de pago
  • Pruebas de integración con MercadoPago

Documentación

  • Actualización del README con nueva sección de manejo de errores
  • Actualización del CHANGELOG con los cambios realizados
  • Documentación actualizada de la configuración de tarjetas de crédito

Etiquetas Sugeridas

  • enhancement
  • documentation
  • error-handling
  • payment-configuration

#52: Eliminando default method para verificar si funciona

Creado: 2025-04-28T22:54:22+00:00 Cerrado: 2025-04-28T22:54:29+00:00

Sin descripción


#51: Nuevo intento de configurar pago con TC

Creado: 2025-04-28T19:32:39+00:00 Cerrado: 2025-04-28T19:33:03+00:00

Milestone: Payment Process

Labels: enhancement

Sin descripción


#50: feat: mejora en el manejo de errores y logging de MercadoPago - Imple…

Creado: 2025-04-27T15:20:38+00:00 Cerrado: 2025-04-27T15:21:13+00:00

Milestone: Payment Process

Labels: bug

…mentado logging detallado para errores de la API - Separado manejo de excepciones MPApiException y MPException - Agregado logging de detalles de la solicitud - Corregido uso de defaultPaymentMethodId - Closes #48


#49: feat: mejora en el manejo de errores y logging de MercadoPago - Imple…

Creado: 2025-04-27T14:42:16+00:00 Cerrado: 2025-04-27T14:42:41+00:00

Milestone: Payment Process

Labels: bug

…mentado logging detallado para errores de la API - Separado manejo de excepciones MPApiException y MPException - Agregado logging de detalles de la solicitud - Corregido uso de defaultPaymentMethodId - Closes #48


#48: Mejora en el manejo de errores y logging de MercadoPago

Creado: 2025-04-27T14:39:50+00:00 Cerrado: 2025-04-27T14:42:42+00:00

Milestone: Payment Process

Labels: bug

Mejora en el manejo de errores y logging de MercadoPago

Descripción

Se ha implementado una mejora en el manejo de errores y el sistema de logging para las interacciones con la API de MercadoPago, específicamente en el servicio de preferencias. Esto permitirá un mejor diagnóstico y resolución de problemas cuando ocurran errores en las operaciones con MercadoPago.

Cambios Realizados

  • Mejorado el manejo de excepciones en createAndLogPreference
  • Implementado logging detallado para errores de la API de MercadoPago
  • Agregado logging de detalles de la solicitud en caso de error
  • Corregido el uso del defaultPaymentMethodId para usar el valor del contexto

Detalles Técnicos

Mejoras en el Logging

  • Separación de excepciones en dos tipos:
    • MPApiException: Para errores específicos de la API
    • MPException: Para errores generales
  • Información adicional registrada:
    • Código de estado HTTP
    • Mensaje de error completo
    • Contenido de la respuesta de la API
    • Detalles de la solicitud que causó el error

Correcciones

  • Actualizado el uso de defaultPaymentMethodId para obtener el valor del contexto en lugar de usar un valor hardcodeado

Impacto

  • Mejor visibilidad de errores en producción
  • Facilidad para diagnosticar problemas con la API de MercadoPago
  • Mejor trazabilidad de las solicitudes fallidas

Pruebas

  • Verificar que los logs muestren información detallada en caso de error
  • Validar que el defaultPaymentMethodId se obtenga correctamente del contexto
  • Comprobar que los errores se manejen adecuadamente en diferentes escenarios

Documentación

  • Actualizado el logging para incluir más detalles en caso de error
  • Mejorada la documentación del manejo de errores

Labels

  • enhancement
  • logging
  • error-handling

Milestone

  • v0.1.0

#47: feat: implementación de configuración de tarjetas de crédito por tipo…

Creado: 2025-04-27T01:22:33+00:00 Cerrado: 2025-04-27T01:23:34+00:00

Milestone: Payment Process

Labels: enhancement

… de chequera - Agregado soporte para configuración de tarjetas de crédito por tipo de chequera - Integración con TipoChequeraMercadoPagoCreditCard para gestión de métodos de pago - Refactorización del servicio de preferencias - Eliminación del método checking_2024_11_12 - Actualización de documentación - Closes #45


#46: feat: implementación de configuración de tarjetas de crédito por tipo…

Creado: 2025-04-27T00:52:09+00:00 Cerrado: 2025-04-27T00:53:04+00:00

Milestone: Payment Process

Labels: enhancement

… de chequera - Agregado soporte para configuración de tarjetas de crédito por tipo de chequera - Integración con TipoChequeraMercadoPagoCreditCard para gestión de métodos de pago - Refactorización del servicio de preferencias - Eliminación del método checking_2024_11_12 - Actualización de documentación - Closes #45


#45: Implementación de configuración de tarjetas de crédito por tipo de chequera

Creado: 2025-04-27T00:49:01+00:00 Cerrado: 2025-04-27T00:53:06+00:00

Milestone: Payment Process

Labels: enhancement

Implementación de configuración de tarjetas de crédito por tipo de chequera

Descripción

Se ha implementado la funcionalidad para configurar y gestionar los métodos de pago con tarjetas de crédito a nivel de tipo de chequera. Esto permite una mayor flexibilidad en la configuración de pagos y una mejor integración con el sistema de MercadoPago.

Cambios Realizados

  • Agregado soporte para configuración de tarjetas de crédito por tipo de chequera
  • Integración con TipoChequeraMercadoPagoCreditCard para gestión de métodos de pago
  • Refactorización del servicio de preferencias para soportar la nueva configuración
  • Eliminación del método checking_2024_11_12 del CheckingService
  • Actualización de la documentación (README y CHANGELOG)

Detalles Técnicos

  • Nuevo cliente Feign: TipoChequeraMercadoPagoCreditCardClient
  • Nuevo DTO: TipoChequeraMercadoPagoCreditCardDto
  • Modificaciones en PreferenceService:
    • Integración con el nuevo cliente
    • Refactorización del método createPaymentMethodsRequest
    • Nuevo método getTipoChequeraContext
    • Actualización de la lógica de construcción de preferencias

Configuración de Tarjetas de Crédito

La configuración permite:

  • Habilitar/deshabilitar tarjetas de crédito por tipo de chequera
  • Configurar el número máximo de cuotas
  • Establecer el número de cuotas por defecto
  • Definir el método de pago predeterminado

Impacto

  • Los métodos de pago ahora son configurables por tipo de chequera
  • Se mantiene la compatibilidad con los métodos de pago existentes
  • Se mejora la flexibilidad en la configuración de pagos

Pruebas

  • Verificar la creación de preferencias con diferentes configuraciones de tarjetas de crédito
  • Validar la actualización de preferencias existentes
  • Comprobar el comportamiento con tipos de chequera sin configuración de tarjetas de crédito

Documentación

  • Actualizado README.md con la nueva configuración de tarjetas de crédito
  • Actualizado CHANGELOG.md con los cambios realizados

Labels

  • enhancement
  • feature
  • documentation

Milestone

  • v0.1.0

#44: refactor(security): externalize swagger credentials - Move credential…

Creado: 2025-04-12T20:42:47+00:00 Cerrado: 2025-04-12T20:43:16+00:00

Milestone: Payment Process

Labels: enhancement

…s from hardcoded to config properties - Add app.swagger section in bootstrap.yml - Use @Value for credential injection - Maintain default values for backward compatibility - Closes #43


#43: Externalización de credenciales de Swagger

Creado: 2025-04-12T19:43:48+00:00 Cerrado: 2025-04-12T20:43:18+00:00

Milestone: Payment Process

Labels: enhancement

Issue: Externalización de credenciales de Swagger

Descripción: Se ha modificado la configuración de seguridad de Swagger para externalizar las credenciales, eliminando los valores hardcodeados y permitiendo su configuración a través de variables de entorno.

Cambios realizados:

  1. Modificación de SwaggerSecurityConfig.java:

    • Agregado @Value para inyectar las propiedades de configuración
    • Reemplazo de valores hardcodeados por variables inyectadas
    • Actualización de las rutas de las propiedades a app.swagger.*
  2. Actualización de bootstrap.yml:

    • Agregada sección app.swagger con propiedades:
      • username: ${APP_SWAGGER_USERNAME:tesoreria}
      • password: ${APP_SWAGGER_PASSWORD:tesoreria}
    • Mantenimiento de valores por defecto para compatibilidad

Impacto:

  • Las credenciales ahora son configurables a través de variables de entorno
  • Se mantiene la compatibilidad con valores por defecto
  • No hay cambios en la funcionalidad de seguridad
  • Mejora en la seguridad al evitar credenciales hardcodeadas

Pruebas requeridas:

  1. Verificar que la aplicación inicia correctamente con valores por defecto
  2. Confirmar que las credenciales pueden ser sobrescritas mediante variables de entorno
  3. Validar que la autenticación de Swagger funciona con ambos casos

Consideraciones de seguridad:

  • Las credenciales por defecto se mantienen por compatibilidad
  • Se recomienda cambiar las credenciales en entornos de producción
  • Las variables de entorno proporcionan una capa adicional de seguridad

Documentación:

  • Actualizar documentación para incluir las nuevas variables de configuración
  • Documentar el proceso de cambio de credenciales
  • Mantener registro de las variables de entorno utilizadas

Notas adicionales:

  • La implementación mantiene la compatibilidad con versiones anteriores
  • Se utiliza el patrón de configuración existente en el proyecto
  • Las variables siguen el estándar de nomenclatura del proyecto

#42: feat(security): implement security for swagger endpoints - Add Spring…

Creado: 2025-04-12T19:19:05+00:00 Cerrado: 2025-04-12T19:19:45+00:00

Milestone: Payment Process

Labels: enhancement

… Security dependency - Create SwaggerSecurityConfig with basic auth - Protect only swagger-ui and api-docs endpoints - Set credentials: user/pass = tesoreria - Use modern Spring Security 6.x APIs - Closes #41


#41: Implementación de Seguridad para Endpoints de Swagger

Creado: 2025-04-12T19:12:39+00:00 Cerrado: 2025-04-12T19:19:46+00:00

Milestone: Payment Process

Labels: enhancement

Issue: Implementación de Seguridad para Endpoints de Swagger

Descripción: Se ha implementado una configuración de seguridad específica para proteger los endpoints de Swagger en la aplicación. Esta implementación asegura que solo los endpoints relacionados con la documentación de la API requieran autenticación, mientras que el resto de la aplicación permanece sin cambios.

Cambios realizados:

  1. Se agregó la dependencia de Spring Security al proyecto
  2. Se creó la clase SwaggerSecurityConfig con la siguiente configuración:
    • Protección específica para rutas /swagger-ui/** y /v3/api-docs/**
    • Autenticación básica HTTP
    • Usuario: tesoreria
    • Contraseña: tesoreria
    • Rol: ADMIN

Impacto:

  • Los endpoints de Swagger ahora requieren autenticación
  • El resto de la aplicación no se ve afectado
  • Se mantiene la funcionalidad existente de todos los demás endpoints

Pruebas requeridas:

  1. Verificar que se puede acceder a la interfaz de Swagger usando las credenciales
  2. Confirmar que el resto de los endpoints de la aplicación funcionan sin autenticación
  3. Validar que los intentos de acceso sin credenciales a Swagger son rechazados

Consideraciones de seguridad:

  • Las credenciales están configuradas en memoria
  • Se utiliza BCrypt para el hashing de contraseñas
  • La autenticación básica HTTP está implementada de manera segura

Documentación:

  • Se debe actualizar la documentación para incluir las credenciales de acceso a Swagger
  • Se recomienda mantener un registro de las credenciales en un lugar seguro

Notas adicionales:

  • La implementación utiliza las APIs más recientes de Spring Security 6.x
  • Se ha evitado el uso de métodos deprecados
  • La configuración es específica y no afecta al resto de la aplicación

#40: feat(checking): agrega verificación masiva de pagos y actualiza SDK

Creado: 2025-04-05T21:39:31+00:00 Cerrado: 2025-04-05T21:40:03+00:00

Milestone: Payment Process

Labels: documentation, enhancement

  • Actualiza MercadoPago SDK a 2.2.0

  • Agrega nuevo endpoint /checking/11/12/2024

  • Implementa verificación masiva de ~160 pagos

  • Integra PaymentService en CheckingService

  • Mejora logging de operaciones

BREAKING CHANGE: La actualización del SDK puede requerir ajustes en la integración

Cambios técnicos:

  • Nuevo constructor en CheckingService con PaymentService

  • Implementación de checking_2024_11_12()

  • Procesamiento de IDs de MercadoPago en formato Long

  • Respuesta void con estado 200 OK en nuevo endpoint

Pruebas realizadas:

  • Verificación de compatibilidad con SDK 2.2.0

  • Pruebas de endpoint de verificación masiva

  • Validación de logging

  • Verificación de procesamiento de IDs

  • Pruebas de manejo de errores

Closes #39


#39: Actualización de SDK MercadoPago y Nueva Funcionalidad de Verificación

Creado: 2025-04-05T21:33:59+00:00 Cerrado: 2025-04-05T21:40:05+00:00

Milestone: Payment Process

Labels: documentation, enhancement

Actualización de SDK MercadoPago y Nueva Funcionalidad de Verificación

Cambios en Dependencias

  • MercadoPago SDK: 2.1.29 -> 2.2.0

Nuevas Funcionalidades

Verificación Masiva de Pagos

  • Nuevo endpoint: /api/tesoreria/mercadopago/checking/11/12/2024
  • Implementación del método checking_2024_11_12() en CheckingService
  • Capacidad de verificar 160+ pagos en lote
  • Integración con PaymentService para recuperación y guardado de pagos

Mejoras en CheckingService

  • Inyección de PaymentService para manejo de verificaciones
  • Logging mejorado para seguimiento de operaciones
  • Procesamiento asíncrono de verificaciones masivas

Cambios Técnicos

  1. Modificaciones en CheckingController:

    • Nuevo endpoint GET para verificación de pagos 2024
    • Respuesta void con estado 200 OK
  2. Actualizaciones en CheckingService:

    • Nuevo constructor con PaymentService
    • Implementación de verificación masiva
    • Manejo de IDs de MercadoPago en formato Long

Impacto

  • No requiere cambios en base de datos
  • Compatible con la versión actual del sistema
  • Mejora en el proceso de verificación de pagos

Pruebas Necesarias

  • Verificar funcionamiento con SDK 2.2.0
  • Probar endpoint de verificación masiva
  • Validar logging de operaciones
  • Confirmar procesamiento correcto de todos los IDs
  • Verificar manejo de errores

Documentación

  • Actualizar versión de SDK en README
  • Documentar nuevo endpoint en Swagger
  • Actualizar CHANGELOG

Notas de Implementación

  • La actualización del SDK debe realizarse primero
  • La verificación masiva procesa ~160 pagos
  • Se mantiene compatibilidad con endpoints existentes

Dependencias

  • Requiere MercadoPago SDK 2.2.0
  • Necesita acceso a API de MercadoPago
  • Integración con servicio de pagos existente

/label enhancement, documentation


#38: docs: actualiza documentación y agrega changelog

Creado: 2025-03-29T15:52:29+00:00 Cerrado: 2025-03-29T15:53:26+00:00

Milestone: Keep dependencies versions updated

Labels: documentation, enhancement

  • Actualiza versiones de dependencias en README

  • Agrega nueva variable de entorno APP_SECRET_KEY

  • Agrega sección de métodos de pago

  • Crea archivo CHANGELOG.md con formato Keep a Changelog

Versiones actualizadas:

  • Spring Boot: 3.4.3 -> 3.4.4

  • Spring Cloud: 2024.0.0 -> 2024.0.1

  • Springdoc OpenAPI: 2.8.6

Métodos de pago:

  • Aceptados: transferencias bancarias y efectivo

  • Excluidos: tarjetas de crédito, prepagas y tickets

Closes #37


#37: Actualización de Documentación y Versiones

Creado: 2025-03-29T15:47:46+00:00 Cerrado: 2025-03-29T15:53:28+00:00

Milestone: Keep dependencies versions updated

Labels: documentation, enhancement

Actualización de Documentación y Versiones

Cambios en Documentación

  • Actualización de versiones de dependencias en README.md
  • Agregado de nueva variable de entorno APP_SECRET_KEY
  • Nueva sección de Métodos de Pago en README.md

Detalles de Cambios

Versiones Actualizadas

  • Spring Boot: 3.4.3 -> 3.4.4
  • Spring Cloud: 2024.0.0 -> 2024.0.1
  • Springdoc OpenAPI: Agregada versión específica 2.8.6

Nueva Sección de Métodos de Pago

Se ha agregado una sección que detalla:

  • Métodos de pago aceptados:
    • Transferencias bancarias
    • Pago en efectivo
  • Métodos de pago excluidos:
    • Tarjetas de crédito
    • Tarjetas prepagas
    • Pagos con ticket

Configuración

  • Agregada nueva variable de entorno requerida:
    • APP_SECRET_KEY: Para validación de webhooks

Motivación

  • Mantener la documentación actualizada con las últimas versiones de dependencias
  • Mejorar la claridad sobre los métodos de pago soportados
  • Documentar todos los requisitos de configuración

Impacto

  • No hay cambios en la funcionalidad del servicio
  • Mejora en la documentación para desarrolladores y operadores
  • Mayor claridad en la configuración requerida

Pruebas Necesarias

  • Verificar que la documentación refleja correctamente las versiones actuales
  • Confirmar que la nueva sección de métodos de pago es precisa
  • Validar que todas las variables de entorno requeridas están documentadas

Dependencias

  • No hay dependencias con otros servicios
  • Requiere verificación de la documentación de MercadoPago

Notas Adicionales

Los cambios son puramente documentales y no afectan el funcionamiento del servicio.


#36: feat: actualiza dependencias y excluye tarjetas prepagas

Creado: 2025-03-25T23:56:15+00:00 Cerrado: 2025-03-25T23:57:22+00:00

Milestone: Payment Process

Labels: enhancement, critical

  • Spring Boot: 3.4.3 -> 3.4.4
  • Spring Cloud: 2024.0.0 -> 2024.0.1
  • Springdoc OpenAPI: 2.8.5 -> 2.8.6
  • Agrega prepaid_card a métodos de pago excluidos

Closes #35


#35: Actualización de Dependencias y Exclusión de Tarjetas Prepagas

Creado: 2025-03-25T23:54:22+00:00 Cerrado: 2025-03-25T23:57:24+00:00

Milestone: Payment Process

Labels: enhancement, critical

Actualización de Dependencias y Exclusión de Tarjetas Prepagas

Cambios en Dependencias

  • Spring Boot: 3.4.3 -> 3.4.4
  • Spring Cloud: 2024.0.0 -> 2024.0.1
  • Springdoc OpenAPI: 2.8.5 -> 2.8.6

Cambios Funcionales

Se ha agregado la exclusión de tarjetas prepagas como método de pago en MercadoPago:

  • Se agregó prepaid_card a la lista de tipos de pago excluidos en PreferenceService

Motivación

  • Mantener las dependencias actualizadas para aprovechar las últimas mejoras y correcciones de seguridad
  • Prevenir pagos con tarjetas prepagas siguiendo las políticas de la universidad

Impacto

  • No se requieren cambios en la base de datos
  • No hay cambios en la API
  • Los usuarios no podrán utilizar tarjetas prepagas como método de pago

Pruebas Necesarias

  • Verificar que la integración con MercadoPago sigue funcionando correctamente
  • Confirmar que las tarjetas prepagas están efectivamente bloqueadas
  • Validar que los métodos de pago permitidos siguen funcionando

Dependencias

  • Requiere acceso al ambiente de pruebas de MercadoPago
  • No hay dependencias con otros servicios

Notas Adicionales

La actualización de las dependencias es compatible con la versión actual de Java 21.


#34: issue pipeline prueba

Creado: 2025-03-21T16:45:58+00:00 Cerrado: 2025-03-25T23:53:25+00:00

Sin descripción


#33: docs(readme): enhance documentation and update Spring Boot

Creado: 2025-02-22T09:49:07+00:00 Cerrado: 2025-02-22T09:49:39+00:00

Milestone: Keep dependencies versions updated

Labels: documentation, enhancement

Improves project documentation and dependencies:

  • Add author information
  • Document available endpoints (Swagger/OpenAPI)
  • Detail development requirements
  • Update technology stack list
  • Upgrade Spring Boot from 3.4.2 to 3.4.3

These changes improve project onboarding and maintainability.

Closes #32


#32: Mejorar documentación y actualizar Spring Boot

Creado: 2025-02-22T09:46:52+00:00 Cerrado: 2025-02-22T09:49:40+00:00

Milestone: Keep dependencies versions updated

Labels: documentation, enhancement

Mejorar documentación y actualizar Spring Boot

Descripción

Se requiere mejorar la documentación del README y actualizar la versión de Spring Boot para mantener el proyecto al día.

Cambios Necesarios

  1. Agregar nuevas secciones al README:

    • Información del autor
    • Documentación de endpoints (Swagger/OpenAPI)
    • Requisitos detallados de desarrollo
    • Lista actualizada de tecnologías
  2. Actualizar dependencias:

    • Spring Boot de 3.4.2 a 3.4.3

Beneficios

  • Mejor documentación para nuevos desarrolladores
  • Información más clara sobre endpoints disponibles
  • Requisitos de desarrollo explícitos
  • Dependencias actualizadas

Testing

  • Verificar compilación con Spring Boot 3.4.3
  • Validar enlaces en documentación
  • Comprobar acceso a Swagger UI
  • Verificar formato markdown

Labels

  • documentation
  • dependencies
  • enhancement

#31: refactor(logs): improve payment traceability in logs

Creado: 2025-02-21T10:46:44+00:00 Cerrado: 2025-02-21T10:47:19+00:00

Milestone: Payment Process

Labels: documentation, enhancement

Enhances log messages in retrieveAndSavePayment method:

  • Add payment ID to initial debug log for better tracing
  • Change error log to debug level for expected payment errors
  • Include payment ID in error messages
  • Maintain consistent log format

These changes improve debugging capabilities and payment tracking.

Closes #30


#30: Mejorar mensajes de log para mejor trazabilidad de pagos

Creado: 2025-02-21T10:45:19+00:00 Cerrado: 2025-02-21T10:47:20+00:00

Milestone: Fix & Clean

Labels: documentation, enhancement

Mejorar mensajes de log para mejor trazabilidad de pagos

Descripción

Se necesita mejorar los mensajes de log en el método retrieveAndSavePayment para facilitar el seguimiento y debugging de pagos específicos.

Cambios Necesarios

En retrieveAndSavePayment:

log.debug("Processing PaymentService.retrieveAndSavePayment");
log.debug("Processing PaymentService.retrieveAndSavePayment for {}", dataId);

En el bloque catch:

log.error("Error getting payment: {}", e.getMessage());
log.debug("Error getting payment for {}: {}", dataId, e.getMessage());

Motivación

  • Facilitar el seguimiento de pagos específicos incluyendo el ID en los logs
  • Cambiar nivel de log de error a debug para errores esperados
  • Mejorar la capacidad de debugging en producción
  • Mantener consistencia en el formato de logs

Beneficios

  • Mejor trazabilidad de pagos individuales
  • Logs más informativos y específicos
  • Reducción de ruido en logs de error
  • Facilita el diagnóstico de problemas

Testing

  • Verificar que los nuevos mensajes de log incluyen el ID del pago
  • Comprobar que los errores se registran correctamente en nivel debug
  • Validar la consistencia del formato de logs

Labels

  • enhancement
  • logging
  • debugging

#29: chore(logs): standardize logs and update SpringDoc OpenAPI

Creado: 2025-02-20T10:24:59+00:00 Cerrado: 2025-02-20T10:25:17+00:00

Milestone: Payment Process

Labels: enhancement

Improves logging and dependencies:

  • Standardize log messages in PaymentService for better traceability
    • Add class name prefix to all log messages
    • Make before/after states more explicit
    • Consistent format across all methods
  • Update SpringDoc OpenAPI from 2.8.4 to 2.8.5

These changes improve debugging capabilities and keep dependencies up to date.

Closes #28


#28: Mejorar logs y actualizar dependencia SpringDoc OpenAPI

Creado: 2025-02-20T10:22:08+00:00 Cerrado: 2025-02-20T10:25:19+00:00

Milestone: Payment Process

Labels: documentation, enhancement

Mejorar logs y actualizar dependencia SpringDoc OpenAPI

Descripción

Se requieren dos mejoras:

  1. Estandarizar los mensajes de log en PaymentService para mejor trazabilidad
  2. Actualizar SpringDoc OpenAPI de 2.8.4 a 2.8.5

Cambios en Logs

Antes

log.debug("Processing retrieveAndSavePayment");
log.debug("Processing processPaymentContext");
log.debug("Processing updateMercadoPagoContext");
log.debug("Antes");
log.debug("Después");

Después

log.debug("Processing PaymentService.retrieveAndSavePayment");
log.debug("Processing PaymentService.processPaymentContext");
log.debug("Processing PaymentService.updateMercadoPagoContext");
log.debug("PaymentService.updateMercadoPagoContext.before");
log.debug("PaymentService.updateMercadoPagoContext.after");

Actualización de Dependencia

<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.8.5</version>
</dependency>

Beneficios

  • Mejor trazabilidad en los logs
  • Identificación más clara del origen de los mensajes
  • Actualización a última versión estable de SpringDoc
  • Mantiene consistencia en el formato de logs

Testing

  • Verificar que los logs son claros y útiles para debugging
  • Comprobar que la documentación OpenAPI sigue funcionando correctamente

Labels

  • enhancement
  • logging
  • dependencies

#27: feat(payment): add functionality to process approved payments without…

Creado: 2025-02-18T23:46:02+00:00 Cerrado: 2025-02-18T23:46:26+00:00

Milestone: Fix & Clean

Labels: bug, enhancement

… ChequeraPago

Implements new functionality to handle approved payments that weren't properly processed and don't have an associated ChequeraPago:

  • New endpoint in PaymentController to trigger the fix
  • New method in MercadoPagoContextClient to find unprocessed payments
  • New service method to process and update each payment
  • Added logging for better tracking

This ensures all approved payments are properly registered in the system.

Closes #26


#26: Agregar funcionalidad para procesar pagos aprobados sin ChequeraPago

Creado: 2025-02-18T23:41:02+00:00 Cerrado: 2025-02-18T23:46:28+00:00

Milestone: Fix & Clean

Labels: bug, enhancement

Agregar funcionalidad para procesar pagos aprobados sin ChequeraPago

Descripción

Se necesita implementar una funcionalidad para procesar pagos que fueron aprobados pero que no tienen un ChequeraPago asociado. Esto permitirá corregir inconsistencias en el sistema donde existen pagos aprobados que no fueron correctamente imputados.

Cambios Necesarios

  1. Nuevo endpoint en PaymentController:

    • GET /fix/payment/approved/without/chequera/pago
    • Método fixPaymentApprovedWithoutChequeraPago()
  2. Nuevo método en MercadoPagoContextClient:

    • GET /pagos/sin/imputar
    • Método findAllSinImputar()
  3. Nueva funcionalidad en PaymentService:

    • Método fixPaymentApprovedWithoutChequeraPago()
    • Inyección de MercadoPagoContextClient

Detalles Técnicos

  • El servicio buscará todos los pagos aprobados sin imputar
  • Por cada pago encontrado:
    • Se registrará en los logs
    • Se procesará usando processApprovedPayment
    • Se actualizará el contexto con el ChequeraPago correspondiente

Testing

  • Verificar la correcta obtención de pagos sin imputar
  • Validar el procesamiento correcto de cada pago
  • Comprobar la actualización del contexto
  • Verificar logs de seguimiento

Labels

  • enhancement
  • fix
  • payment-processing
  • critical

#25: docs(pages): add automatic documentation with GitHub Pages and Wiki

Creado: 2025-02-15T12:30:57+00:00 Cerrado: 2025-02-15T12:32:16+00:00

Milestone: Documentación

Labels: documentation, enhancement

Implements automatic documentation system including:

  • GitHub Pages generation with Jekyll
  • Automatic Wiki updates from issues/milestones
  • Python scripts for documentation generation
  • Custom service banner
  • Cache and validation dependencies

Added:

  • pages.yml workflow
  • Python scripts for docs/wiki generation
  • Jekyll configuration
  • Updated banner.txt
  • New Spring Boot dependencies

Closes #24


#24: Agregar documentación automática con GitHub Pages y Wiki

Creado: 2025-02-15T12:27:29+00:00 Cerrado: 2025-02-15T12:32:18+00:00

Milestone: Documentación

Labels: documentation, enhancement

Agregar documentación automática con GitHub Pages y Wiki

Descripción

Se requiere implementar un sistema de documentación automática que incluya:

  • Generación de GitHub Pages
  • Actualización automática de Wiki
  • Integración con issues y milestones
  • Banner personalizado del servicio

Cambios Necesarios

  1. Nuevo workflow de GitHub Actions para Pages
  2. Scripts Python para generación de documentación
  3. Configuración de Jekyll para Pages
  4. Actualización del banner del servicio
  5. Nuevas dependencias en pom.xml para caché y validación

Detalles Técnicos

  • Workflow se ejecuta en:
    • Push a main
    • Cambios en issues/milestones
    • Cron diario
    • Manual trigger
  • Scripts Python para:
    • Fetch de datos de GitHub
    • Generación de docs
    • Actualización de wiki
  • Configuración Jekyll con tema Cayman
  • Nuevas dependencias Spring Boot:
    • validation
    • cache
    • caffeine

Testing

  • Verificar generación correcta de Pages
  • Comprobar actualización automática de Wiki
  • Validar integración con issues/milestones
  • Probar triggers del workflow

Labels

  • documentation
  • enhancement
  • github-pages
  • wiki

#23: chore(deps): update Spring Boot to 3.4.2 and OpenAPI to 2.8.4

Creado: 2025-01-31T19:43:22+00:00 Cerrado: 2025-01-31T19:43:49+00:00

Milestone: Keep dependencies versions updated

Labels: enhancement

Update project dependencies to their latest stable versions:

  • Spring Boot from 3.4.1 to 3.4.2
  • SpringDoc OpenAPI UI from 2.7.0 to 2.8.4

These updates include security patches and performance improvements. All tests have been executed and functionality remains stable.

Closes #22


#22: Actualizar dependencias de Spring Boot y OpenAPI

Creado: 2025-01-31T19:38:56+00:00 Cerrado: 2025-01-31T19:39:07+00:00

Milestone: Keep dependencies versions updated

Labels: enhancement

Descripción

Se requiere actualizar las siguientes dependencias del proyecto:

  • Spring Boot de 3.4.1 a 3.4.2
  • SpringDoc OpenAPI UI de 2.7.0 a 2.8.4

Motivación

  • Mantener el proyecto actualizado con las últimas versiones estables
  • Incorporar correcciones de seguridad y mejoras de rendimiento
  • Asegurar compatibilidad con las últimas características

Cambios Específicos

<!-- Spring Boot -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.4.2</version> <!-- Actualizado desde 3.4.1 -->
</parent>
<!-- OpenAPI -->
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.8.4</version> <!-- Actualizado desde 2.7.0 -->
</dependency>

Testing

  • Ejecutar suite completa de pruebas
  • Verificar que la documentación OpenAPI se genera correctamente
  • Validar que todas las funcionalidades existentes siguen operando normalmente

Changelog

Labels

  • dependencies
  • enhancement
  • spring-boot
  • openapi

#21: build(deps): bump spring-boot-starter-parent from 3.4.0 to 3.4.1

Creado: 2024-12-28T20:26:49+00:00 Cerrado: 2024-12-28T20:27:00+00:00

Sin descripción


#20: Actualización de Spring Boot a la versión 3.4.1

Creado: 2024-12-28T20:25:08+00:00 Cerrado: 2024-12-28T20:27:01+00:00

Labels: enhancement

📦 Actualización de Spring Boot a la versión 3.4.1

Descripción

Actualización de la versión de Spring Boot de 3.4.0 a 3.4.1 en el archivo pom.xml.

Cambios realizados

  • Se modificó la versión del spring-boot-starter-parent de 3.4.0 a 3.4.1

Motivación

Mantener el proyecto actualizado con la última versión de Spring Boot para beneficiarnos de:

  • Correcciones de bugs
  • Mejoras de seguridad
  • Optimizaciones de rendimiento

Tipo de cambio

  • Actualización de dependencia
  • Nueva funcionalidad
  • Corrección de bug
  • Documentación

Checklist

  • Ejecutar suite de tests
  • Verificar que la aplicación inicia correctamente
  • Revisar logs en busca de errores
  • Actualizar documentación si es necesario

Referencias


#19: fix(payment): use transactionAmount instead of totalPaidAmount

Creado: 2024-12-15T20:37:19+00:00 Cerrado: 2024-12-15T20:37:43+00:00

The payment amount was being taken from totalPaidAmount which is an internal MercadoPago field. Changed to use transactionAmount which represents the actual transaction amount.

BREAKING CHANGE: Payment amount calculation changed from totalPaidAmount to transactionAmount


#18: Corregir campo de importe pagado en integración con MercadoPago

Creado: 2024-12-15T20:35:21+00:00 Cerrado: 2024-12-15T20:37:44+00:00

Labels: bug, mercadopago, critical

Corregir campo de importe pagado en integración con MercadoPago

Descripción

Actualmente, el servicio está tomando el importe pagado desde totalPaidAmount del objeto transactionDetails de MercadoPago, cuando debería utilizar transactionAmount. El campo totalPaidAmount es un dato interno de MercadoPago que puede no reflejar el monto real de la transacción.

Problema

El uso de totalPaidAmount puede llevar a inconsistencias en los montos registrados, ya que:

  • Es un campo interno de MercadoPago
  • Puede incluir ajustes o cálculos internos que no corresponden al monto real de la transacción
  • No representa el monto original de la operación

Solución

Modificar PaymentService.java para utilizar payment.getTransactionAmount() en lugar de payment.getTransactionDetails().getTotalPaidAmount().

// Antes
context.setImportePagado(payment.getTransactionDetails().getTotalPaidAmount());

// Después
context.setImportePagado(payment.getTransactionAmount());

Impacto

  • Mejora la precisión en el registro de los montos de las transacciones
  • Asegura consistencia con el monto original de la operación
  • Evita posibles discrepancias en la conciliación de pagos

Testing

  • Verificar que los montos registrados coincidan con los montos originales de las transacciones
  • Realizar pruebas con diferentes tipos de pagos para asegurar la correcta captura del importe

Referencias

Labels

  • bug
  • integration
  • mercadopago
  • critical

#17: Desplazamiento del vencimiento 30 horas respecto del original

Creado: 2024-12-09T09:01:46+00:00 Cerrado: 2024-12-09T09:01:53+00:00

Sin descripción


#16: Upgrading versions spring boot 3.4.0 - spring cloud 2024.0.0 - spring…

Creado: 2024-12-06T07:48:35+00:00 Cerrado: 2024-12-06T07:48:42+00:00

…doc 2.7.0


#15: Agregado de schedule para chequeo de los enlaces

Creado: 2024-12-02T09:36:45+00:00 Cerrado: 2024-12-02T09:36:51+00:00

Sin descripción


#14: Agregado del chequeo de todos los enlaces activos de MP

Creado: 2024-12-02T08:44:58+00:00 Cerrado: 2024-12-02T08:46:03+00:00

Sin descripción


#13: Upgrading versions

Creado: 2024-12-01T16:38:43+00:00 Cerrado: 2024-12-01T16:38:52+00:00

Sin descripción


#12: Cambio en el expirationDateTo para que tome las 0 horas del día sigui…

Creado: 2024-11-30T15:02:27+00:00 Cerrado: 2024-11-30T15:02:36+00:00

…ente del vencimiento


#11: Cambios en la impresión del PDF y en la estructura del correo

Creado: 2024-11-29T00:16:46+00:00 Cerrado: 2024-11-29T00:16:53+00:00

Sin descripción


#10: Cambios para reutilizar el mismo enlace y evitar inconvenientes con p…

Creado: 2024-11-23T15:53:34+00:00 Cerrado: 2024-11-23T15:53:41+00:00

…agos duplicados


#9: Agregado de UNIVMENDOZA al statement_descriptor y eclusión de tickets

Creado: 2024-11-19T16:21:00+00:00 Cerrado: 2024-11-19T16:21:08+00:00

Sin descripción


#8: Separación de processPaymentContext

Creado: 2024-11-16T15:36:14+00:00 Cerrado: 2024-11-16T15:36:22+00:00

Sin descripción


#7: Processing Internal Payment

Creado: 2024-11-14T22:30:06+00:00 Cerrado: 2024-11-14T22:30:12+00:00

Sin descripción


#6: Cambio en update de MercadoPagoContext

Creado: 2024-11-14T21:18:45+00:00 Cerrado: 2024-11-14T21:18:52+00:00

Sin descripción


#5: Adding debug messages

Creado: 2024-11-14T09:20:59+00:00 Cerrado: 2024-11-14T09:21:06+00:00

Sin descripción


#4: Upgrading versions

Creado: 2024-11-14T00:02:54+00:00 Cerrado: 2024-11-14T00:03:00+00:00

Sin descripción


#3: Agregado de actualización de activo cuando se paga o se rechaza y pas…

Creado: 2024-11-12T18:51:38+00:00 Cerrado: 2024-11-12T18:51:46+00:00

…o a modo binario


#2: Agregado al contexto de MP de los campos de acreditación y status, má…

Creado: 2024-11-11T18:12:48+00:00 Cerrado: 2024-11-11T18:12:57+00:00

…s el cambio de la fecha de vencimiento y guardado del id del pago de la chequera


#1: 2024 10 30 listening hooks

Creado: 2024-11-11T11:48:48+00:00 Cerrado: 2024-11-11T11:48:56+00:00

Sin descripción


⚠️ **GitHub.com Fallback** ⚠️