Certificado tributario
Lo que un agente retenedor le retuvo a un tercero en un año gravable, o el IVA que le facturó, por concepto, por mes y documento a documento.
certificado-retencion, con el diseño estandar: el certificado que un agente retenedor le entrega a cada beneficiario al cerrar el año, para que lo use en su declaración.
Un solo tipo para los cuatro tributos. tipo dice cuál es —retefuente, reteiva, reteica o iva— y con él cambian el título y el nombre de las columnas; la maquetación es la misma, porque es el mismo documento.
"tipo": "retefuente", // retefuente | reteiva | reteica | iva
"titulo": "Certificado de retención en la fuente", // opcional: sin él, el del tipo
"anioGravable": 2025,
"agenteRetenedor": { "nombre": "Inversiones Altamar S.A.S.", "nit": "901223445-7",
"direccion": "Carrera 43A # 1-50, Of. 1204", "ciudad": "Medellín" },
"beneficiario": { "nombre": "Servicios Integrales del Valle S.A.S.", "nit": "900345678-1",
"direccion": "Calle 10 # 40-21", "ciudad": "Itagüí" },
"conceptos": [ // obligatorio, al menos uno
{ "concepto": "Honorarios", "base": 24000000, "retenido": 2640000 }
],
"meses": [ // opcional: el resumen por mes
{ "mes": "junio", "base": 24000000, "retenido": 1410000 }
],
"detalle": [ // opcional: el anexo documento a documento
{ "fecha": "2025-06-09", "factura": "FV-10488", "concepto": "Honorarios",
"base": 12000000, "tarifa": "11 %", "retenido": 1320000 }
],
"totalBase": 90000000,
"totalRetenido": 5190000, // obligatorio: la cifra por la que existe el papel
"pagos": 14, // cuántos pagos, no cuánto se pagó
"expedidoEl": "2026-02-27", "lugarExpedicion": "Medellín",
"textoLegal": "Este certificado se expide de conformidad con el artículo 381 …",
"firma": { "nombre": "Claudia Patricia Henao", "documento": "CC 43.118.772",
"tarjetaProfesional": "T.P. 48.221-T", "cargo": "Revisora fiscal",
"trazo": "https://…/firma.png" } // opcional, entero
- Aquí no se suma nada, y en este documento menos que en ningún otro.
totalBaseytotalRetenidollegan hechos y se imprimen tal como llegan, aunque no cuadren con los conceptos: la cifra que sale aquí la declara el beneficiario ante la DIAN, y quien responde por ella es quien la calculó. Tampoco se deriva la tarifa de la base y lo retenido, ni se traduce el concepto. tipocambia lo que el documento afirma. En los tres de retención la columna se llama «Retenido» y la base es la que estuvo sujeta a retención. Enivano hubo retención ninguna: la columna dice «IVA facturado» y la base, «Valor facturado sin IVA». Untipoque no sea uno de los cuatro responde400diciendo cuáles hay.- La firma es opcional; la leyenda, no. Con
firmase dibuja el bloque con su trazo —PNG o JPEG, por URL odata:—, su documento, su cargo y su tarjeta profesional, y sin sello de tiempo: un certificado no prueba cuándo lo recibieron. Sinfirmano queda ninguna raya en blanco, porque eltextoLegalsuele decir que no requiere firma autógrafa. La leyenda se imprime en los dos casos. - El anexo y el resumen por mes son opcionales. Con
detalle, cada documento con su fecha, su factura, su base, su tarifa y lo retenido, para cruzarlo con la contabilidad del beneficiario; sin él, no hay ni título ni hoja de más. Lo mismo conmeses. - Si el anexo no cabe en una hoja, la tabla continúa en la siguiente repitiendo su cabecera, y la firma con la leyenda no se parten entre hojas.
- Lo obligatorio:
tipo,anioGravable,agenteRetenedor.nombrey.nit,beneficiario.nombrey.nit,conceptos,totalRetenido,expedidoElytextoLegal. Sin alguno, la respuesta es400con la lista de lo que falta y no se compone ningún PDF. UntotalRetenidoen cero es válido: cero es una cifra. - El documento sale además en cuatro paletas —
corporativa(azul),profesional(verde),minimalista(violeta) ybasica(naranja)—, con la misma maquetación. Acepta tambiénnotes,fields,sideNotes,selectedCurrencyyyourCompanypara el logo y los contactos del agente retenedor.
Ejemplos: certificado-retencion.json (retefuente, con anexo y firma), certificado-retencion-reteiva.json, certificado-retencion-reteica.json y certificado-retencion-iva.json.
