> ## 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 
      }   
```
