Biblioteca

Ratio: 3 / 5

Inicio activadoInicio activadoInicio activadoInicio desactivadoInicio desactivado
 

La configuración de este módulo no va a tener mayor misterio que realizar la configuración habitual para virtuemart 2.x, es decir en el componente dentro del administrador de joomla 2.5 que ha sido el sistema utilizado para este tutorial, pincharemos en componentes/virtuemart/tienda/métodos de pago. La instalación es a través del plugin gratuito para la versión de VirtueMart 2.x correspondiente que viene en el mismo paquete del componente joomla, descargable a través de https://virtuemart.net/. Voy a centrarme en explicar los campos más importantes para pruebas y depuración del sistema y sobre todo configuración del sistema IPN.

 

PASOS:

1.- Bien, ahí seleccionaremos nuevo y tendremos 2 pestañas. Dado que hay más tutoriales sobre este tema, no voy a profundizaré demasiado, escribimos el nombre del método de pago, habitualmente paypal o el nombre que queramos que describa este método, campo publicado a sí, descuento mínimo, etc. En esta ficha es importante elegir en el método de pago PayPal, ya que este dato será el que va a vincular al plugin de paypal para virtuemart encargado de gestionar el método. Resto de campos son comunes a todos los métodos de pago. En este punto es importante pinchar en el botón GUARDAR, para que podamos pasar a la siguiente pestaña.

Joomla VirtueMartk

Paypal1.png - Joomla VirtueMartk

2.- Ahora pinchamos en la pestaña de configuración. De igual forma que ocurre con la pantalla anterior, solo voy a comentar los campos más relevantes, en la web hay disponibles bastante documentación sobre el tema. El campo logos, son imágenes que son cargadas desde /raiz_web/images/stories/virtuemart/payment por tanto sino aparece la imagen de paypal o queremos cambiarla, deberemos subir un fichero a esa ubicación. Aquí aparece algo importante, los campos Email de pago Paypal es el email de la cuenta de usuario paypal del vendedor, es decir la que usará la web para recaudar. Luego aparece un campo llamado Email cuenta Sandbox de vendedor, bien, este campo será donde coloquemos la cuenta de correo de Sandox, es el servidor de pruebas de paypal, para evitar tener que hacer pruebas con dinero real. Entraremos a partir de https://developer.paypal.com/ pero esto será explicado más adelante con mayor detalle, ahora dejamos el campo en blanco si no disponemos de cuenta, o directamente rellenar, si disponemos de ella. Importante es marcar el campo Sandbox a sí, esto quiere decir que, todos los artículos que sean pagados a través de este método de pago serán redirigidos a esta cuenta de prueba, donde podremos disponer de cantidades millonarias de saldo, pero recordar que este dinero tiene el mismo o menos valor que los billetes del “monopoli”. El resto de campos, si tenéis dudas, buscar ayuda en otros tutoriales más centrados en funcionalidad del plugin. Por último comentar que, aunque en la captura de pantalla aparece la opción “registrar todas las notificaciones IPN”, en la versión virtuemart 2.0.24 que he usado, he modificado el fichero correspondiente del código fuente del plugin. Ahora, una opción más que recomendable, al menos para mi, es el campo “debug?” donde deberemos decir que sí. Es poco explicativo, realmente lo que hace si está activado es escribir todas las transacciones de pago y cambios de estado de pedidos pagados con este método en un fichero de registro, ubicado en /raiz_web/logs/paypal.log. El cual nos servirá y mucho para comprobar si está funcionando correctamente la pasarela con paypal y si estamos recibiendo las notificaciones IPN correspondientes de forma correcta.

Paypal VirtueMart

paypal2.png - Paypal VirtueMart

3.- Bien pues con la pantalla de configuración debidamente completada, guardaremos y, podremos pasar a configurar nuestra cuenta sandbox de pruebas, para ello bastará con entrar en la webhttps://developer.paypal.com/y crear una cuenta. El correo electrónico que dejéis registrado para esta cuenta, es el que debe ir en el campo “email sandbox del vendedor” que antes hemos dejado en blanco. Posteriormente, deberemos crear 2 cuentas, una business y otra personal ya que, la primera será donde cobraremos y la segunda, será la que usaremos para simular los pagos de un comprador. Igualmente dado que este es un sistema a parte de joomla y virtuemart, para más información se pueden buscar otros tutoriales por internet.

