Avisos
Vaciar todo

Problema url de agradecimiento para seguir conversiones de compra con Gogle Tag Manager,  

 
Alceste
 Alceste
Famed Member

Hola, estoy intentado resolver esto para poder seguir conversiones de compra con Google Tag Manager. Sigo estos dos hilos: 

https://www.webempresa.com/foro/joomla-30/problema-con-url-de-pagina-de-agradecimiento-tras-compra-no-cambia#post-410750

https://www.webempresa.com/foro/pasarelas-de-pago/problema-tpv-virtual-en-vm-con-pasarela-pago-sermepa#post-14880

Para configurar el TAG en GTM debo darle una condición del tipo "contiene". El problema para poder implementar el seguimiento de conversiones de compra es que redirige a URL muy largas, tanto en operaciones autorizadas como denegadas. Para poder seguir las conversiones necesitaría saber una constante en la URL OK y una en la URL KO.  Es decir, por ejemplo, identificar que el pago es correcto porque la URL contiene “0000”. Y registrar el pago como fállido cuando la URL contiene “129” Pero con estas URL larguísimas, no consigo encontrar una constante inequívoca que pueda registrar la conversión como pagada o no.

Puedo emplear la siguiente condición para registrar los pedidos con tarjeta:

La URL contiene “/?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived&on=”,  pero creo que entonces contabilizará como compras aquellas en qué el pago se haya denegado o no se haya finalizado. Creo que lo correcto sería darle una constante que únicamente estuviera presente en los pagos finalizados.

Todas las urls después de la compra (sea Ok o Ko) empiezan así: (Lo que pongo en rojo sustituye mi web real y el otro después de KFT los números del número de pedido)

miweb/es/?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived&on=KFTnumpredido&pm=15&Itemid=1424&lang=&Ds_SignatureVersion=HMAC_SHA256_V1&Ds_MerchantParameters= (a partir de aquí sigue 4 líneas más de cifras y letras...)

