Referencia
Gastos
Cada boleta, factura o gasto sin documento. Se suben con foto o PDF y se leen solos.
- GET
/gastosListar los gastos de una persona - POST
/gastosSubir un gasto - GET
/gastos/{id}Ver un gasto - PATCH
/gastos/{id}Corregir un gasto - GET
/gastos/{id}/archivoDescargar el documento - POST
/gastos/{id}/partesAgregar una parte - POST
/kilometrajeRendir un recorrido - GET
/kilometraje/bitacoraBitácora de kilometraje
Listar los gastos de una persona
/api/v1/gastosLos gastos de quien pregunta, del más nuevo al más antiguo. Con una llave, manda Simpligastos-Persona para ver los de esa persona: la llave sola es una persona técnica sin gastos. Para los gastos de toda la empresa, usa las rendiciones, /reportes o /exportar.
- En nombre de alguien: manda
Simpligastos-Personacon el id de la persona.
Parámetros de consulta
sin_rendir1- Solo los que todavía no van en una rendición.
Pedido
curl "https://simpligastos.cl/api/v1/gastos" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Simpligastos-Persona: 72efadfd-f668-4bec-a7c4-f728bbe2e3ca"const respuesta = await fetch("https://simpligastos.cl/api/v1/gastos", {
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
const datos = await respuesta.json();import os
import requests
respuesta = requests.get(
"https://simpligastos.cl/api/v1/gastos",
headers={
"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}",
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"gastos": [
{
"id": "b0c153af-2b73-4a74-98bd-28b2220c8209",
"personaId": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"rendicionId": "c7031420-7f7d-4b53-b3f7-8484a7b9c7e5",
"estado": "listo",
"canal": "movil",
"archivoTipo": "image/jpeg",
"tieneArchivo": true,
"partes": 1,
"tipoDocumento": "factura",
"folio": "411473",
"fecha": "2026-10-05",
"emisorRut": "78441427-2",
"emisorNombre": "Sodimac",
"neto": 74101,
"exento": null,
"iva": 14079,
"impuestosAdicionales": [],
"total": 88180,
"medioPago": null,
"detalle": "Taladro, brocas y tarugos",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305
}
],
"pagadoPorEmpresa": false,
"categoriaId": "16855a8d-78e0-4c59-9365-1739dcd23ac4",
"centroCostoId": "ec909ecb-6aa3-4795-80bd-02446735b974",
"comentario": null,
"campos": {},
"observaciones": [],
"modelo": "timbre",
"conTimbre": true,
"siiEstado": "valido",
"corregido": false,
"duplicadoDe": null,
"motivoRechazo": null,
"creadoEn": "2026-10-05T17:42:00.000Z"
}
]
}Subir un gasto
/api/v1/gastosCon multipart, sube una foto o PDF y crea el gasto en estado leyendo; se lee del timbre del SII o con IA en segundos (consulta GET /gastos/{id} hasta que deje de estar leyendo, o escucha gasto.leido). Una boleta larga que no cabe en una foto (supermercado, ferretería) va en varias: repite el campo archivo con cada parte, de arriba abajo y con un poco de traslape, y se crea un solo gasto, que se lee con todas sus partes juntas y cuenta como un documento en el plan XS. Con JSON, crea un gasto sin documento, si la política de la empresa lo acepta.
- En nombre de alguien: manda
Simpligastos-Personacon el id de la persona.
Formulario (multipart/form-data)
archivoarchivoobligatorio- JPG, PNG, WEBP o PDF de hasta 15 MB. Otro formato (también HEIC) responde 415; más de 15 MB, 413; vacío, 400. Se repite hasta 6 veces con las partes de una misma boleta, en orden y solo fotos (un PDF va solo); más de 6, o un PDF entre varias, responde 400.
comentariotexto- Opcional: lo que quien rinde quiera agregar.
O con JSON, sin documento
fechafechaobligatorio- AAAA-MM-DD, en hora de Chile.
totalenteroobligatorio- De 1 a 100.000.000.
emisorNombretextoobligatorio- De 1 a 200 caracteres.
comentariotextoobligatorio- De 3 a 500 caracteres.
categoriaIdid o null- Opcional.
centroCostoIdid o null- Opcional.
Pedido
curl -X POST "https://simpligastos.cl/api/v1/gastos" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Simpligastos-Persona: 72efadfd-f668-4bec-a7c4-f728bbe2e3ca" \
-F "archivo=@boleta.jpg"import { readFile } from "node:fs/promises";
const formulario = new FormData();
formulario.append("archivo", new Blob([await readFile("boleta.jpg")], { type: "image/jpeg" }), "boleta.jpg");
const respuesta = await fetch("https://simpligastos.cl/api/v1/gastos", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
body: formulario,
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
const datos = await respuesta.json();import os
import requests
respuesta = requests.post(
"https://simpligastos.cl/api/v1/gastos",
headers={
"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}",
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
files={"archivo": ("boleta.jpg", open("boleta.jpg", "rb"), "image/jpeg")},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"gasto": {
"id": "e3b0c442-98fc-4c14-9afb-f4c8996fb924",
"personaId": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"rendicionId": null,
"estado": "leyendo",
"canal": "web",
"archivoTipo": "image/jpeg",
"tieneArchivo": true,
"partes": 1,
"tipoDocumento": null,
"folio": null,
"fecha": null,
"emisorRut": null,
"emisorNombre": null,
"neto": null,
"exento": null,
"iva": null,
"impuestosAdicionales": [],
"total": null,
"medioPago": null,
"detalle": "Taladro, brocas y tarugos",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305
}
],
"pagadoPorEmpresa": false,
"categoriaId": null,
"centroCostoId": null,
"comentario": null,
"campos": {},
"observaciones": [],
"modelo": null,
"conTimbre": false,
"siiEstado": null,
"corregido": false,
"duplicadoDe": null,
"motivoRechazo": null,
"creadoEn": "2026-10-12T15:10:04.221Z"
}
}Sin documento, manda Content-Type: application/json con fecha, total, emisorNombre y comentario (por qué no hay documento).
Ver un gasto
/api/v1/gastos/{id}El gasto con lo leído, su clasificación y observaciones. partes dice cuántas fotos tiene el documento: 0 sin archivo, 1 lo normal y hasta 6 en una boleta larga sacada por partes (se bajan con GET /gastos/{id}/archivo?parte=N). items trae las líneas del documento (descripción, cantidad, precio unitario y total, montos enteros en pesos; vacía si el documento no las detalla o es de antes de que se leyeran). editable dice si quien pregunta puede corregirlo, y opciones trae las categorías, centros de costo y campos propios que puede elegir.
Pedido
curl "https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE"const respuesta = await fetch("https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209", {
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
},
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
const datos = await respuesta.json();import os
import requests
respuesta = requests.get(
"https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"gasto": {
"id": "b0c153af-2b73-4a74-98bd-28b2220c8209",
"personaId": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"rendicionId": "c7031420-7f7d-4b53-b3f7-8484a7b9c7e5",
"estado": "listo",
"canal": "movil",
"archivoTipo": "image/jpeg",
"tieneArchivo": true,
"partes": 1,
"tipoDocumento": "factura",
"folio": "411473",
"fecha": "2026-10-05",
"emisorRut": "78441427-2",
"emisorNombre": "Sodimac",
"neto": 74101,
"exento": null,
"iva": 14079,
"impuestosAdicionales": [],
"total": 88180,
"medioPago": null,
"detalle": "Taladro, brocas y tarugos",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305
}
],
"pagadoPorEmpresa": false,
"categoriaId": "16855a8d-78e0-4c59-9365-1739dcd23ac4",
"centroCostoId": "ec909ecb-6aa3-4795-80bd-02446735b974",
"comentario": null,
"campos": {},
"observaciones": [],
"modelo": "timbre",
"conTimbre": true,
"siiEstado": "valido",
"corregido": false,
"duplicadoDe": null,
"motivoRechazo": null,
"creadoEn": "2026-10-05T17:42:00.000Z"
},
"editable": false,
"opciones": {
"categorias": [
{
"id": "b4beec61-4ea4-41ae-839b-56365013bd74",
"nombre": "Alimentación"
}
],
"centrosCosto": [
{
"id": "51e6abca-a8e0-4fbd-adf1-ebfe070f272d",
"nombre": "Faena Antofagasta"
}
],
"campos": []
}
}Corregir un gasto
/api/v1/gastos/{id}Corrige lo leído, la categoría, el centro de costo, los campos propios o los ítems, mientras el gasto no esté en una rendición o su rendición esté en borrador o rechazada. items reemplaza la lista entera ([] la borra); si no viene, quedan los que había. Responde el gasto corregido.
- En nombre de alguien: manda
Simpligastos-Personacon el id de la persona.
Cuerpo (JSON)
tipoDocumentotextoobligatorio- Uno de: boleta, boleta_exenta, factura, factura_exenta, boleta_honorarios, nota_credito, comprobante, otro, sin_documento, kilometraje.
foliotexto o nullobligatorio- Hasta 30 caracteres.
fechafechaobligatorio- AAAA-MM-DD, en hora de Chile.
emisorRuttexto o nullobligatorio- Hasta 15 caracteres.
emisorNombretexto o nullobligatorio- Hasta 200 caracteres.
totalenteroobligatorio- De 1 a 2.147.483.647.
netoentero o nullobligatorio- De 0 a 2.147.483.647.
ivaentero o nullobligatorio- De 0 a 2.147.483.647.
comentariotexto o nullobligatorio- Hasta 500 caracteres.
categoriaIdid o null- Opcional.
centroCostoIdid o null- Opcional.
camposobjeto- Opcional.
itemslista de objeto- Hasta 60 elementos.
items[].descripciontextoobligatorio- De 1 a 200 caracteres.
items[].cantidadnúmero o nullobligatorio- De 1 a 9.999.999.
items[].precioUnitarioentero o nullobligatorio- De -2.147.483.647 a 2.147.483.647.
items[].totalentero o nullobligatorio- De -2.147.483.647 a 2.147.483.647.
Pedido
curl -X PATCH "https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Simpligastos-Persona: 72efadfd-f668-4bec-a7c4-f728bbe2e3ca" \
-H "Content-Type: application/json" \
-d '{"tipoDocumento":"factura","folio":"411473","fecha":"2026-10-05","emisorRut":"78441427-2","emisorNombre":"Sodimac","total":88180,"neto":74101,"iva":14079,"comentario":null,"categoriaId":"b4beec61-4ea4-41ae-839b-56365013bd74","items":[{"descripcion":"Taladro percutor 750 W","cantidad":1,"precioUnitario":49990,"total":49990},{"descripcion":"Juego de brocas","cantidad":2,"precioUnitario":8403,"total":16806},{"descripcion":"Tarugos 8 mm","cantidad":3,"precioUnitario":2435,"total":7305}]}'const respuesta = await fetch("https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209", {
method: "PATCH",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"Content-Type": "application/json",
},
body: JSON.stringify({
"tipoDocumento": "factura",
"folio": "411473",
"fecha": "2026-10-05",
"emisorRut": "78441427-2",
"emisorNombre": "Sodimac",
"total": 88180,
"neto": 74101,
"iva": 14079,
"comentario": null,
"categoriaId": "b4beec61-4ea4-41ae-839b-56365013bd74",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305
}
]
}),
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
const datos = await respuesta.json();import os
import requests
respuesta = requests.patch(
"https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209",
headers={
"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}",
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
json={
"tipoDocumento": "factura",
"folio": "411473",
"fecha": "2026-10-05",
"emisorRut": "78441427-2",
"emisorNombre": "Sodimac",
"total": 88180,
"neto": 74101,
"iva": 14079,
"comentario": None,
"categoriaId": "b4beec61-4ea4-41ae-839b-56365013bd74",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990,
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806,
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305,
},
],
},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"gasto": {
"id": "b0c153af-2b73-4a74-98bd-28b2220c8209",
"personaId": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"rendicionId": "c7031420-7f7d-4b53-b3f7-8484a7b9c7e5",
"estado": "listo",
"canal": "movil",
"archivoTipo": "image/jpeg",
"tieneArchivo": true,
"partes": 1,
"tipoDocumento": "factura",
"folio": "411473",
"fecha": "2026-10-05",
"emisorRut": "78441427-2",
"emisorNombre": "Sodimac",
"neto": 74101,
"exento": null,
"iva": 14079,
"impuestosAdicionales": [],
"total": 88180,
"medioPago": null,
"detalle": "Taladro, brocas y tarugos",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305
}
],
"pagadoPorEmpresa": false,
"categoriaId": "16855a8d-78e0-4c59-9365-1739dcd23ac4",
"centroCostoId": "ec909ecb-6aa3-4795-80bd-02446735b974",
"comentario": null,
"campos": {},
"observaciones": [],
"modelo": "timbre",
"conTimbre": true,
"siiEstado": "valido",
"corregido": false,
"duplicadoDe": null,
"motivoRechazo": null,
"creadoEn": "2026-10-05T17:42:00.000Z"
}
}Descargar el documento
/api/v1/gastos/{id}/archivoLa foto o el PDF original del gasto. En una boleta en varias fotos, la primera; las demás, con parte.
Parámetros de consulta
anchoentero- Devuelve una miniatura JPEG de ese ancho en píxeles.
parteentero- Cuál foto de una boleta en varias partes, desde 1 (por omisión, 1). Una parte que no existe responde 404.
Pedido
curl "https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209/archivo" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-o boleta.jpgimport { writeFile } from "node:fs/promises";
const respuesta = await fetch("https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209/archivo", {
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
},
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
await writeFile("boleta.jpg", Buffer.from(await respuesta.arrayBuffer()));import os
import requests
respuesta = requests.get(
"https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209/archivo",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
)
respuesta.raise_for_status()
with open("boleta.jpg", "wb") as f:
f.write(respuesta.content)Respuesta
200 Content-Type: image/jpeg
(el archivo: boleta.jpg)Agregar una parte
/api/v1/gastos/{id}/partesSuma una foto al final de un gasto: la parte de una boleta larga que no salió en la primera foto. Se puede mientras el gasto se pueda corregir (sin rendición, o en una en borrador o rechazada) y hasta 6 partes; solo a un gasto con foto, no a un PDF. El gasto vuelve a leyendo y se lee de nuevo con todas sus partes (lo leído antes se reemplaza; la categoría se mantiene). No cuenta como otro documento en el plan XS. Responde el gasto con partes al día.
- En nombre de alguien: manda
Simpligastos-Personacon el id de la persona.
Formulario (multipart/form-data)
archivoarchivoobligatorio- JPG, PNG o WEBP de hasta 15 MB. Un PDF responde 400; otro formato, 415; más de 15 MB, 413.
Pedido
curl -X POST "https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209/partes" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Simpligastos-Persona: 72efadfd-f668-4bec-a7c4-f728bbe2e3ca" \
-F "archivo=@boleta-parte-2.jpg"import { readFile } from "node:fs/promises";
const formulario = new FormData();
formulario.append("archivo", new Blob([await readFile("boleta-parte-2.jpg")], { type: "image/jpeg" }), "boleta-parte-2.jpg");
const respuesta = await fetch("https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209/partes", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
body: formulario,
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
const datos = await respuesta.json();import os
import requests
respuesta = requests.post(
"https://simpligastos.cl/api/v1/gastos/b0c153af-2b73-4a74-98bd-28b2220c8209/partes",
headers={
"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}",
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
files={"archivo": ("boleta-parte-2.jpg", open("boleta-parte-2.jpg", "rb"), "image/jpeg")},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"gasto": {
"id": "b0c153af-2b73-4a74-98bd-28b2220c8209",
"personaId": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"rendicionId": null,
"estado": "leyendo",
"canal": "movil",
"archivoTipo": "image/jpeg",
"tieneArchivo": true,
"partes": 2,
"tipoDocumento": "factura",
"folio": "411473",
"fecha": "2026-10-05",
"emisorRut": "78441427-2",
"emisorNombre": "Sodimac",
"neto": 74101,
"exento": null,
"iva": 14079,
"impuestosAdicionales": [],
"total": 88180,
"medioPago": null,
"detalle": "Taladro, brocas y tarugos",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305
}
],
"pagadoPorEmpresa": false,
"categoriaId": "16855a8d-78e0-4c59-9365-1739dcd23ac4",
"centroCostoId": "ec909ecb-6aa3-4795-80bd-02446735b974",
"comentario": null,
"campos": {},
"observaciones": [],
"modelo": "timbre",
"conTimbre": true,
"siiEstado": "valido",
"corregido": false,
"duplicadoDe": null,
"motivoRechazo": null,
"creadoEn": "2026-10-05T17:42:00.000Z"
}
}Si la rendición del gasto ya se envió, responde 409: hay que retirarla o esperar que la rechacen.
Rendir un recorrido
/api/v1/kilometrajeCrea un gasto de kilometraje en vehículo propio: los km por la tarifa de la empresa (política, kmTarifa).
- En nombre de alguien: manda
Simpligastos-Personacon el id de la persona.
Cuerpo (JSON)
fechafechaobligatorio- AAAA-MM-DD, en hora de Chile.
origentextoobligatorio- De 1 a 120 caracteres.
destinotextoobligatorio- De 1 a 120 caracteres.
motivotextoobligatorio- De 3 a 300 caracteres.
kmnúmeroobligatorio- De 1 a 5.000.
metodotextoobligatorio- Uno de: gps, manual, mapa.
puntoslista de lista o null- Hasta 20.000 elementos.
patentetexto o null- Hasta 10 caracteres.
Pedido
curl -X POST "https://simpligastos.cl/api/v1/kilometraje" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Simpligastos-Persona: 72efadfd-f668-4bec-a7c4-f728bbe2e3ca" \
-H "Content-Type: application/json" \
-d '{"fecha":"2026-10-09","origen":"Oficina Santiago","destino":"Obra Rancagua","motivo":"Visita a la obra","km":84,"metodo":"manual","patente":"KXLP21"}'const respuesta = await fetch("https://simpligastos.cl/api/v1/kilometraje", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"Content-Type": "application/json",
},
body: JSON.stringify({
"fecha": "2026-10-09",
"origen": "Oficina Santiago",
"destino": "Obra Rancagua",
"motivo": "Visita a la obra",
"km": 84,
"metodo": "manual",
"patente": "KXLP21"
}),
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
const datos = await respuesta.json();import os
import requests
respuesta = requests.post(
"https://simpligastos.cl/api/v1/kilometraje",
headers={
"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}",
"Simpligastos-Persona": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
},
json={
"fecha": "2026-10-09",
"origen": "Oficina Santiago",
"destino": "Obra Rancagua",
"motivo": "Visita a la obra",
"km": 84,
"metodo": "manual",
"patente": "KXLP21",
},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"gasto": {
"id": "dd63a8b7-78bd-49a5-80f5-38f019322a6a",
"personaId": "72efadfd-f668-4bec-a7c4-f728bbe2e3ca",
"rendicionId": null,
"estado": "listo",
"canal": "api",
"archivoTipo": null,
"tieneArchivo": false,
"partes": 0,
"tipoDocumento": "kilometraje",
"folio": null,
"fecha": "2026-10-09",
"emisorRut": null,
"emisorNombre": "Oficina Santiago → Obra Rancagua",
"neto": null,
"exento": null,
"iva": null,
"impuestosAdicionales": [],
"total": 15120,
"medioPago": null,
"detalle": "84 km a $180 por km",
"items": [
{
"descripcion": "Taladro percutor 750 W",
"cantidad": 1,
"precioUnitario": 49990,
"total": 49990
},
{
"descripcion": "Juego de brocas",
"cantidad": 2,
"precioUnitario": 8403,
"total": 16806
},
{
"descripcion": "Tarugos 8 mm",
"cantidad": 3,
"precioUnitario": 2435,
"total": 7305
}
],
"pagadoPorEmpresa": false,
"categoriaId": "637bfb29-5030-40ae-96f7-228c86acdae4",
"centroCostoId": null,
"comentario": "Visita a la obra",
"campos": {},
"observaciones": [],
"modelo": null,
"conTimbre": false,
"siiEstado": null,
"corregido": false,
"duplicadoDe": null,
"motivoRechazo": null,
"creadoEn": "2026-10-12T16:36:36.874Z"
}
}Bitácora de kilometraje
/api/v1/kilometraje/bitacoraLos recorridos del período, para respaldar el gasto en vehículo propio.
Parámetros de consulta
desdefechaobligatorio- AAAA-MM-DD.
hastafechaobligatorio- AAAA-MM-DD.
formatotexto- csv para descargarla como planilla (separada por punto y coma).
Pedido
curl "https://simpligastos.cl/api/v1/kilometraje/bitacora?desde=2026-10-01&hasta=2026-10-31" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE"const respuesta = await fetch("https://simpligastos.cl/api/v1/kilometraje/bitacora?desde=2026-10-01&hasta=2026-10-31", {
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
},
});
if (!respuesta.ok) throw new Error((await respuesta.json()).error);
const datos = await respuesta.json();import os
import requests
respuesta = requests.get(
"https://simpligastos.cl/api/v1/kilometraje/bitacora?desde=2026-10-01&hasta=2026-10-31",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"recorridos": [
{
"fecha": "2026-10-09",
"persona": "Fernanda Díaz",
"origen": "Oficina Santiago",
"destino": "Obra Rancagua",
"motivo": "Visita a la obra",
"km": 84,
"tarifa": 180,
"monto": 15120,
"patente": "KXLP21",
"metodo": "gps",
"estado": "listo"
}
]
}