Devolución de pago

Buenas tardes,

Estamos realizando pruebas respecto a la devolución de pagos por medio de Mercado Pago (MP), tanto en Autogestión como en SQ-Académico, la operación desde Académico se logro concretar con ayuda de la documentación.

Resultado, cancelación de inscripción con supuesta aprobación de devolución de pago por medio de MP, supuesta porque desde las cuentas de pruebas no se ve reflejado la devolución aprobada realizada en Académico.

¿La aprobación de devolución no realiza ninguna acción sobre MP?
¿Para que repercute la devolución al comprador se debería realizar desde la cuenta del vendedor?

En Autogestión al querer darse de baja aparece la siguiente pantalla:

Se selecciona la opción de “Devolución por agente de cobranza” y al apretar el botón Dar de baja muestra el siguiente mensaje:

Se cierra la pantalla y luego de unos minutos se da de baja la inscripción automáticamente dejando habilitada la inscripción si lo deseo, ingresando al portal de pagos, desaparece el pago realizado y al estudiante sólo le queda el registro de la baja realizada, desde la operación “Reportes → Mis inscripciones”.

En los resthooks de Académico se visualiza la baja solicitada en ACK y otra en FAIL perteneciente a la misma inscripción.

Como la inscripción está anulada no se puede realizar la devolución.

Ante lo presentado, ¿es posible hacer la solicitud de devolución desde Autogestión?

Versiones:
SQ v2.6.3
Guarani 3.21.3

Quedamos pendiente a sus respuestas.

Desde ya gracias!

Hola Carlos.

Realizar la devolución desde la operación de SQ, Devoluciones,
estas informa al agente de cobranza (MP) para que realice el reintegro al alumno. En simultaneo, en SQ anula la inscripción, ventas y cobranza. Por ultimo informa la baja a Guaraní.

Si el alumno es el que solicita la baja desde 3w seleccionando ‘Devolución por agente de cobranza’ anula la inscripción, se notifica al agente de cobranzas para que realie el reintegro y se anula en SQ.

Sobre los pasos que realizaste:

  • Si primero realizaste la devolución desde la operación Devoluciones, ya no es necesario que el alumno lo realice desde 3w.
  • Esa devolución corresponde al id 9 del mensaje de restooks que quedo en ACK, ya que logro notificar a Guaraní y esste la proceso correctamente.
  • Creo entender que despues de realizar la devolución desde SQ, no actualizaste la pantalla en 3w y seleccionaste devolver y te arrojo ese error. Que se corresponde con el id 10, ya que ya habias dado de baja la inscripción previamente.

Hola Matías.

Puede ser un posible caso el que mencionas pero no es así porque son dos escenarios diferente con el mismo curso transcurrido luego de una anulación aprobada, primero nos enfocaremos en el más avanzado, el que realiza la devolución desde SQ, como mencione el proceso de devolución quedo aprobada pero no se concreto la devolución desde MP ya que en las cuentas comprador y vendedor no muestra la devolución, viendo los logs de GCO se detecto lo siguiente:

Logs de GCO - Inscripción desde autogestión con MP - proceso de devolución desde Académico.

