4.6 Realizar una operación de Confirmación o Devolución

 

Una confirmación se realiza siempre sobre operaciones de preautorización realizadas con anterioridad.

Una devolución, como su propio nombre indica, realiza el abono o devolución del importe indicado, a la tarjeta con la que se realizó la operación original.

 

Parámetros de Entrada:

 

cNumPedido, número de pedido de la operación original. El campo pedido se encuentra en todas las respuestas de peticiones de operaciones realizadas al TPVPC. Valor obligatorio en Modo Transparente.

cRTSOriginal, identificador RTS de la transacción original. El campo identificadorRTS se encuentra en todas las respuestas de peticiones de operaciones realizadas al TPVPC. Valor Opcional, en cualquiera de los modos. En modo Transparente se recomienda su uso.

cImporte, importe que se quiere devolver o confirmar, en formato XXXXXXXXX.XX. Ejemplo: 1.23, 33.05, 0.01, etc. Valor obligatorio en Modo Transparente.

cFactura, campo suministrado por el comercio, para asociar una descripción o valor a la operación. Este valor es generado por el comercio y el TPVPC no realizará ninguna validación sobre el mismo.

cTipoOper, indica el tipo de operación a realizar. Puede tomar dos posibles valores:

CONFIRMACION, realizará una confirmación sobre una PREAUTORIZACIÓN que se autorizó con anterioridad.

DEVOLUCION, realizará una devolución de una operación que se autorizó con anterioridad.

Valor obligatorio en Modo Transparente.

cXMLResp, buffer que almacenará una cadena XML con el resultado de la operación de DEVOLUCION o CONFIRMACION. El formato de este XML se encuentra detallado en la documentación "Conexión con TPVPC a través de WEB SERVICE" versión 6.0.

iTamMaxResp, indica el tamaño máximo del buffer donde se almacenará la cadena xml con el resultado de la operación. Se recomienda al menos un tamaño de 1024 bytes.

 

Valor de retorno:

Valor 0, indica que la operación se ha procesado correctamente. Muy importante indicar que este resultado NO INDICA QUE LA OPERACIÓN ESTÉ AUTORIZADA, tan sólo es el resultado de su proceso.

Valor distinto de 0, Código de error indicando el motivo del fallo. En el Anexo III, se detallan estos errores.

int fnDllOperComContable(LPCTSTR cNumPedido, LPCTSTR cRTSOriginal, LPCTSTR cImporte, LPCTSTR cFactura, LPCTSTR cTipoOper, LPTSTR cXMLResp, int iTamMaxResp);

 

Ejemplo de llamada en C# .NET:

[DllImport("dllTpvpcLatente.dll")]
public static extern int fnDllOperComContable(String cNumPedido, String cRTSOriginal, String cImporte, String cFactura, String cTipoOper, StringBuilder cXMLResp, int iTamMaxResp);

 

Ejemplo de llamada en Visual Basic .NET

Public Declare Function fnDllOperComContable Lib "dllTpvpcLatente.dll" (ByVal cNumPedido As String, ByVal cRTSOriginal As String, ByVal cImporte As String, ByVal cFactura As String, ByVal cTipoOper As String, ByVal cXMLResp As String, ByVal iTamMaxREsp As Integer) As Integer