Referencia
Tarjetas corporativas
Tarjetas de la empresa, sus cartolas y la conciliación de cada movimiento con su gasto.
- GET
/tarjetasListar tarjetas - POST
/tarjetasAgregar una tarjeta - PATCH
/tarjetas/{id}Cambiar una tarjeta - POST
/tarjetas/{id}/cartolaSubir una cartola - GET
/tarjetas/movimientosMovimientos y conciliación - POST
/tarjetas/movimientos/{id}Resolver un movimiento
Listar tarjetas
GET
/api/v1/tarjetasContabilidad ve todas; el resto, las propias.
Pedido
curl "https://simpligastos.cl/api/v1/tarjetas" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE"const respuesta = await fetch("https://simpligastos.cl/api/v1/tarjetas", {
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/tarjetas",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"tarjetas": [
{
"id": "ed094088-947b-4412-acee-b076714e75fb",
"personaId": "a08909a1-05c4-4970-b563-9479d23d59fe",
"personaNombre": "Camila Rojas",
"nombre": "Visa empresa",
"banco": "Banco de Chile",
"ultimos4": "4821",
"activa": true
}
]
}Agregar una tarjeta
POST
/api/v1/tarjetasUna tarjeta a nombre de una persona. Solo se guardan los últimos 4 dígitos.
- Quién: Contabilidad y administración.
Cuerpo (JSON)
personaIdidobligatorio- Opcional.
nombretextoobligatorio- De 1 a 60 caracteres.
bancotexto o null- Hasta 40 caracteres.
ultimos4textoobligatorio- Opcional.
activabooleano- Por omisión: true.
Pedido
curl -X POST "https://simpligastos.cl/api/v1/tarjetas" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Content-Type: application/json" \
-d '{"personaId":"a08909a1-05c4-4970-b563-9479d23d59fe","nombre":"Visa empresa","banco":"Banco de Chile","ultimos4":"4821"}'const respuesta = await fetch("https://simpligastos.cl/api/v1/tarjetas", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"personaId": "a08909a1-05c4-4970-b563-9479d23d59fe",
"nombre": "Visa empresa",
"banco": "Banco de Chile",
"ultimos4": "4821"
}),
});
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/tarjetas",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
json={
"personaId": "a08909a1-05c4-4970-b563-9479d23d59fe",
"nombre": "Visa empresa",
"banco": "Banco de Chile",
"ultimos4": "4821",
},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"id": "ed094088-947b-4412-acee-b076714e75fb"
}Cambiar una tarjeta
PATCH
/api/v1/tarjetas/{id}Manda la tarjeta completa; activa: false la da de baja.
- Quién: Contabilidad y administración.
Cuerpo (JSON)
personaIdidobligatorio- Opcional.
nombretextoobligatorio- De 1 a 60 caracteres.
bancotexto o null- Hasta 40 caracteres.
ultimos4textoobligatorio- Opcional.
activabooleano- Por omisión: true.
Pedido
curl -X PATCH "https://simpligastos.cl/api/v1/tarjetas/ed094088-947b-4412-acee-b076714e75fb" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Content-Type: application/json" \
-d '{"personaId":"a08909a1-05c4-4970-b563-9479d23d59fe","nombre":"Visa empresa","banco":"Banco de Chile","ultimos4":"4821","activa":false}'const respuesta = await fetch("https://simpligastos.cl/api/v1/tarjetas/ed094088-947b-4412-acee-b076714e75fb", {
method: "PATCH",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"personaId": "a08909a1-05c4-4970-b563-9479d23d59fe",
"nombre": "Visa empresa",
"banco": "Banco de Chile",
"ultimos4": "4821",
"activa": false
}),
});
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/tarjetas/ed094088-947b-4412-acee-b076714e75fb",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
json={
"personaId": "a08909a1-05c4-4970-b563-9479d23d59fe",
"nombre": "Visa empresa",
"banco": "Banco de Chile",
"ultimos4": "4821",
"activa": False,
},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"id": "ed094088-947b-4412-acee-b076714e75fb"
}Subir una cartola
POST
/api/v1/tarjetas/{id}/cartolaCarga los movimientos de la tarjeta desde el archivo del banco y calza los que pueda con gastos. Los repetidos no se duplican.
- Quién: Contabilidad y administración.
Formulario (multipart/form-data)
archivoarchivoobligatorio- Excel, CSV o PDF del banco, de hasta 20 MB.
Pedido
curl -X POST "https://simpligastos.cl/api/v1/tarjetas/ed094088-947b-4412-acee-b076714e75fb/cartola" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-F "archivo=@cartola-octubre.xlsx"import { readFile } from "node:fs/promises";
const formulario = new FormData();
formulario.append("archivo", new Blob([await readFile("cartola-octubre.xlsx")], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" }), "cartola-octubre.xlsx");
const respuesta = await fetch("https://simpligastos.cl/api/v1/tarjetas/ed094088-947b-4412-acee-b076714e75fb/cartola", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
},
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/tarjetas/ed094088-947b-4412-acee-b076714e75fb/cartola",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
files={"archivo": ("cartola-octubre.xlsx", open("cartola-octubre.xlsx", "rb"), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"nuevos": 10,
"repetidos": 0,
"conciliados": 7
}Movimientos y conciliación
GET
/api/v1/tarjetas/movimientosLos movimientos del período con su estado de conciliación y un resumen por estado. Con mios=1, en cambio, los propios que esperan su boleta.
Parámetros de consulta
desdefecha- AAAA-MM-DD. Obligatorio sin mios.
hastafecha- AAAA-MM-DD. Obligatorio sin mios.
tarjetaid- Solo los de esa tarjeta.
mios1- Los movimientos propios sin boleta.
Pedido
curl "https://simpligastos.cl/api/v1/tarjetas/movimientos?desde=2026-10-01&hasta=2026-10-31" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE"const respuesta = await fetch("https://simpligastos.cl/api/v1/tarjetas/movimientos?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/tarjetas/movimientos?desde=2026-10-01&hasta=2026-10-31",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"movimientos": [
{
"id": "c0a59514-3ac8-41b9-b28d-4de749027427",
"tarjetaId": "ed094088-947b-4412-acee-b076714e75fb",
"tarjeta": "Visa empresa ****4821",
"personaId": "a08909a1-05c4-4970-b563-9479d23d59fe",
"personaNombre": "Camila Rojas",
"fecha": "2026-10-09",
"comercio": "COPEC ANTOFAGASTA",
"monto": 38500,
"estado": "conciliado",
"gastoId": "692bc3e9-3f67-4822-8997-01522264f226",
"gastoEmisor": "Copec",
"deuda": null,
"pedidoEn": null
}
],
"resumen": {
"conciliado": {
"cantidad": 7,
"monto": 278305
},
"pendiente": {
"cantidad": 2,
"monto": 19830
},
"sin_respaldo": {
"cantidad": 0,
"monto": 0
},
"personal": {
"cantidad": 0,
"monto": 0
},
"ignorado": {
"cantidad": 1,
"monto": -150000
}
}
}Resolver un movimiento
POST
/api/v1/tarjetas/movimientos/{id}sin_respaldo o personal los puede marcar el titular o contabilidad; ignorar, desvincular, pendiente, descontada y cobrada, solo contabilidad.
Cuerpo (JSON)
acciontextoobligatorio- Uno de: sin_respaldo, personal, ignorar, desvincular, pendiente, descontada, cobrada.
notatexto o null- Hasta 300 caracteres.
Pedido
curl -X POST "https://simpligastos.cl/api/v1/tarjetas/movimientos/c0a59514-3ac8-41b9-b28d-4de749027427" \
-H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
-H "Content-Type: application/json" \
-d '{"accion":"personal","nota":"Compra personal, se descuenta"}'const respuesta = await fetch("https://simpligastos.cl/api/v1/tarjetas/movimientos/c0a59514-3ac8-41b9-b28d-4de749027427", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIMPLIGASTOS_LLAVE}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"accion": "personal",
"nota": "Compra personal, se descuenta"
}),
});
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/tarjetas/movimientos/c0a59514-3ac8-41b9-b28d-4de749027427",
headers={"Authorization": f"Bearer {os.environ['SIMPLIGASTOS_LLAVE']}"},
json={
"accion": "personal",
"nota": "Compra personal, se descuenta",
},
)
respuesta.raise_for_status()
datos = respuesta.json()Respuesta
{
"ok": true
}