[2024-08-30T16:47:53.863581-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-08-30T16:47:54.002509-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-08-30T16:47:54.080866-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-08-30T16:47:54.621837-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"OPTIONS_anything","route_parameters":{"_controller":{"Closure":[]},"anything":"portal/medios_pago/4","_route":"OPTIONS_anything"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/portal/medios_pago/4","method":"OPTIONS"} []
[2024-08-30T16:47:54.622416-03:00] SQ-GCO.DEBUG: > OPTIONS /sq_pagos_backend/portal/medios_pago/4 [] []
[2024-08-30T16:47:54.623266-03:00] SQ-GCO.DEBUG: < 204 [] []
[2024-08-30T16:47:54.627109-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"OPTIONS_anything","route_parameters":{"_controller":{"Closure":[]},"anything":"portal/validar_token","_route":"OPTIONS_anything"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/portal/validar_token","method":"OPTIONS"} []
[2024-08-30T16:47:54.627592-03:00] SQ-GCO.DEBUG: > OPTIONS /sq_pagos_backend/portal/validar_token [] []
[2024-08-30T16:47:54.632327-03:00] SQ-GCO.DEBUG: < 204 [] []
[2024-08-30T16:47:55.129592-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"GET_portal_validar_token","route_parameters":{"_controller":"portal:validar_token","_route":"GET_portal_validar_token"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/portal/validar_token","method":"GET"} []
[2024-08-30T16:47:55.130366-03:00] SQ-GCO.DEBUG: > GET /sq_pagos_backend/portal/validar_token [] []
[2024-08-30T16:47:55.130820-03:00] SQ-GCO.INFO: Validar token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJ0aXBvX2RvY3VtZW50byI6MCwibnVtZXJvX2RvY3VtZW50byI6IjM4OTkyNTE3IiwiaWF0IjoxNzI1MDQ3MjA5LCJleHAiOjE3MjUwNDc1MDl9.jNX3c2Dd5R_ngK2xV111u7ZG4c7GdohB-fRM2qPYHv_FsMTFQvB89DYpl6HwnR2_elRKpMq5HBUxbOZ3dI-YPA [] []
[2024-08-30T16:47:55.132017-03:00] SQ-GCO.INFO: Validar token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJ0aXBvX2RvY3VtZW50byI6MCwibnVtZXJvX2RvY3VtZW50byI6IjM4OTkyNTE3IiwiaWF0IjoxNzI1MDQ3MjA5LCJleHAiOjE3MjUwNDc1MDl9.jNX3c2Dd5R_ngK2xV111u7ZG4c7GdohB-fRM2qPYHv_FsMTFQvB89DYpl6HwnR2_elRKpMq5HBUxbOZ3dI-YPA [] []
[2024-08-30T16:47:55.132490-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-08-30T16:47:55.138155-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"GET_portal_medios_pago_id_servicio_instancia","route_parameters":{"_controller":"portal:get_medios_pago","id_servicio_instancia":"4","_route":"GET_portal_medios_pago_id_servicio_instancia"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/portal/medios_pago/4","method":"GET"} []
[2024-08-30T16:47:55.138524-03:00] SQ-GCO.DEBUG: > GET /sq_pagos_backend/portal/medios_pago/4 [] []
[2024-08-30T16:47:55.138830-03:00] SQ-GCO.INFO: Validar token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJ0aXBvX2RvY3VtZW50byI6MCwibnVtZXJvX2RvY3VtZW50byI6IjM4OTkyNTE3IiwiaWF0IjoxNzI1MDQ3MjA5LCJleHAiOjE3MjUwNDc1MDl9.jNX3c2Dd5R_ngK2xV111u7ZG4c7GdohB-fRM2qPYHv_FsMTFQvB89DYpl6HwnR2_elRKpMq5HBUxbOZ3dI-YPA [] []
[2024-08-30T16:47:55.330700-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-08-30T16:48:47.622723-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"POST_notifications_notification","route_parameters":{"_controller":"notification:post_notification","_route":"POST_notifications_notification"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/notifications/notification?data_id=86267641585&gestor=MP&type=payment","method":"POST"} []
[2024-08-30T16:48:47.628218-03:00] SQ-GCO.DEBUG: > POST /sq_pagos_backend/notifications/notification?data.id=86267641585&gestor=MP&type=payment [] []
[2024-08-30T16:48:47.826095-03:00] SQ-GCO.NOTICE: Mercado Pago Notificación: Payment ID: 86267641585 status: approved external_reference: e46e52fd-5226-45a3-9117-2729c417afc2 [] []
[2024-08-30T16:48:47.958778-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"POST_notifications_notification","route_parameters":{"_controller":"notification:post_notification","_route":"POST_notifications_notification"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/notifications/notification?gestor=MP&id=22303678412&topic=merchant_order","method":"POST"} []
[2024-08-30T16:48:47.959258-03:00] SQ-GCO.DEBUG: > POST /sq_pagos_backend/notifications/notification?gestor=MP&id=22303678412&topic=merchant_order [] []
[2024-08-30T16:48:48.140721-03:00] SQ-GCO.NOTICE: Mercado Pago Notificación: Merchant_order ID: 22303678412 external_reference: e46e52fd-5226-45a3-9117-2729c417afc2. [] []
[2024-08-30T16:48:48.206963-03:00] SQ-GCO.INFO: La venta con ID: 11 ya tiene una cobranza generada. [] []
[2024-08-30T16:48:48.207289-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-08-30T16:48:48.455936-03:00] SQ-GCO.DEBUG: < 500 [] []
[2024-08-30T16:48:49.843925-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"POST_notifications_notification","route_parameters":{"_controller":"notification:post_notification","_route":"POST_notifications_notification"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/notifications/notification?gestor=MP&id=22303678412&topic=merchant_order","method":"POST"} []
[2024-08-30T16:48:49.844509-03:00] SQ-GCO.DEBUG: > POST /sq_pagos_backend/notifications/notification?gestor=MP&id=22303678412&topic=merchant_order [] []
[2024-08-30T16:48:50.034368-03:00] SQ-GCO.NOTICE: Mercado Pago Notificación: Merchant_order ID: 22303678412 external_reference: e46e52fd-5226-45a3-9117-2729c417afc2. [] []
[2024-08-30T16:48:50.377671-03:00] SQ-GCO.DEBUG: < 500 [] []
[2024-08-30T16:51:30.185613-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"GET_mercado_pago_payment_id","route_parameters":{"_controller":"mercado_pago:payment","id":"86267641585","_route":"GET_mercado_pago_payment_id"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/mercado_pago/payment/86267641585","method":"GET"} []
[2024-08-30T16:51:30.187221-03:00] SQ-GCO.DEBUG: > GET /sq_pagos_backend/mercado_pago/payment/86267641585 [] []
[2024-08-30T16:51:30.387467-03:00] SQ-GCO.DEBUG: < 200 [] []
[2024-08-30T16:51:30.872398-03:00] SQ-GCO.INFO: Matched route "{route}". {"route":"PUT_mercado_pago_devolver_payment_payment_id","route_parameters":{"_controller":"mercado_pago:devolver_payment","payment_id":"86267641585","_route":"PUT_mercado_pago_devolver_payment_payment_id"},"request_uri":"https://sanaviron-gcoprueba.unpaz.edu.ar/sq_pagos_backend/mercado_pago/devolver_payment/86267641585","method":"PUT"} []
[2024-08-30T16:51:30.872850-03:00] SQ-GCO.DEBUG: > PUT /sq_pagos_backend/mercado_pago/devolver_payment/86267641585 [] []
[2024-08-30T16:51:31.334744-03:00] SQ-GCO.DEBUG: < 200 [] []

Comprador MP
imagen

Vendedor MP
imagen

Cualquier avance que encuentre lo comparto.
Quedo al tanto a cualquier aporte.

Saludos!

Buenas,

Probando con el Postman, visualizo que dicha venta esta aprobada pero no debería figurar reembolsado a comprador?
Comparto capturas.

Debería decir refunded?

Hola Carlos,

con ese id_transaccion (payment) podes consultar la tabla log_interacciones_externas y ordenando por fecha ver si en la ultima tenes el estado refunded.

Aclaro, por las dudas, que desde hace un tiempo, despues de una actualización de MP ya no nos deja ver la actividad del usuario comprador.

En ambientes de proudcción, cuando se genera una devolución por parte del alumno, MP informa el estado refunded.

Por ultimo, podrías chequear si desde ‘administrar medios de pagos’ mercadopago esta configurado para aceptar devoluciones? o sea, Anulable = SI.

Hola Matias,

Retomando el tema, estuve viendo la tabla log_interacciones_externas y filtrando por el id = 86267641585’.
Resultado: el estado nunca cambio a “refunded” aunque desde académico este aprobada la devolución.
Se comparte búsqueda realizada y resultado.

SELECT ocurrido_en, payment
FROM log_interacciones_externas, jsonb_array_elements(mensaje::jsonb->'payments') AS payment
WHERE payment->>'id' = '86267641585';

Si se encuentra con Anulable = SI.

Gracias por informar.

Saludos!

Sobre esto, yo buscaría tambien dentro del mensaje la palabra ‘refunded’ ya que se encuentra al final del json.