# Consultar el historial de transacciones

La API de Consulta (`/consulta`) te permite buscar transacciones pasadas basándose en rangos de fechas, resultados o identificadores específicos. Esta es tu herramienta principal para la conciliación y para "recuperar" el estado de las operaciones si tu servidor no recibió una notificación asíncrona.

## El endpoint de consulta

* **URL de Test:** `https://tpvpc-i.redsys.es:27443/TPV_PC/services/rest/tpvpcwss/v1/consulta`  
* **URL de Producción:** `https://tpvpc.redsys.es/TPV_PC/services/rest/tpvpcwss/v1/consulta`  
* **Método:** `POST`

## Criterios de búsqueda

Para realizar una búsqueda, debes enviar una petición JSON firmada. Los campos específicos que incluyas determinarán el alcance de la búsqueda.

### Campos obligatorios

* `fechaInicio`: Fecha de inicio (Formato: `YYYY-MM-DD-HH.mm.ss` o `YYYY-MM-DD HH:mm:ss`).  
* `fechaFin`: Fecha de fin. **Nota:** El rango máximo entre el inicio y el fin es de **30 días**.

### Filtros opcionales

Puedes acotar tu búsqueda utilizando estos campos:

* `pedido`: El ID de pedido (Order ID) específico asignado por el sistema.  
* `factura`: Tu referencia de factura personalizada.  
* `operacion`: Filtrar por tipo (`PAGO`, `PREAUTORIZACION`, `CONFIRMACION`, `DEVOLUCION`).  
* `resultado`: Filtrar por resultado (`AUTORIZADA`, `DENEGADA`).  
* `rts`: El ID de transacción específico (RTS). Si se proporciona, anula los demás filtros y devuelve únicamente esa operación específica.

## Paso 1: Enviar una petición de consulta

Aquí tienes un ejemplo de petición de búsqueda de pagos autorizados dentro de una ventana de tiempo específica.

```json
{
  "info": {
    "comercio": "777888991",
    "timestamp": "20250428 111217",
    "datosOperacion": {
      "fechaInicio": "2025-03-03-16.00.01",
      "fechaFin": "2025-03-04-16.35.09",
      "operacion": "PAGO",
      "resultado": "AUTORIZADA",
      "factura": "FAC-LATENTE",
      "pagina": 0
    }
  },
  "signature": "YOUR_CALCULATED_SIGNATURE"
}
```

> **Paginación**: Si tu búsqueda devuelve muchos resultados, utiliza el campo `pagina` (empezando en `0`) para navegar por los conjuntos de resultados.

## Paso 2: Gestionar la respuesta

La respuesta contiene metadatos de paginación y una lista de `operaciones`.

```json
{
  "info": {
    "comercio": "777888991",
    "resultadoConsulta": {
      "numOperaciones": 1,
      "numPagina": 0,
      "totalPaginas": 1,
      "operaciones": [
        {
          "tipoOper": "Autorizacion",
          "tarjeta": "************7899",
          "importe": "2.02",
          "moneda": "978",
          "pedido": "4894",
          "fechaOperacion": "2025-05-05 16:10:56.0",
          "factura": "FAC-LATENTE",
          "estado": "F",
          "resultado": "AUTORIZADA",
          "codigoRespuesta": "0",
          "numAutorizacion": "577498"
        }
      ]
    },
    "resultado": {
      "codigo": "0"
    }
  },
  "signature": "SERVER_SIGNATURE"
}
```

### Interpretar el estado de la transacción

Dentro de la lista de `operaciones`, el campo `estado` te indica el estado actual del ciclo de vida de la transacción:

| Valor | Significado | Descripción |
| :---- | :---- | :---- |
| `F` | Finalizada | La operación se completó correctamente (Aprobada o Denegada). |
| `P` | En proceso | Es probable que el terminal siga esperando la interacción del usuario. |
| `T` | Fallo técnico | Se produjo un error durante el procesamiento. |
| `G` | Denegada | El banco rechazó la transacción. |
| `A` | Anulada | El usuario o el sistema canceló la operación. |

## Próximos pasos

* [**Depurar problemas de firma y conectividad**](/es/get-smart/get-smart-api-cloud/integration-guides/debug-signature-and-connectivity-issues)**:** Si tu consulta devuelve "Firma Incorrecta", asegúrate de que estás firmando la cadena JSON exacta enviada.  
* [**Endpoint de Totales y conciliación**](/es/get-smart/get-smart-api-cloud/reference/totals-and-reconciliation-endpoint)**:** Aprende a obtener totales diarios en lugar de listas de transacciones individuales.