Foros del Web » Programando para Internet » PHP »

TPV Sermepa PHP

Estas en el tema de TPV Sermepa PHP en el foro de PHP en Foros del Web. Buenos dias, estoy implementando un TPV Sermepa de La Caixa y tengo una duda en el planteamiento. La documentación es bastante clara y mas o ...
  #1 (permalink)  
Antiguo 06/02/2013, 03:01
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
TPV Sermepa PHP

Buenos dias,

estoy implementando un TPV Sermepa de La Caixa y tengo una duda en el planteamiento. La documentación es bastante clara y mas o menos la entiendo. Mi duda es la siguiente:

1. El cliente rellena una serie de datos (nombre, dirección, fecha nacimiento, ....)
2. Una vez ha rellenado los datos, tiene que pulsar el botón de "Confirmar".
3. Debo hacer dos cosas:
- Registrar el pedido en la BD y conseguir el numero de pedido y el importe
- Enviar los datos necesarios para hacer el pago. Eso lo haría con campos hidden.
4. Como puedo hacer que el script que le paso al action del form haga todo? No se como desde el script del action, llamo al TPV virtual.

No se si me he explicado demasiado bien.
Muchas gracias por la ayuda.

Àlex
  #2 (permalink)  
Antiguo 06/02/2013, 05:35
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: TPV Sermepa PHP

En verdad entiendo del todo que quieres decir en el punto 4.
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #3 (permalink)  
Antiguo 06/02/2013, 06:19
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: TPV Sermepa PHP

Hola gldelossantos,

entiendo que lo que quieres decir es que NO entiendes el punto 4.
No tengo claro como hacer que al pulsar el botón de "ENVIAR", el script que se ejecuta en el action del form sea capaz de guardar el pedido en la BD (lo dejaría en estado pendiente a la espera de la confirmación), preparar los campos hidden para enviar al TPV y luego enviar esos datos al TPV. Debo poner otro botón para enviarlos? LOs puedo enviar sin que el cliente tenga que volver a pulsar un botón?

Muchas gracias.
  #4 (permalink)  
Antiguo 06/02/2013, 06:26
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: TPV Sermepa PHP

Pues en el mismo script puedes agregar las demas funciones... tu action es un archivo php?
si es asi solo basta con agregar el query para insertar a la BD a tu script.

tambien muestra tu script para analizar cual seria la complejidad
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #5 (permalink)  
Antiguo 06/02/2013, 06:28
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: TPV Sermepa PHP

Si, es un archivo PHP. Pero para enviar los datos al TPV tengo que hacer un form con campos hidden y enviarlo al TPV. Para eso necesito poner otro botón y que el cliente lo vuelva a pulsar? O simulo el botón con un submit de JavaScript?

Gracias
  #6 (permalink)  
Antiguo 06/02/2013, 06:32
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: TPV Sermepa PHP

El script seria algo así:

<?PHP
// Valores constantes a modificar según el comercio
$url_tpvv='https://....;
$clave='CLAVE'; // Clave de comercio proporcionada por Sermepa.
$name='Nombre de la empresa'; // Nombre del comercio que sale en la transaccion.
$code='Comercio'; // Codigo de comercio proporcionado por Sermepa.
$terminal='001'; // Terminal usado.
$currency='978'; // 978=Euros.
$tipoOperacion='0'; // Tipo de operacion. 0=Autorizacion.

$idioma = '0'; // idioma

$order = '000'.$db->f("order_id");
$amount=25*100;
$fecha = date('ymdHis');

$message = $fecha.$clave.$amount.$currency.$order;
$signature = sha1($message);


Acceso a la BD --> Ningun problema en este punto


