Consultas

Solicitud de Descarga de Declaraciones (PDF) del SRI

Solicita la descarga en formato PDF de declaraciones tributarias del SRI utilizando el API de TAXO WS

Este endpoint inicia una tarea asíncrona para solicitar la descarga en formato PDF de declaraciones tributarias existentes en el sistema del SRI, especificando el contribuyente, el año, el período (mes/semestre) y el tipo de impuesto. El PDF resultante será entregado vía Webhook.

Puedes especificar el período como un mes (ej. "01", "12") o un semestre (ej. "S1", "S2") según el tipo de declaración.

Detalles Técnicos

Endpoint y Método

  • Método: POST
  • Endpoint: /tasks - Se utiliza el endpoint genérico para crear tareas de fondo

Headers Requeridos

  • Content-Type: application/json - El formato de la solicitud
  • x-api-key: [Tu Clave] - Autenticación

Estructura del Body/Payload

El payload es específico para identificar la declaración que se desea descargar:

  • type (string, requerido): El tipo de tarea. Valor: "TAXPAYER.STATEMENTS.DOWNLOAD"
  • taxpayerId (string, requerido): El RUC del contribuyente
  • year (string, requerido): El año fiscal de la declaración (ej. "2024")
  • month (string, requerido): El período a consultar. Puede ser un mes (ej. "01", "12") o un semestre (ej. "S1", "S2")
  • statementType (string, requerido): El tipo de declaración. Valores posibles incluyen: "IVA", "Renta Naturales", "Renta Sociedades", etc.

Código de Ejemplo

Javascript
const axios = require('axios');
let data = JSON.stringify({
  "type": "TAXPAYER.STATEMENTS.DOWNLOAD",
  "taxpayerId": "1726051285001",
  "year": "2024",
  "month": "01",
  "statementType": "IVA"
});

let config = {
  method: 'post',
  url: 'https://staging-api.taxo.ws/tasks',
  headers: { 
    'x-api-key': 'tu_api_key',
    'Content-Type': 'application/json'
  },
  data : data
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

Respuesta de la solicitud

Como es una tarea asíncrona, la respuesta inmediata es un acuse de recibo:

JSON
{
  "status": "success",
  "data": {
    "id": "fbbb6715-bd6c-4007-8a35-c3ef3625c6bd",
    "createdAt": "2025-11-13T16:36:17.000Z",
    "status": "INITIALIZED"
  }
}

Campos de la Respuesta

  • status (string): "success"
  • data.id (string): El ID único de la tarea de descarga de la declaración
  • data.createdAt (string): La hora exacta de la solicitud
  • data.status (string): Siempre "INITIALIZED"

Código de Respuesta HTTP

201 Created: La solicitud ha sido aceptada por la API y la tarea de descarga ha sido puesta en cola.

Por defecto todas las tareas de descarga de declaraciones empiezan en el estado INITIALIZED que nos indica que la tarea ha sido iniciada y podemos hacer su seguimiento en el webhook.