Estoy hecho un lío. No sé si debo usar lo de las páginas KO y OK (que se configura, creo en " components -> com_virtuemart -> views -> cart -> tmpl " orderdone.php ")

O si debo modificar el archivo Redsys.php

O en qué archivo tendría que poner algo así como lo de debajo (que era así en 2013, pero no sé ahora):

$urlOK = JURI::base().'index.php?page=account.order_details&order_id='.$db->f("order_id").'&option=com_virtuemart&Itemid=16';

Gracias por la ayuda!

 La versión de Joomla! actualmente instalada es '‎4.3.4'

Plantilla STOREBOX

Saludos

 

Contenido solo visible a usuarios registrados

Citar
Respondido : 21/02/2024 1:54 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Alceste.

La página de agradecimiento dependerá de la plataforma de pago como te indiqué en esta consulta del Foro:

https://www.webempresa.com/foro/joomla-30/problema-con-url-de-pagina-de-agradecimiento-tras-compra-no-cambia#post-410750

La página de agradecimiento si utilizas los pagos de WM estándar la puedes encontrar en plugins/vmpaid/standard/standard/tmpl/post_paid.php

 

Revisa esto:

-> https://forum.virtuemart.net/index.php?topic=138365.0

 

Un Saludo

ResponderCitar
Respondido : 21/02/2024 3:10 pm

Alceste
 Alceste
Famed Member

Hola Pepe, gracias.

Antes que nada pido disculpas por mi torpeza 😞 . Como verás, y como decía, estoy hecho un lío. (Entre los cambios de Google para los seguimientos de conversiones y los cambios de versiones de las aplicaciones...)

Intento explicarme:

Para el pago con tarjeta, utilizamos Redsys (sempepa) que entiendo que es una forma de pago estándar de VM. En el hilo que me comentas, me indicabas esto:

(...) Anteriormente en versiones v1 y v2 de Virtuemart teníamos un archivo checkout.thankyou.tpl.php pero en la version V3 de virtuemart el retorno es al archivo orderdone.php que se encuentra en " components -> com_virtuemart -> views -> cart -> tmpl " orderdone.php "

La otra ruta que me indicas en este post, es la que aparece en el link al foro de VM que me has facilitado:

La página de agradecimiento si utilizas los pagos de WM estándar la puedes encontrar en plugins/vmpaid/standard/standard/tmpl/post_paid.php

Pero en este hilo del foro de VM también hablan del archivo orderdone.php " aunque con un guión bajo en el medio (order_done) y en otra ruta (en layout en lugar de en tmpl.) Copio fragmento aquí debajo.

(Del foro de VM): El enlace no es el contenido. Jenkin le mostró dónde puede cambiar el contenido del enlace. Quiere el enlace, que no tiene SEF y es fácil de traducir option=com_virtuemart&view=cart&layout=order_done.

Bien, ahora intento concretar las duas:

1-La ruta hasta post_paid y el nombre del archivo que me aparecen a mi son algo distintas, (en lugar de "paid" pone "payment") supongo que no tiene importancia: plugins/vmpayment/standard/standard/tmpl/post_payment.php

2- El archivo post_payment.php es todo código, o sea que no me atrevo a tocarlo ni sé si es necesario.

3- No sé si debo efectuar los cambios en orderdone.php, en order_done.php o en post-payment.php ...

4- Como nuestra tienda es multi-idioma, no tengo claro si debo crear una página de agradecimiento para cada idioma, o asignar  la misma página a "Todos los idiomas" o dirigir a una página en un solo idioma, (por ejemplo: midominio/es/...y resto de la url) Ea decir, que compren en el idioma que compren redirija siempre a la página de agradecimiento en el idioima principal (En el texto podría incluir varios idiomas)

5- Según creo, lo ideal es que la página de agradecimiento no sea estática, sino que informe del número de pedido, importe, etc. O sea que quisiera que fuera estática.

Mil gracias por la ayuda y la paciencia

Saludos

ResponderCitar
Respondido : 22/02/2024 7:26 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Alceste.

Para configurar una página de agradecimiento o de retorno después de que un cliente haya completado un pago con Redsys y VirtueMart en Joomla, debes seguir los siguientes pasos:

  1. Crear una Página de Agradecimiento:

    • Crea una nueva página o utiliza una existente para mostrar el mensaje de agradecimiento o cualquier otra información relevante.
    • Puedes añadir un mensaje de agradecimiento personalizado, detalles de la compra, enlaces útiles, etc.
  2. Configurar la Redirección desde Redsys:

    • Inicia sesión en el panel de administración de tu cuenta de Redsys.
    • Busca la sección de configuración o ajustes, y busca la opción de "URL de Retorno" o "URL de Agradecimiento".
    • Ingresa la URL de la página de agradecimiento que has creado.
  3. Configurar la Redirección desde VirtueMart:

    • Accede al panel de administración de tu sitio Joomla.
    • Navega a la administración de VirtueMart.
    • Busca la configuración de métodos de pago o la configuración específica de Redsys en VirtueMart.
    • Busca la opción de "URL de Retorno" o "URL de Agradecimiento" y configúrala con la URL de tu página de agradecimiento.
  4. Pruebas:

    • Realiza pruebas completando una compra de prueba en tu tienda para asegurarte de que la redirección a la página de agradecimiento funcione correctamente.
    • Asegúrate de que la información de la transacción, como el número de pedido, esté disponible en la página de agradecimiento.

 

Un Saludo

ResponderCitar
Respondido : 22/02/2024 4:48 pm

Alceste
 Alceste
Famed Member

Hola @pepesoler

Te consulto o respondo punto por punto. Disculpa la extensión, pero espero que pueda ser de ayuda a otros usuarios que tengan las mismas dudas. No sé si me he explicado bien. Lo más importante para mi es que la url a la que redirija contenga una parte que sea invariable y pueda identificar como OK o KO. Lo digo porque en varios hilos del foro se dice que ya no es necesario modificar la página de agradecimiento. Por ejemplo, esta es una de las respuestas, que aparece en el hilo: https://www.webempresa.com/foro/pasarelas-de-pago/como-incluir-urlok-y-ko-en-mi-pasarela-de-pago-tengo-pack-tienda-joomla-25

Hola,

Entiendo por lo que dices que estás utilizando el plugin VM - Payment, Servired para la configuración de la pasarela de pago Sermepa.

En tal caso no es necesario configurar la url OK y KO ya que estas ya vienen integradas en el propio plugin.

Cuando un usuario realiza un pago con el siguiente sistema y este pago se realiza correctamente, una vez que pulse el botón "Continuar" en la pasarela de pago tendrá que retornar a la tienda. De no ser así, tendrías que indicarnos a qué página le envía.

Configurar la Redirección desde Redsys:

En la guía de integración de Sermepa indican esto:

(OPCIONAL) Debido a que no es imprescindible para el correcto funcionamiento del módulo, se pueden modificar los valores de los parámetros correspondientes a la “DS_MERCHANT_URLOK” y la “DS_MERCHANT_URLKO”. Estos valores se modificarán sustituyendo el parámetro $urltienda, por los valores correspondientes, en el fichero plugins/vmpayment/redsys/redsys.php, tal y como se muestra en la siguiente imagen:

image

URL_OK/URL_KO: durante el proceso del pago, y una vez que se muestra al cliente la pantalla con el resultado del mismo, es posible redirigir su navegador a una URL para las transacciones autorizadas y a otra si la transacción ha sido denegada. A estas se las denomina URL_OK y URL_KO, respectivamente. Se trata de dos URL que pueden ser proporcionadas por el comercio.
5. En caso de no haber modificado la “Url_KO” y la “Url_OK” en el paso anterior, se tiene que verificar la configuración del comercio en el módulo de administración de Redsys, donde la opción “Parámetros en las URLs” debe tener el valor “SI”.

En el archivo redsys.php aparece varias veces el parámetro $urltienda. Debo cambiarlo por $www.agriprotector.com solamente en estas dos líneas (205 y 206)?

205 $ds_merchant_urlok = $urltienda;
206 $ds_merchant_urlko = $urltienda;

O debo cambiarlo en todas las líneas en que aparece por  $www.agriprotector.com? Al lado indico la línea del archivo dónde aparece

//Url Respuesta Online
189 $urltienda = JURI::root () . 'index.php?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived&on=' .
                 
204  $ds_merchant_data = sha1($urltienda);
205 $ds_merchant_urlok = $urltienda;
206 $ds_merchant_urlko = $urltienda;
229 $miObj->setParameter("DS_MERCHANT_MERCHANTURL",$urltienda)
 
¿Debo cambiar algún parámetro en estas dos líneas que mencionan $ds_merchant_urlok y $ds_merchant_urlko?
230 $miObj->setParameter("DS_MERCHANT_URLOK",$ds_merchant_urlok);
231 $miObj->setParameter("DS_MERCHANT_URLKO",$ds_merchant_urlko);
 

Como explicaba al principio del hilo, en nuestro caso el problema no es que redirija a una página en blanco, sino que carga unas url interminables en las que no encuentro una parte de la url que sea inequívoca para definir pago ok y pago ko. AHora bien, todas empiezan como esta url, tanto si el pago es correcto como si no.

miweb/es/?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived&on=KFTnumpredido&pm=15&Itemid=1424&lang=&Ds_SignatureVersion=HMAC_SHA256_V1&Ds_MerchantParameters=(a partir de aquí sigue 4 líneas más de cifras y letras...)

En cuanto a la página de agradecimiento, comento punto por punto.

  1. Crear una Página de Agradecimiento: La página ya la tengo. Pero ¿debo crear una para cada idioma, o asignar  la misma página a "Todos los idiomas" o dirigir a una página en un solo idioma. ¿Es necesario modificar o crear esta página o, como se dice en el hilo mencionado arriba: no es necesario configurar la url OK y KO ya que estas ya vienen integradas en el propio plugin.

    • Busca la sección de configuración o ajustes, y busca la opción de "URL de Retorno" o "URL de Agradecimiento". ¿En qué ruta o archivo está? No sé si debo efectuar los cambios en orderdone.php,en order_done.php en post-payment.php o en redsys.php...
    • Ingresa la URL de la página de agradecimiento que has creado. ¿Dónde? ¿En el archivo ...plugins/vmpayment/redsys.php?
       
  1. Configurar la Redirección desde VirtueMart:

    • Busca la opción de "URL de Retorno" o "URL de Agradecimiento" y configúrala con la URL de tu página de agradecimiento. ¿En qué ruta / archivo? No sé si debo efectuar los cambios en orderdone.php,en order_done.php, en post-payment.php o en redsys.php..

Miles de gracias por la ayuda y disculpas una vez más por la extensión. Espero que pueda ser útil a más usuarios.

Saludos!

ResponderCitar
Respondido : 23/02/2024 7:39 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Alceste.

Olvídate de la URL.

Tienes ya una página de agradecimiento.

El archivo de la página de agradecimiento lo copias en la raíz de la instalación y por ejemplo le ponemos el nombre de Gracias.

  • Inicia sesión en el panel de administración de tu cuenta de Redsys.
  • Busca la sección de configuración o ajustes, y busca la opción de "URL de Retorno" o "URL de Agradecimiento".
  • Ingresa la URL de la página de agradecimiento que has creado en este caso seria tu_dominio.xxx/gracias

 

Un saludo

 

 

ResponderCitar
Respondido : 23/02/2024 3:30 pm

Alceste
 Alceste
Famed Member

Hola @pepesoler

Discúlpame, no me termino de aclarar. Tengo la impresión de que debe de ser sencillo, pero no doy con ello. A lo mejor es porque me aparecen las cosas con otro nombre. Mi consulta tiene trata de dos aspectos distintos. Por un lado está la configuración de la página de agradecimiento (que parece más cerca de estar solucionado) y por por otro lado está configurar el seguimiento de las conversiones de compra con TagManager de Google.

Ahora, vamos por partes:

Cuando dices: "El archivo de la página de agradecimiento lo copias en la raíz de la instalación y por ejemplo le ponemos el nombre de Gracias." El problema es que no sé cual es ese archivo. Entiendo que no es un artículo. De hecho la página de agradecimiento carga la constante: COM_VIRTUEMART_CART_ORDERDONE_THANK_YOU, aunque la url visible varía según la forma de pago y si el pago ha sido OK o KO.

La página de agradecimiento, si el pago es por transferencia, lleva a la constante COM_VIRTUEMART_CART_ORDERDONE_THANK_YOU, sin embargo, la url visible no cambia. Se mantiene en https://www.midominio.com/es/carro

Si el pago es con visa y es correcto, la url visible es una de esas interminables y en la página de agradecimiento me indica que el pago ha ido bien y el número de pedido

image

Si el pago es con visa y no se ha efectuado la url visible es una de esas interminable y en la página de agradecimiento me indica: "El pedido ha finalizado con error en la respuesta" 

image

En el panel de administración de Resdys no me aparece la opción de "URL de Retorno" o "URL de Agradecimiento, sino URL OK y URL KO (inserto imagen)

parametros administracion redsys

El problema para poder seguir las conversiones con Tag Manager es que las urls visibles relativas al pago son interminables y no encuentro una parte que sea inequívocamente indicadora de pago correcto o pago fallido. En ambos casos la url visible que lleva a la página de agradecimiento empieza así:

miweb/es/?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived&on=numpredido&pm=15&Itemid=1424&lang=&Ds_SignatureVersion=HMAC_SHA256_V1&Ds_MerchantParameters=(a partir de aquí sigue 4 líneas más de cifras y letras...)

En la prueba que he hecho ahora con visa, la url visible de pago correcto es más larga que la pago fallido y acaba así:

(...)9&Ds_Signature=NIw00VPlu76qYSFMTLPSwx60diZExOevzQDjgdS0NNM=

La URL visible de pago fallido acaba así:

(...)Q==&Ds_Signature=RHO5vYrjkq9ptOAC-nvwjT-_HRF3dYcCEksSfHgjnYg=

La única diferencia que veo entre ambas (pero no sé si es casual en esta prueba que he hecho) es esta:

En la de pago correcto aparece: (...)9&Ds_Signature= y en la de pago fallido aparece (...)Q==&Ds_Signature=

Tal vez podría indicar en TAG MANAGER que la conversión de compra se ha producido si la url de agradecimiento no contiene "==&Ds" ya que parece que cuando el pago es correcto, delante de &DS no aparece "=="

Si quieres, te paso en privado las url visibles completas.

Gracias por tu ayuda!

Saludos

ResponderCitar
Respondido : 26/02/2024 9:54 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Alceste.

Prueba lo que te digo.

Crea una página de agradecimiento, un archivo txt en la raíz de la instalación con el nombre por ejemplo gracias.txt y añade el texto que quieras.

Una vez creada:

  • Inicia sesión en el panel de administración de tu cuenta de Redsys.
  • Busca la sección de configuración o ajustes, y busca la opción de "URL de Retorno" o "URL de Agradecimiento".
  • Ingresa la URL de la página de agradecimiento que has creado en este caso seria tu_dominio.xxx/gracias

 

Comprueba si carga esa nueva pagina de agradecimiento.

 

Tienes componentes que te pueden ayudar:

-> https://extensions.joomla.org/extension/vp-conversion-tracking-for-virtuemart/

 

Un Saludo

 

ResponderCitar
Respondido : 26/02/2024 2:58 pm

Alceste
 Alceste
Famed Member

Hola @pepesoler

Como te decía, en la administración de Redsys no me aparecen estas opciones: "URL de Retorno" o "URL de Agradecimiento".

Me aparece "URL OK (Por defecto)" y "URL KO (Por defecto)". ¿Es lo mismo?

Saludos y gracuas

ResponderCitar
Respondido : 27/02/2024 12:38 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Alceste

Me aparece "URL OK (Por defecto)" y "URL KO (Por defecto)". ¿Es lo mismo?

Si es lo mismo, URL OK seria la URL de retorno de los pedido con el pago completado.

 

Un Saludo

ResponderCitar
Respondido : 27/02/2024 2:42 pm

Alceste
 Alceste
Famed Member

Hola @pepesoler

Una parte del tema está solucionado. He modificado unos fragmentos de texto del archivo REDSYS.php para que el mensaje sobre el pago sea más claro y funciona bien. Ahora la únic aparte que me queda por resolver es cómo decirle a la etiqueta de TAG MANAGER qué parámetros debe contener el PATH para poder seguir la conversión de compra. Estoy reclamando asistencia por parte de Google, por lo que si quieres, podemos dejar este hilo en espera. Si me dan una solución os la comparto por si puede ser útil para otros usuarios.

Saludos y gracias!

ResponderCitar
Respondido : 28/02/2024 9:56 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Alceste.

Ok dejo el hilo abierto.

 

Un Saludo

ResponderCitar
Respondido : 28/02/2024 11:51 am