4.13 Realizar consultas de Operaciones

 

Esta operativa permite realizar consultas de operaciones sobre el comercio-terminal en la función de Inicialización. Los XML de respuesta se describen con detalle en el documento TPVPC WS Consultas. En este documento se mostrarán algunos XML de ejemplo, pero no se entrará en detalle en la explicación de sus campos.

 

Parámetros de entrada:

 

cNumPedido, número de pedido de la operación a recuperar. Se puede especificar un valor NULL si no se desea realizar búsquedas por este campo.

cRTS, identificador de transacción, sólo se devolverán los datos de la operación solicitada. Se puede especificar un valor NULL, si no se desea realizar búsquedas por este campo. Si se indica este campo, se ignorará el resto de los campos especificados.

cFactura, campo de factura o referencia que puede especificar el comercio en las operaciones realizadas en el TPVPC, o NULL, si no se desea realizar búsquedas por este campo.

cFechaIni, fecha de inicio de operación. El formato debe ser el siguiente: YYYYMMdd HHmmss, 20070415 172905. Se puede especificar un valor NULL, si no se desea realizar búsquedas por este campo.

cFechaFin, fecha de fin de operación. El formato debe ser el siguiente: YYYYMMdd HHmmss, 20070415 182905. Se puede especificar un valor NULL, si no se desea realizar búsquedas por este campo.

cTipo, tipo de Operación. Se pueden indicar los siguientes valores:

-> PAGO

-> PREAUTORIZACION

-> CONFIRMACION

-> DEVOLUCION

Se puede especificar un valor NULL, si no se desea realizar búsquedas por este campo.

cResultado, resultado de la operación. Se podrá consultar las operaciones Autorizadas o Denegadas. Se pueden indicar los siguientes valores:

-> AUTORIZADA, recupera sólo las operaciones autorizadas.

-> DENEGADA, recupera sólo las operaciones denegadas.

Se puede especificar un valor NULL, si no se desea realizar búsquedas por este campo.

cNumPagina, indica el número de página a recuperar. El WebService realiza una paginación de consulta, aquí se indica, en caso de devolver varias páginas, el número de página a recuperar. Si se quiere recuperar la primera página, se debe indicar el número 0.

cXMLResp, buffer que almacenará la cadena con el XML de respuesta recibido desde el TPVPC. El XML se describe en detalle en el documento TPVPC WS Consultas 2d1.

iTamMaxResp, tamaño máximo de la cadena que puede almacenar el buffer cXMLResp.

 

Valor de retorno:

= 0, la operación se procesó correctamente. Este resultado no indica que se haya autorizado o denegado, simplemente que la petición se ha realizado con éxito. Para ver el resultado de la operación se debe analizar la respuesta recibida en cXMLResp.

!= 0, Código de error indicando el motivo del fallo. Descripción de los posibles códigos de error:

-1 No se han establecido correctamente los datos de configuración. Es necesario volver a llamar a la función fnDllIniTpvpcLatente. Si el problema persiste contactar con la entidad.

-2 Se produjo un error interno del sistema al realizar la operación. Si el problema persiste contacte con su entidad.

-3 Error en los parámetros de entrada. Si el problema persiste contactar con la entidad.

 

int fnDllOperConsulta(LPCTSTR cNumPedido, LPCTSTR cRTS, LPCTSTR cFactura, LPCTSTR cFechaIni, LPCTSTR cFechaFin, LPCTSTR cTipo, LPCTSTR cResultado, LPCTSTR cNumPagina, LPTSTR cXMLResp, int iTamMaxResp);

 

Ejemplo de llamada en C# .NET:

[DllImport("dllTpvpcLatente.dll")]
public static extern int fnDllOperConsulta(String cNumPedido, String cRTS, String cFactura, String cFechaIni, String cFechaFin, String cTipo, String cResultado, String cNumPagina, StringBuilder cXMLResp, int iTamMaxResp);

 

Ejemplo de llamada en Visual Basic .NET

Public Declare Function fnDllOperConsulta Lib "dllTpvpcLatente.dll" (ByVal cNumPedido As String, ByVal cRTS As String, ByVal cFactura As String, ByVal cFechaIni As String, ByVal cFechaFin As String, ByVal cTipo As String, ByVal cResultado As String, ByVal cNumPagina As String, ByVal cXMLResp As String, ByVal iTamMaxREsp As Integer) As Integer

 

Ejemplo de respuesta:

 

<consultas version="2.1">

<resultadoConsulta>

<operacion>

<tipoOper>Autorizacion</tipoOper>

<tarjeta>************5532</tarjeta>

<caducidad>0702</caducidad>

<importe>0.01</importe>

<moneda>978</moneda>

<terminal>1</terminal>

<pedido>1110</pedido>

<identificadorRTS>070001070423122035346136</identificadorRTS>

<fechaOperacion>2007-04-23 12:20:35.628</fechaOperacion>

<factura>IDOPER_PINPAD</factura>

<estado>F</estado>

<resultado>AUTORIZADA</resultado>

<codigoRespuesta>0</codigoRespuesta>

</operacion>

<operacion>

<tipoOper>Autorizacion</tipoOper>

<tarjeta>************5532</tarjeta>

<caducidad>0702</caducidad>

<importe>0.01</importe>

<moneda>978</moneda>

<terminal>1</terminal>

<pedido>1118</pedido>

<identificadorRTS>070001070423094540346125</identificadorRTS>

<fechaOperacion>2007-04-23 09:45:40.436</fechaOperacion>

<factura>IDOPER_PINPAD</factura>

<estado>F</estado>

<resultado>AUTORIZADA</resultado>

<codigoRespuesta>0</codigoRespuesta>

</operacion>

<numoperaciones>2</numoperaciones>

<numpagina>1</numpagina>

<totalpaginas>1</totalpaginas>

<comercio>777888991</comercio>

<timestamp>20070423 125118</timestamp>

<firma>8E7C43989E4586F3CA3ED781EF3CB2E1270C0075</firma>

</resultadoConsulta>

</consultas>