Foros del Web » Programando para Internet » PHP »

Integrar una TPV de CECA para distintos procesos

Estas en el tema de Integrar una TPV de CECA para distintos procesos en el foro de PHP en Foros del Web. Hola a todos Estoy tratando de integrar en una web dos procedimientos de pago contra la misma TPV virtual de CECA (una tienda virtuemart y ...
  #1 (permalink)  
Antiguo 24/10/2011, 06:39
 
Fecha de Ingreso: abril-2008
Mensajes: 93
Antigüedad: 16 años
Puntos: 10
Integrar una TPV de CECA para distintos procesos

Hola a todos

Estoy tratando de integrar en una web dos procedimientos de pago contra la misma TPV virtual de CECA (una tienda virtuemart y un pago directo).
Cuando se realiza el pago correctamente, la sesión del usuario se redirige a nuestra página de agradecimiento, y por otro lado, se hace una llamada a una url de confirmación que el servidor interpreta, recoge los datos del $_POST y actualiza lo que tenga que actualizar.
En otras pasarelas (sermepa, por ejemplo), se puede definir online la URL de confirmación, pero en CECA, hay que hacerlo en la página de configuración, y por lo tanto siempre es la misma.
Si solo tenemos un proceso que utilice la TPV (o la tienda o el pago directo), no hay problema, pero si utilizamos 2 ó más, la única forma de hacerlo es mediante un dispatcher, que dependiendo de un valor (num_operacion en mi caso), redirija la llamada al proceso adecuado, pero no veo la manera de hacerlo.
En principio, se me ocurrió hacer una redirección, pero perdía los valores de $_POST. Como es un php que se ejecuta en el servidor, tampoco puedo usar formularios, javascript, cookies, variables de sesión, etc.

Cualquier ayuda será bienvenida
  #2 (permalink)  
Antiguo 24/10/2011, 10:22
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 17 años, 6 meses
Puntos: 32
Respuesta: Integrar una TPV de CECA para distintos procesos

Hola.

Yo tuve el mismo problema que tu, lo arregle haciendo una chapuza que mas o menos me lo solucionó.

En el fichero php que ejecuta el servidor de CECA recojo el varlor post "Description", en el cual pongo la información de cada empresa o página.

Así si viene de una página en concreto ejecuto un php u otro... para que te quede claro hago esto

Código PHP:
switch ($_POST['Description'])
{

case 
"pagina1.com"
include ("ejecuta_script1.php")
break;

case 
"pagina2.com"
include ("ejecuta_script2.php")
break;


¿te sirve esto?
  #3 (permalink)  
Antiguo 24/10/2011, 10:56
 
Fecha de Ingreso: abril-2008
Mensajes: 93
Antigüedad: 16 años
Puntos: 10
Respuesta: Integrar una TPV de CECA para distintos procesos

Ante todo, gracias por responder.

El problema es que necesito enviar los valores POST recibidos, ya que lo que pretendo hacer es que parezca que es el propio TPV el que ha hecho la llamada.
Ahora mismo tengo un proceso para la tienda y otro para el tipo de pago directo. Lo que me gustaría es no tocar esos ficheros para que ante futuras actualizaciones de los componentes, todo siguiese funcionando correctamente.

Esto es lo que ocurre cuando instalo un solo componente:

Si instalo solo el componente Tienda: el TPV llama a notificación_tpv.php
Si instalo solo el componente Directo: el TPV llama a notificacion_directo.php

Cuando pongo los dos, debería ocurrir lo siguiente (o eso pretendo):

El TPV llamaría a notificación_general.php
según una condición, notificacion_general.php llamaría notificación_tpv.php o notificacion_directo.php, incluyendo las variables POST recibidas.

De esta forma, tanto notificación_tpv.php como notificacion_directo.php serían idénticos para instalaciones individuales (con llamadas desde el TPV) o conjuntas (con llamadas desde notificacion_general.php).
  #4 (permalink)  
Antiguo 25/10/2011, 01:21
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 17 años, 6 meses
Puntos: 32
Respuesta: Integrar una TPV de CECA para distintos procesos

Hola.

Como la notificación lo realiza el propio banco, tu no puedes ver nada en pantalla de su proceso aunque hagas un simple "echo". Yo para eso utilizo un pequeño truco que es, volcar la información que yo quiera en un fichero haciendo esto:

Código PHP:
$Fichero fopen("fichero.txt","w+");

$contenido=...

fputs($Fichero,$contenido);
fclose($Fichero); 
De este modo visualizo dicho fichero y miro que datos han llegado, en tu caso, mira esa condición, si se cumple y que valores llega, los vuelca al fichero txt y asi podrás ver por donde falla.

Saludos.

Etiquetas: ceca, distintos, integrar, procesos, tpv, variables, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:45.