<form name="form" action="<?php echo $url_tpvv?>" method="post">
<input type="hidden" name="importe" value="<?php echo $amount?>" />
<input type="hidden" name="fecha" value="<?php echo $fecha?>" />
<input type="hidden" name="idioma" value="<?php echo $idioma?>" />
<input type="hidden" name="moneda" value="<?php echo $currency?>" />
<input type="hidden" name="numpedido" value="<?php echo $order?>" />
<input type="hidden" name="fuc" value="<?php echo $code?>" />
<input type="hidden" name="firma" value="<?php echo $signature ?>" />
<input type="hidden" name="idterminal" value="<?php echo $terminal?>" />
</form>

Como envio este form??
  #7 (permalink)  
Antiguo 06/02/2013, 06:38
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: TPV Sermepa PHP

No necesariamente, puedes guardar los datos en variables o sessiones... etc.. postea tu codigo para no adivinar donde esta tu problema y saber bien que puedes hacer
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #8 (permalink)  
Antiguo 06/02/2013, 06:41
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: TPV Sermepa PHP

ok ahora entendi, esos datos que tienes en Hidden puedes reemplazarlo por variables como te habia explicado anteriormente.. aunque te recomiendo que el boton confirmar ya este al final, cuando todo este cargado..
donde solo falte presionar confirmar para luego iniciar el proceso a la bd y al cobro.
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #9 (permalink)  
Antiguo 06/02/2013, 06:47
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: TPV Sermepa PHP

Gracias por la respuesta.
Si lo hago como tu dices, entonces necesito dos formularios, si no estoy equivocado. Uno para que el cliente introduzca sus datos y otro para enviar los datos al TPV.
  #10 (permalink)  
Antiguo 06/02/2013, 06:54
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: TPV Sermepa PHP

Puedes usar un solo formulario y usar javascript para ocultar los campos que dependen de que el cliente haya introducido sus datos personales.
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #11 (permalink)  
Antiguo 06/02/2013, 07:14
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años
Puntos: 270
Respuesta: TPV Sermepa PHP

Código PHP:
Ver original
  1. Registrar el pedido en la BD y conseguir el numero de pedido y el importe
Eso lo haces *antes* de mostrarle el formulario.Lo puedes guardar en la BD o en la sesión.
Asi, el action del formulario, lo envías a sermepa.
  #12 (permalink)  
Antiguo 06/02/2013, 08:58
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: TPV Sermepa PHP

Hola,

creo que no lo puedo hacer antes ya que el importe variará en función de lo que entre en el formulario.

Saludos,

Àlex
  #13 (permalink)  
Antiguo 06/02/2013, 08:59
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: TPV Sermepa PHP

Pero entonces también enviaré los datos que entra el cliente al TPV, no?

Saludos,

Àlex
  #14 (permalink)  
Antiguo 06/02/2013, 09:03
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: TPV Sermepa PHP

SI deseas, sino deseas solo tienes que enviar lo que deseas..
pero es recomendable que todo quede documentado..
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #15 (permalink)  
Antiguo 06/02/2013, 09:07
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años
Puntos: 270
Respuesta: TPV Sermepa PHP

A ver, normalmente, el formulario donde el cliente compra , no es el mismo que el que le lleva a sermepa..
O es porque el usuario va llenando una "cesta de la compra", y luego paga , o porque cuando compra algo, se le lleva a la página de "revisar datos y pagar"..
En ambos casos, sabes el importe, y has asignado un id a la compra, antes de llegar a la página de pago.
  #16 (permalink)  
Antiguo 06/02/2013, 09:10
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: TPV Sermepa PHP

asi es Alex, pero te repito que diferentes opciones de como realizar el formulario.. antes de crear el formulario debes analizar y crear un diagrama de como van a manejarse los datos del cliente y de la compra..

analiza y vuelve a estructurar bien tu proyecto.
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #17 (permalink)  
Antiguo 06/02/2013, 09:11
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: TPV Sermepa PHP

Muchas gracias a los dos por vuestras respuestas y ayuda.

SAludos,

Àlex

Etiquetas: sermepa, tpv
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 02:48.