El gestor de pago "MercadoPago" no se encuentra activado

Buenos días, estoy tratando de agregar mercado pago a Sanaviron Quilmes. Elijo la opción de pago ‘mercado pago’ y cuando pongo pagar me sale esto

Hola Micaela,

¿ Tienen activo el gestor de pago Mercado Pago en GCO en el archivo
gco/config/config.ini ?

Tienen que tener en 1 el valor de activo y configurada las credenciales correspondientes.

; Credenciales de la API de Mercado Pago
[mercado_pago]
; En la variable activo indicar "1" solo con las credenciales configuradas o "0" cuando no este disponible.
activo = "1"

......

Antes de instalar o actualizar se tiene que configurar las variables de entorno con los datos de las credenciales de Mercado Pago como se indica en la documentación. https://documentacion.siu.edu.ar/wiki/SIU-Sanaviron-Quilmes/version2.6.0/mercado.pago

Saludos,

Me falto eso. Y ahora nose que me podria estar faltando configurar. Porq cuando Pago me dirige a
Captura desde 2024-10-10 10-02-58
Pero segun los logs de GCO

[2024-10-10T09:54:47.856530-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"GET_sq_uv_consumos_externos_token","route_parameters":{"_controller":"sq_uv_api:get_consumo_externo","token":"93298bc0-09f4-4bf0-91df-d853a2bc476e","_route":"GET_sq_uv_consumos_externos_token"},"request_uri":"http://170.210.203.121/sq_pagos_backend/sq_uv/consumos_externos/93298bc0-09f4-4bf0-91df-d853a2bc476e","method":"GET"} []
[2024-10-10T09:54:47.857306-03:00] SQ-GCO.DEBUG: > GET /sq_pagos_backend/sq_uv/consumos_externos/93298bc0-09f4-4bf0-91df-d853a2bc476e [] []
[2024-10-10T09:54:48.202084-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-10-10T09:54:48.816401-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"GET_sq_uv_importe_prog_ventas_convenios_id_programacion_venta_convenios","route_parameters":{"_controller":"sq_uv_api:get_importe_prog_ventas_convenios","convenios":false,"id_programacion_venta":"8","_route":"GET_sq_uv_importe_prog_ventas_convenios_id_programacion_venta_convenios"},"request_uri":"http://170.210.203.121/sq_pagos_backend/sq_uv/importe_prog_ventas_convenios/8","method":"GET"} []
[2024-10-10T09:54:48.816711-03:00] SQ-GCO.DEBUG: > GET /sq_pagos_backend/sq_uv/importe_prog_ventas_convenios/8 [] []
[2024-10-10T09:54:49.066072-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-10-10T09:54:54.052604-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"POST_mercado_pago_consumo","route_parameters":{"_controller":"mercado_pago:consumo","_route":"POST_mercado_pago_consumo"},"request_uri":"http://170.210.203.121/sq_pagos_backend/mercado_pago/consumo","method":"POST"} []
[2024-10-10T09:54:54.053075-03:00] SQ-GCO.DEBUG: > POST /sq_pagos_backend/mercado_pago/consumo [] []
[2024-10-10T09:54:55.118212-03:00] SQ-GCO.DEBUG: < 201 [] []

Y los logs de ACADEMICO