4.- Una vez creadas las cuentas, desde sandbox account, pincharemos en Enter Sandbox Site. Ahora este portal tiene la apariencia de paypal pero si nos fijamos en la dirección de la barra web es https://www.sandbox.paypal.com/es.

5.- Haremos login con la cuenta business, ya que tenemos que configurar 2 de las partes más importantes para el sistema IPN, si nos fijamos, cuando pagamos por internet con paypal, deben ocurrir 2 cosas, una al comprador y otra al vendedor. Cuando el comprador paga y paypal valida como un pago instantáneo, devuelve al comprador a una pantalla que indica que su pedido ha sido pagado y, por otro lado pasa el pedido a un estado confirmado o estado que indica que este ha sido validado y pagado. Para ello, una vez dentro de la cuenta, pinchamos en perfil y nos aparecerán las opciones donde configuraremos las direcciones de retorno hacia nuestra web, para hacer esto posible. Hay que pinchar en la palabra perfil, no en ninguno de sus submenús.

PayPal VirtueMart

paypal3.png - PayPal VirtueMart

PayPal VirtueMart

paypal4.png - PayPal VirtueMart

6.- Vamos a elegir la opción para notificar por el servicio de notificaciones instantáneo que el pago es correcto, o si ha existido algún error en el mismo. Si nos fijamos en la captura anterior, veremos en Preferencias de Ventas, la cuarta que indica “Preferencias de Notificación de pago instantánea”. Como nota si alguien llega a este tutorial buscando la pasarela de IPN, decir que es aquí donde se envían los datos de la venta por método POST, es decir, se podría programar la recepción y actualización de la base de datos, examinando la información devuelta a través de este sistema tipo webservice. Bien para joomla 2.5 y VirtueMart 2.0.24 la opción que me ha funcionado es la siguiente:

URL de notificación: https://www.dominio.com/index.php?option=com_virtuemart&view=pluginresponse&task=pluginnotification&tmpl=component

Entrega de mensajes: SI (lógicamente)

7.- La última parte de la configuración será la encargada de devolver la pantalla al vendedor, los parámetros son devueltos a través de un get. En joomla, en la plantilla por defecto del componente virtuemart, en la vista de respuesta, podríamos personalizar el mensaje que damos al usuario. Hay que entrar en la octava opción, “preferencias de pago en el sitio web”. Bien para joomla 2.5 y VirtueMart 2.0.24 la opción que me ha funcionado es la siguiente:

Retroceso de pago: Si, para que active el regreso en 10s tras el pago.

URL de devolución:https://www.dominio.com/index.php?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived

Transferencia de datos de pago(opcional): Si.

 

NOTA FINAL

Con todo lo anterior ya tendríamos el sistema de pruebas configurado para paypal, lógicamente habrá que hacer la misma configuración en la cuenta de paypal real de los pasos 6 y 7. Por otro lado es muy probable que tengáis 2 problemas con los que me he encontrado, los estados una vez pagados los pedidos, no son actualizados y, las notificaciones no llegan. En muchas ocasiones, si se ha seguido este manual, y están bien configuradas las cuentas, podemos irnos al historial de mensajes IPN para ver si tienen un estado enviado, es decir, si han llegado. Muchas veces nuestra web que está en una fase de desarrollo, estará ubicada en un servidor local sin salida a internet, es aquí donde está el problema, lógicamente Sandbox Paypal carecerá de visibilidad para llegar a direcciones localhost. Una posible opción es crear una cuenta de pruebas en un dominio en internet (gratuito o no, dependerá de nuestras posibilidades), para hacer las pruebas, o bien, habilitar nuestro router para apuntar el servicio web desde nuestra ip de casa al servidor local. Si usáis esta última opción, cuando paguéis, deberéis hacerlo desde una ip distinta a la ip del servidor, es decir, no uséis el mismo router de casa ya que, la respuesta en lugar de coger la dirección ip de vuestro router, lo hará con el prefijo localhost y, esto consigue que las notificaciones nunca lleguen. Si entráis en el historial de envío de mensajes instantáneos de paypal podréis ver que mensaje se ha enviado, con que datos, el estado del mensaje, y a qué dirección.

Escribir un comentario


Código de seguridad
Refescar

Tecnologías empleadas para desarrollo de soluciones

(Hacer click para ampliar información)

 

             

Esta web actualmente usa cookies para su funcionamiento y mejora de experiencia de usuario. Si continua navegando consideramos que acepta el uso de cookies Más información