SOAP · ¿Está creciendo?
Evolución de tamaño
El tamaño de cada empresa año comercial por año comercial: tramo de ventas, trabajadores, capital y régimen, desde el primer año que publica el SII. Los ejemplos de abajo son la petición y la respuesta real de cada operación, no una aproximación.
Lo que descuenta cada operación es lo mismo por REST, SOAP, GraphQL y MCP —pagas por el dato, no por el protocolo—; la tabla completa está en Empezar.
POST /soap/v1
ObtenerTamanos — Evolución de tamaño
El tamaño del RUT en cada año comercial que el SII publicó en su nómina anual, del más reciente al más viejo: tramo de ventas con su categoría, trabajadores, capital, régimen y rubro. La lista vacía también es respuesta: el SII nunca lo clasificó.
El RUT está en el padrón. Descuenta una consulta — como su gemelo REST.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="https://api.datario.cl/soap/v1">
<soapenv:Header/>
<soapenv:Body>
<tns:ObtenerTamanos>
<tns:rut>61.704.000-K</tns:rut>
</tns:ObtenerTamanos>
</soapenv:Body>
</soapenv:Envelope>
curl -s -i https://api.datario.cl/soap/v1 \
-H "Authorization: Bearer dtr_TU_KEY" \
-H "Content-Type: text/xml; charset=utf-8" \
--data-binary @peticion.xml
import requests
sobre = open("peticion.xml", "rb").read()
r = requests.post(
"https://api.datario.cl/soap/v1",
data=sobre,
headers={
"Authorization": "Bearer dtr_TU_KEY",
"Content-Type": "text/xml; charset=utf-8",
},
timeout=10,
)
if "<soap:Fault>" in r.text:
raise SystemExit(r.text) # faultstring dice qué pasó
print(r.text)
<?php
// SoapClient lee el WSDL y genera las operaciones solo.
$contexto = stream_context_create(["http" => [
"header" => "Authorization: Bearer dtr_TU_KEY",
]]);
$cliente = new SoapClient(
"https://api.datario.cl/soap/v1?wsdl",
["stream_context" => $contexto]
);
try {
$ficha = $cliente->ObtenerTamanos([
"rut" => "61.704.000-K",
]);
print_r($ficha);
} catch (SoapFault $f) {
echo $f->faultcode . ": " . $f->faultstring;
}
using var http = new HttpClient();
http.DefaultRequestHeaders.Add(
"Authorization", "Bearer dtr_TU_KEY");
var sobre = new StringContent(
File.ReadAllText("peticion.xml"),
Encoding.UTF8, "text/xml");
var r = await http.PostAsync(
"https://api.datario.cl/soap/v1", sobre);
var xml = await r.Content.ReadAsStringAsync();
if (xml.Contains("<soap:Fault>"))
throw new Exception(xml); // faultstring dice qué pasó
Console.WriteLine(xml);
var sobre = Path.of("peticion.xml");
var req = HttpRequest.newBuilder()
.uri(URI.create(
"https://api.datario.cl/soap/v1"))
.header("Authorization", "Bearer dtr_TU_KEY")
.header("Content-Type",
"text/xml; charset=utf-8")
.POST(BodyPublishers.ofFile(sobre))
.build();
var r = HttpClient.newHttpClient()
.send(req, BodyHandlers.ofString());
// 500 = fault: el faultstring dice qué pasó.
System.out.println(r.body());
Set Variable [ $accion ; Value:
"https://api.datario.cl/soap/v1/ObtenerTamanos" ]
Insert from URL [ Select ; With dialog: Off ; Target: $r ;
"https://api.datario.cl/soap/v1" ; cURL options:
"-X POST" &
" -H \"Authorization: Bearer dtr_TU_KEY\"" &
" -H \"Content-Type: text/xml\"" &
" -H \"SOAPAction: " & $accion & "\"" &
" -D @peticion.xml" ]
# 500 = fault: el faultstring dice qué pasó.
Show Custom Dialog [ $r ]
La respuesta
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ObtenerTamanosResponse xmlns="https://api.datario.cl/soap/v1">
<tamanos>
<rut>61704000-K</rut>
<rut_formateado>61.704.000-K</rut_formateado>
<es_empresa>true</es_empresa>
<anios>
<anio>
<anio_comercial>2024</anio_comercial>
<tramo_ventas>
<codigo>13</codigo>
<descripcion>4to Rango Gran Empresa</descripcion>
<desde_uf>1000000.01</desde_uf>
<categoria>Gran empresa</categoria>
</tramo_ventas>
<trabajadores>16946</trabajadores>
<regimen>
<codigo>no14</codigo>
<descripcion>CONTRIBUYENTES NO SUJETOS AL ARTICULO 14</descripcion>
</regimen>
<renta_presunta>false</renta_presunta>
<rubro>
<codigo>B</codigo>
<descripcion>EXPLOTACION DE MINAS Y CANTERAS</descripcion>
</rubro>
<subrubro>EXTRACCION Y PROCESAMIENTO DE COBRE</subrubro>
</anio>
</anios>
<fuente>Nómina anual de empresas, SII</fuente>
<publicado>2026-01-29T15:31:29+00:00</publicado>
<consultado_en>2026-08-29T04:12:07+00:00</consultado_en>
</tamanos>
</ObtenerTamanosResponse>
</soap:Body>
</soap:Envelope>
El ejemplo muestra el año comercial más reciente; la respuesta trae todos los que el SII publicó para este RUT, uno por elemento.
Probar en la consola Este producto por REST Este producto por GraphQL Este producto por MCP Qué es Evolución de tamaño