[2024-10-10T09:54:36.703471-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_solicitudes_consumos_externos::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:41.202767-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_servicios_instancias_valorizaciones::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:41.444291-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_servicios_instancias_valorizaciones::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:41.661819-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_solicitudes_consumos_externos::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:45.690807-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_solicitudes_consumos_externos::post_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:46.151389-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_servicios_instancias_valorizaciones::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:46.419343-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_servicios_instancias_valorizaciones::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:46.738248-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_solicitudes_consumos_externos::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:46.945967-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_solicitudes_consumos_externos::get_list - REMOTE_ADDR:170.210.203.109 [] []
[2024-10-10T09:54:48.078581-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_consumos_externos::get - REMOTE_ADDR:127.0.0.1 [] []
[2024-10-10T09:54:49.014791-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_importes_prog_ventas_convenios::get_list - REMOTE_ADDR:127.0.0.1 [] []
[2024-10-10T09:54:54.256153-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_consumos_externos::post_list - REMOTE_ADDR:127.0.0.1 [] []
[2024-10-10T09:54:54.256507-03:00] SQ-Academico-Rest.INFO: RECURSO CONSUMOS EXTERNOS - POST: Registrar un consumo: array (   'token' => '93298bc0-09f4-4bf0-91df-d853a2bc476e',   'parametros' =>    array (     'id_condicion_venta' => 1,     'id_medio_pago' => '5',     'id_servicio_instancia_prog_venta' => 8,     'id_canal_venta' => 1,     'utiliza_credito_disponible' => false,     'convenios' =>      array (     ),     'cliente_comprobante' =>      array (       'es_persona_fisica' => false,       'nombres' => '',       'apellido' => '',       'numero_documento' => '',       'tipo_documento' => '',       'email' => '',       'domicilio' => '',       'razon_social' => '',       'identificacion_fiscal' => '',     ),     'servicios_medios_pagos_exclusiones' =>      array (     ),   ), ) [] []
[2024-10-10T09:54:54.478156-03:00] SQ-Academico-Rest.INFO: RECURSO CONSUMOS EXTERNOS - POST: Consumo creado id: 12 [] []
[2024-10-10T09:54:54.634306-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_ventas::get_list - REMOTE_ADDR:127.0.0.1 [] []
[2024-10-10T09:54:54.825020-03:00] SQ-Academico-Rest.INFO: REST: SIU\SQ\Uv\php\rest\v1\recurso_ventas::put - REMOTE_ADDR:127.0.0.1 [] []
[2024-10-10T09:54:54.825212-03:00] SQ-Academico-Rest.INFO: Actualizar el estado de la venta con ID: 11. [] []
[2024-10-10T09:54:54.878773-03:00] SQ-Academico-Rest.INFO: Venta actualizada id: 11 [] []

en sq-gco/gco$ cat instalador.env

Hola Micaela,

¿Podrías verificar si la URL de GCO es publica?

Intentando acceder al status de la URL que esta en el log nos da un error de timeout
http://170.210.203.121/sq_pagos_backend/status

Una vez verificado eso podrían enviarnos el archivo log completo de GCO.

Saludos,

al verificar la url me da OK.
Tengo una duda, solo configure las credenciales de mercado pago en al archivo instalador.env. de GCO. Estuve viendo q en gco/config/config.ini hay para hacer configuraciones de MP

[debug]
debug_mode = 0

; opciones del backend de sq_pagos
[sq_pagos_backend]
elige_gestor = "0"
gestor_pago_por_defecto = "mercado_pago"
jwt_password = "test"
; Expresado en minutos
jwt_tiempo_expiracion = "5"

; Configuración de la API REST de SQ_UV
[sq_uv_api]
base_url = "http://127.0.0.1/sq_academico/rest/v1/"
user = "toba"
pass = "toba123*-a"

; Configuración de la API REST de SQ_NUCLEO
[sq_nucleo_api]
base_url = "http://127.0.0.1/sq_nucleo/rest/v1/"
user = "toba"
pass = "toba123*-a"

; Ubicación de SQ-Pagos
[sq_pagos]
base_url = http://127.0.0.1/sq_pagos/

; Configuraciones generales de gestores de pago
[gestores_pago]
imagen_producto_default = "https://www.siu.edu.ar/rd/Logos/SIU/logo_siu_sin_bajada_1.png"
url_notificaciones = "http://127.0.0.1/sq_pagos_backend/notifications/notification"

; Credenciales de la API de Mercado Pago
[mercado_pago]
; En la variable activo indicar "1" solo con las credenciales configuradas o "0" cuando no este disponible.
activo = "1"
;client_id = ""
;client_secret = ""
access_token = ""
;url de callback para configurar al momento de generar la preferencia de pago
back_url = ""
url_notificaciones = ""

; Credenciales de la API de Pay per TIC
[paypertic]
; En la variable activo indicar "1" solo con las credenciales configuradas o "0" cuando no este disponible.
activo = "0"
username = ""
password = ""
client_id = ""
client_secret = ""
url_notificaciones = ""

; SQ Auth (usuario y contraseña con los que deben autenticarse la unidad de venta y el nucleo)
; la clave es el usuario y el valor la contraseña.
[usuarios]
sq_academico = "123456"
sq_nucleo = "123456"
user_jwt = "123456"

;especificar en segundos el tiempo maxima de espera
;de respuesta de una conexion a un servicio
[opciones_conexion]
connect_timeout = ""
timeout = ""

Claro, las variables de entorno se configuran en el instalador.env antes de instalar o actualizar y luego de actualizar o instalar queda configurado el archivo gco/config/config.ini, si no lo hicieron pueden configurar manualmente el archivo ini o volver a instalar GCO.

¿Con respecto al OK que le devuelve el status, lo están probando dentro de la red de la universidad o dentro de una vpn?

Si pruebo ejecutar el siguiente CURL no me devuelve el OK y me da un timeout.

curl -X GET "http://170.210.203.121/sq_pagos_backend/status" -H "accept: application/json"

Buenos dias,curl -X GET "http://170.210.203.121/sq_pagos_backend/status" -H "accept: application/json" lo es toy probando dentro de la red de la universidad.
Ya configure manualmente, pero aun tengo un error.
Esto es del log de apache

[Mon Oct 14 00:00:02.611074 2024] [mpm_prefork:notice] [pid 988542:tid 988542] AH00163: Apache/2.4.61 (Debian) configured -- resuming normal operations
[Mon Oct 14 00:00:02.611105 2024] [core:notice] [pid 988542:tid 988542] AH00094: Command line: '/usr/sbin/apache2'
[Mon Oct 14 08:49:25.564566 2024] [php:notice] [pid 2542279:tid 2542279] [client 170.210.207.102:49082] {"message":"The User ID must match the consultant's","error":"forbidden","status":403,"cause":[]}
[Mon Oct 14 08:49:25.564768 2024] [php:warn] [pid 2542279:tid 2542279] [client 170.210.207.102:49082] PHP Warning:  Undefined array key "id" in /proyectos/sanaviron_quilmes/sq-gco/gco/vendor/mercadopago/dx-php/src/MercadoPago/Config.php on line 113
[Mon Oct 14 08:49:25.564795 2024] [php:warn] [pid 2542279:tid 2542279] [client 170.210.207.102:49082] PHP Warning:  Undefined array key "country_id" in /proyectos/sanaviron_quilmes/sq-gco/gco/vendor/mercadopago/dx-php/src/MercadoPago/Config.php on line 114
[Mon Oct 14 09:30:02.732315 2024] [php:notice] [pid 2554553:tid 2554553] [client 170.210.207.102:57652] {"message":"back_urls invalid. Wrong format","error":"invalid_back_urls","status":400,"cause":null}, referer: http://170.210.203.121/sq_pagos/
[Mon Oct 14 09:38:29.193279 2024] [php:notice] [pid 2542282:tid 2542282] [client 170.210.207.102:51706] {"message":"back_urls invalid. Wrong format","error":"invalid_back_urls","status":400,"cause":null}, referer: http://170.210.203.121/sq_pagos/
[Mon Oct 14 10:15:52.768788 2024] [php:notice] [pid 2554553:tid 2554553] [client 170.210.207.102:33592] {"message":"back_urls invalid. Wrong format","error":"invalid_back_urls","status":400,"cause":null}, referer: http://170.210.203.121/sq_pagos/
[Mon Oct 14 10:25:15.413611 2024] [php:notice] [pid 2556242:tid 2556242] [client 170.210.207.102:50662] {"message":"back_urls invalid. Wrong format","error":"invalid_back_urls","status":400,"cause":null}, referer: http://170.210.203.121/sq_pagos/

por lo q veo es q tengo error en back_url y lo tengo configurado de la siguiente manera: back_url = "http://170.210.203.121/sq_pagos_backend/mercado_pago/"

Buenas,

La url que configures como back_url y url_notificaciones deberían ser url con dominio publico que pueda ser accesible por fuera de red de la universidad. En este caso Mercado Pago requiere acceder a la URL para enviar una notificación de respuesta y redireccionar una vez finalizado el pago.

Lo recomendable es que tanto GCO como SQ Pagos estén configurado con un DNS con certificado SSL valido y pueda ser accesible por fuera de la red de la universidad.

A continuación paso una descripción del mensaje de error que devuelve mercado pago en respecto a Invalid_back_urls.

Invalid_back_urls

Las URLs de retorno (back_urls) son inválidas si utilizan dominios locales como localhost o 127.0.0.1, con o sin puerto especificado. Es recomendable usar un servidor con dominio nombrado (DNS) o IPs de desarrollo para evitar el mensaje de “Algo ha salido mal” al finalizar el proceso de compra. Además, asegúrate de que las URLs estén correctamente formateadas y sean accesibles.

Saludos,

Buenas, ya tengo la configuracion de dominio publico, ṕuedo realizar el pago bien pero a regresar no regresa:

tengo iniciada la se3sion de MP con usuario comprador, al completar los datos de un tarjeta de débito uso un APRO
el archivo config.ini:


y en instalador.env

Hola Micaela,

El back_url que tienen configurado en el archivo config/config.ini no les quedo bien configurado, debería ser la misma URL que tienen en el instalador.env en MERCADO_PAGO_BACK_URL.

Saludos,