> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zonavirtual.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Consulta

El método cumplirá la función de consultar el estado de la cartera dependiendo de un número de factura o identificación de cliente, en este último caso, retornará el número de facturas que estén
asociadas al cliente.

## Endpoint

```http theme={null}
POST http://dominio_comercio/ApiPagosN3/Consulta
```

## Mensajería

| **Metodo** | \*\*Formato |
| - | - |
| `POST` | `JSON` |

# Request

Los parámetros y sus valores deben ser enviados como se muestra en la siguiente tabla:

| Nombre | Tipo y Tamaño | Descripción |
| - | - | - |
| IdComercio | Integer Obligatorio | identificación  del  comercio  en  zonapagos,  este valor  es  una  constante  y  llega  como  parámetro  de  consulta  en  el método. |
| Password | String(15) Obligatorio | contraseña  de  identificación  entre  zonapagos  y comercio |
| IdFactura | String(15) Opcional | ID o Número factura |
| IdCliente | String(20) Opcional | ID o Documento del cliente |
| ClaveConsulta | String(20) Opcional | clave que se utiliza para la consulta correspondiente  al  ID  de  factura  o  ID  cliente  para  el  cual  se  está realizando la consulta de registros. |
| ForzarParamConsulta | String(5) Opcional | parámetro de configuración especial para algunos tipos de consultas requeridas para algunos comercios. |

## Ejemplo Request

### Por identificación del cliente

```json theme={null}
{ 
  "IdComercio": 2652, 
  "Password": "PagosN3", 
  "IdFactura": "", 
  "IdCliente": "A123456789", 
  "ClaveConsulta": "70201", 
  "ForzarParamConsulta": "" 
} 
```

### Por identificación de factura

```json theme={null}
{ 
  "IdComercio": 2652, 
  "Password": "PagosN3", 
  "IdFactura": "123ABC", 
  "IdCliente": "", 
  "ClaveConsulta": "70202", 
  "ForzarParamConsulta": "" 
}
```

# Response

Los parámetros y sus valores deben ser retornados como se muestra en la siguiente tabla:

| Nombre | Tipo | Descripción |
| - | - | - |
| CodRespuesta | Integer **Obligatorio** | Código de respuesta dependiendo del estado de la consulta `0` Si la consulta es exitosa. `1` Si no se encontraron registros en la consulta. `2` Error en autenticación de seguridad. `9` Error técnico. |
| Descripcion | String(100) **Obliogatorio** | Retorna los siguientes mensajes de acuerdo con el código respondido en el parámetro anterior `0` Consulta Exitosa `1` No se encontraron registros en la consulta `2` Error en autenticación de seguridad `9` Error Técnico |
| Facturas | Array **Obliogatorio** | se devuelven todos los registros validos en la consulta realizada |
| CodServicioPse | String(10) **Opcional** | Retorna el código que se utilizará para realizar los pagos con medio de pago PSE. |
| CambiarClave | Integer **Opcional** | Retorna  el  parámetro  que  se  utiliza  para  indicar  si  el cliente  debe  cambiar  clave  antes  de  acceder  al  pago  de facturas |

## Arreglo Facturas

| Campo | Tipo | Descripción |
| - | - | - |
| IdFactura | String | Factura |
| Concepto | String | Concepto |
| TotalFactura | Double | Total |
| TotalIVA | Double | IVA |
| Saldo | Double | Saldo |
| FechaVencimiento | Date | Fecha |
| Orden | Integer | Orden |
| TipoIdCliente | String | Tipo documento |
| IdCliente | String | Documento |
| Nombre | String | Nombre |
| Apellido | String | Apellido |
| Email | String | Correo |
| Telefono | String | Teléfono |
| CampoAdicional1 | String | Campo 1 |
| CampoAdicional2 | String | Campo 2 |
| CampoAdicional3 | String | Campo 3 |

## Ejemplo Response

```json theme={null}
{ 
   "CodRespuesta": "0", 
   "Descripcion": "Consulta Exitosa", 
   "Facturas":    [ 
            { 
         "IdFactura": "123456789", 
         "Concepto": "Concepto1", 
         "TotalFactura": 9999.00, 
         "TotalIVA": 1899.81, 
         "Saldo": 11898.81, 
         "FechaVencimiento": "31/12/2017",
	       "Orden": 1, 
         "TipoIdCliente": 1, 
         "IdCliente": "A123456789", 
         "Nombre": "Juan", 
         "Apellido": "Casas", 
         "Email": "juan.casas@prueba.com.co", 
         "Telefono": "1234567890", 
         "CampoAdicional1": "Carrera 50 # 50 sur 50", 
         "CampoAdicional2": "", 
         "CampoAdicional3": "" 
       }, 
            { 
         "IdFactura": "123456790", 
         "Concepto": "Concepto2", 
         "TotalFactura": 9999.00, 
         "TotalIVA": 1899.81, 
         "Saldo": 11898.81,
	       "FechaVencimiento": "31/12/2017", 
         "Orden": 2, 
         "TipoIdCliente": 1, 
         "IdCliente": "A123456789", 
         "Nombre": "Juan", 
         "Apellido": "Casas", 
         "Email": "juan.casas@prueba.com.co", 
         "Telefono": "1234567890", 
         "CampoAdicional1": "Carrera 50 # 50 sur 50", 
         "CampoAdicional2": "", 
         "CampoAdicional3": "" 
       }, 
    	    { 
         "IdFactura": "123456791", 
         "Concepto": "Concepto3", 
         "TotalFactura": 19999.00, 
         "TotalIVA": 3799.81, 
         "Saldo": 23798.81, 
         "FechaVencimiento": "31/12/2017", 
         "Orden": 3, 
         "TipoIdCliente": 1, 
         "IdCliente": "A123456789", 
         "Nombre": "Juan", 
         "Apellido": "Casas", 
         "Email": "juan.casas@prueba.com.co", 
         "Telefono": "1234567890", 
         "CampoAdicional1": "Carrera 50 # 50 sur 50", 
         "CampoAdicional2": "",
         "CampoAdicional3": "" 
       }, 
         ], 
         "CodServicioPpal": "2701", 
         "CambiarClave": 0 
      }   
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.