Endpoints

Catálogos SRI

Los catálogos son listas de referencia mantenidas por el SRI o por la plataforma. Son de solo lectura desde la API. Úsalos para poblar selects en tu UI y para resolver IDs estables a partir de códigos SRI.

GET/catalogs/{catalog} API Key

Lista los items de un catálogo.

Path

CampoTipoRequeridoDescripción
catalogstringNombre del catálogo (ver tabla más abajo).
GET/catalogs/{catalog}/{id} API Key

Obtiene un item específico de un catálogo por su ID.

CampoTipoRequeridoDescripción
catalogstringNombre del catálogo.
idintID del item dentro del catálogo.

Catálogos disponibles

NombreContenido
document-statesEstados posibles de un documento (borrador, firmado, recibido, autorizado, rechazado).
document-typesTipos SRI: 01 Factura, 03 Liquidación, 04 Nota de Crédito, 05 Nota de Débito, 06 Guía de Remisión, 07 Comprobante de Retención.
emission-typesTipos de emisión (normal, indisponibilidad del sistema, …).
environmentsAmbientes SRI: 1 = Pruebas, 2 = Producción.
identification-typesTipos de identificación: cédula, RUC, pasaporte, consumidor final, identificación del exterior.
item-typesTipos de producto/servicio.
payment-locationsTipo de pago de una retención (ATS pagoLocExt): 01 local (residente), 02 al exterior (no residente).
payment-methodsFormas de pago aceptadas por el SRI.
retention-codesCódigos de retención (codigoRetencion). Cada item conserva percentage e incluye allowedPercentages, requiresExplicitPercentage y su retentionTaxType.
retention-tax-typesImpuesto que retiene una línea de retención: 1 Renta, 2 IVA, 6 ISD.
sustain-codesSustento tributario del documento sustento en una retención (Tabla 5 ATS): 01–10.
taxesImpuestos disponibles: IVA 15 %, IVA 0 %, ICE, …
tax-typesTipos de impuesto: IVA, ICE, IRBPNR.

Porcentajes de retención

Todos los elementos de retention-codes incluyen los campos allowedPercentages y requiresExplicitPercentage. Si el segundo es true, tu integración debe elegir y enviar explícitamente uno de los valores admitidos en retention_percentage; no utilices percentage como selección automática.

json
{
  "data": {
    "id": 13,
    "retentionTaxType": { "id": 1, "name": "RENTA", "code": "1" },
    "code": "310",
    "name": "Servicio de transporte privado de pasajeros o transporte público o privado de carga",
    "percentage": 0,
    "current": true,
    "allowedPercentages": [0, 1],
    "requiresExplicitPercentage": true
  }
}

Ejemplos

bash
curl -X GET https://www.factura-tor.com/api/catalogs/payment-methods \
  -H "X-API-Key: tu_api_key"
bash
curl -X GET https://www.factura-tor.com/api/catalogs/document-types/1 \
  -H "X-API-Key: tu_api_key"