rockandror / redsys-rails

Una gema de Ruby para la comunicación con la plataforma de pago de Redsys
MIT License
13 stars 19 forks source link

Mejorar la documentación sobre el módulo de notificación on-line #2

Open guzmanthegood opened 8 years ago

guzmanthegood commented 8 years ago

Explicar mejor su funcionamiento y quizás añadir algún ejemplo de uso.

pmaojo commented 8 years ago

Hola, justo es en lo que estoy atascado

guzmanthegood commented 8 years ago

Hola @pmaojo coméntame un poco la duda y veré como te puedo echar un cable.

azaceta commented 8 years ago

Yo tengo la gema (no la oficial, sino la de desarrollo) corriendo sin problemas y con notificaciones. Si preguntas algo concreto igual te puedo ayudar también. ¿Qué versión de la gema estás usando?

pmaojo commented 8 years ago

Lo que no sé es como recogería esa notificación de pago ok en mi aplicación para hacer el update del estado del pedido. No he instalado aún la gema. Es decir, envío al usuario a pagar, paga, vuelve a la página de agradecimiento y por detrás imagino que llegará de alguna manera un callback, ahí me pierdo.

¡Gracias!

guzmanthegood commented 8 years ago

Hola @pmaojo. Es más o menos como indicas.

Utiliza el generador: rails g redsys:notifications que te creará un controlador 'notifications_controller' con una acción post 'notification'. La entidad financiera realizará una llamada a esa ruta cuando el usuario realice el pago, ahí podrás actualizar el pedido, enviar un email al usuario... etc..

Si quieres debuggear lo que ocurre en ese callback te sugiero utilices una aplicación estilo ngrok que te redirecciona localhost a una dirección accesible desde el exterior y en el formulario de salto a la pasarela sustituyas la url de notifications por la generada. Un ejemplo: redsys_form_path(amount: @amount, order: @order.id, merchant_url: 'http://5696c509.ngrok.io/redsys/notification')

Cuando lo subas a producción acuérdate de quitar el parámetro merchant_url para que pille la url por defecto.

pmaojo commented 8 years ago

Muchas gracias.

ajmonfue commented 3 years ago

Hola @guzmanthegood. Estoy teniendo problemas con ngrok para recibir la notificación online de la forma que indicas. La notificación, desde el panel de administración, se muestra con el error: -1 connect timed out si uso la url de ngrok con https, y -1 A remote host refused an attempted connect operation. (Connection refused) usando http. Sin embargo si publico el acceso a mi api, ejecutándolo en local, abriendo los puertos correspondientes en mi router, la notificación sí la recibo correctamente. Por casualidad ¿has experimentado algún problema de este tipo con ngrok?.

Gracias de antemano.

koas commented 3 years ago

Hola @ajmonfue estoy teniendo exactamente el mismo problema con ngrok, ¿conseguiste solucionarlo? ¡Gracias!

ajmonfue commented 3 years ago

Hola @koas . Perdona por mi tardía respuesta. No, no conseguí solucionarlo ni supe cuál fue el problema (no encontré nada al respecto en la documentación de Redsys ni ngrok), lo siento.