Ir al contenido principal

Listar Facturas

Permite obtener una lista de elementos, donde cada elemento contiene la información de cada una de las facturas registradas en la inmobiliaria.

Endpoint: https://{{instancia}}.arrendasoft.co/service/v2/public/invoices/list

{{instancia}}: Hace referencia a la instancia de cada inmobiliaria.

Petición

MétodoGET
Content-Typeapplication/json
AuthorizationBearer token, Token obtenido al consumir el servicio Login
Parámetros
ParámetroTipoObligatorio

Valor por defecto

Descripción
pageintegerNo1Especifica la página de resultados que se desea recuperar al realizar la solicitud.
page_sizeintegerNo10Especifica el número máximo de elementos que se deben devolver en la solicitud, el límite máximo es de 1000.

Ejemplos de peticiones

https://{{instancia}}.arrendasoft.co/service/v2/public/invoices/list
https://{{instancia}}.arrendasoft.co/service/v2/public/invoices/list?page=1
https://{{instancia}}.arrendasoft.co/service/v2/public/invoices/list?page_size=100
https://{{instancia}}.arrendasoft.co/service/v2/public/invoices/list?page=1&page_size=100

Respuesta

Lista de elementos, donde cada elemento contiene la información de los datos obtenidos, estado, mensaje, listado de las facturas y paginación.

{
    "status": 200,
    "message": null,
    "body": [
        {
            "factura_id": 366,
            "factura_numero": 324,
            "resolucion": "0 - 120000042273",
            "fecha_factura": "2014-08-01",
            "fecha_vencimiento": "2014-08-06",
            "valor_total": "94992.00",
            "saldo": "94992.00",
            "documento_tercero": "1111111",
            "nombre_tercero": "TERCERO FACTURADO",
            "estado": "Facturada",
            "estado_dian": null,
            "estado_cliente_dian": null,
            "notas": 0,
            "creado_por": "Administrador",
            "fecha_envio_dian": null,
            "fecha_creacion": "2014-08-08 10:50:52"
        },
        {
            "factura_id": 8,
            "factura_numero": 7,
            "resolucion": "0 - 120000042273",
            "fecha_factura": "2014-01-01",
            "fecha_vencimiento": "2014-01-06",
            "valor_total": "1666850.00",
            "saldo": "0.00",
            "documento_tercero": "22222222",
            "nombre_tercero": "COOPERATIVA MULTIACTIVA",
            "estado": "Pagada",
            "estado_dian": null,
            "estado_cliente_dian": null,
            "notas": 0,
            "creado_por": "Contador",
            "fecha_envio_dian": null,
            "fecha_creacion": "2014-05-07 11:14:46"
        }
    ],
    "pagination": {
        "total_records": 41326,
        "total_pages": 83,
        "current_page": 83,
        "page_size": 500,
        "current_page_records": 326,
        "has_next_page": false,
        "has_previous_page": true
    }
}
Claves y Descripciones del JSON de Facturación

Esta tabla enumera las claves presentes en el JSON principal de la respuesta y proporciona una breve descripción de cada una, explicando su propósito y el tipo de información que contienen.

ClaveTipoDescripción
statusEnteroCódigo del estado de la respuesta, 200 para exitoso, 500 para error
messageTextoCuando la respuesta es exitosa, es nulo o vacío, y cuando hay error, este contiene el mensaje que describe el error presentado.
bodyObjetoContiene el listado de facturas retornadas por la API.
paginationObjetoContiene toda la información de paginación y respuesta.
Cuerpo

Cada elemento dentro de la lista body, tiene las siguientes claves:

ClaveTipoDescripción
factura_idEnteroIdentificador único de la factura
factura_numeroEnteroNúmero de la factura
resolucionTextoPrefijo y número de la resolución
fecha_facturaTextoFecha de la factura
fecha_vencimientoTextoFecha de vencimiento de la factura
valor_totalNuméricoValor de la factura
saldoNuméricoSaldo pendiente de la factura
documento_terceroTextoNúmero de documento del cliente
nombre_terceroTextoNombre completo del cliente
estadoTextoEstado de la factura
estado_dianTextoEstado de la factura en la DIAN cuando es una factura electrónica
estado_cliente_dianTextoEstado de la factura respecto al cliente en la DIAN cuando es una factura electrónica
notasNuméricoCantidad de notas débito o crédito que tiene la factura
creado_porTextoUsuario que creó la factura en el sistema
fecha_envio_dianTextoFecha de envío de la factura a la DIAN cuando es factura electrónica
fecha_creacionTextoFecha de creación de la factura
Paginación

Cada elemento dentro de la lista pagination tiene las siguientes claves:

ClaveTipoDescripción
total_recordsNuméricoTotal de facturas del sistema
total_pagesNuméricoCantidad de páginas, este corresponde al total de registros dividido por el tamaño de la página
current_pageNuméricoPágina actual
page_sizeNuméricoTamaño de la página, es decir, cantidad de registros por consulta
current_page_recordsNuméricoCantidad de registros de la página actual
has_next_pageBooleanoVerdadero si hay siguientes páginas que se pueden consultar, falso en otro caso
has_previous_pageBooleanoVerdadero si existen páginas previas que se pueden consultar, falto en otro caso

Ejemplos

Curl
curl -X GET "https://{{instancia}}.arrendasoft.co/service/v2/public/invoices/list?page_size=100&page=3" -H "Content-Type: application/json" -H "Authorization: Bearer YOUR_AUTHENTICATION_TOKEN"
PHP Curl
<?php

$instance = 'your_instance'; // Reemplace con su instancia actual
$token = 'YOUR_AUTHENTICATION_TOKEN'; // Reemplace con el token obtenido desde el servicio de login

// Parámetros de ejemplo para listar facturas
$page = 1;
page_size = 50;

$url = "https://{$instance}.arrendasoft.co/service/v2/public/invoices/list?";
$queryParams = [
    'page' => $page,
    'page_size' => $page_size
];
$url .= http_build_query($queryParams);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Authorization: Bearer ' . $token
]);

$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);

if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
} else {
    echo "HTTP Status Code: " . $http_code . "\n";
    echo "Response: " . $response . "\n";
    
    // Procesar la respuesta
    $info = json_decode($response, true);
    $body = $info['body'] ?? [];
    if ($http_code == 200 && !empty($body)) {
        echo "Se consultaron " . count($body) . " facturas.\n";
        
        // Ejemplo: Imprimir los números de las facturas
        foreach($body as $invoice) {
          echo "Factura número: " . $invoice['factura_numero'] . "\n";
        }
    } else {
        echo "{$info['message']}.\n";
    }
}
curl_close($ch);

?>