Factura de compra y retenciones
Usa una factura de compra (46) para declarar una retención de cambio de sujeto por rubro. El código se informa en cada línea afecta; ndf es un indicador superior del documento que transforma una retención parcial en su variante total. (v1.23.0)
Retención parcial y NDF
| Código parcial | Código con NDF | Rubro | Tasa parcial |
|---|---|---|---|
30 | 301 | Legumbres | 10% |
32 | 321 | Ganado | 8% |
33 | 331 | Madera | 8% |
34 | 341 | Trigo | 4% |
36 | 361 | Arroz | 10% |
37 | 371 | Productos hidrobiológicos | 10% |
48 | 481 | Frambuesas | 14% |
Con ndf: false u omitido, envía el código parcial. Con ndf: true, usa preferentemente el mismo código parcial: Folyo lo normaliza a su variante total y retiene el 100% del IVA. También puedes enviar directamente 301, 321, 331, 341, 361, 371 o 481, solo junto con ndf: true, cuando necesites un override exacto. Si informas tasa y monto en esa variante total, la tasa debe ser 19 y el monto debe ser positivo y coincidir exactamente con el 19% de la base del código.
{
"tipo_dte": 46,
"detalle": [{ "nombre": "Legumbres", "monto": 100000, "impuestos": [{ "codigo": "30" }] }]
}En una retención parcial, iva_no_retenido es la porción de IVA que no se retiene y aparece en el resultado del job. Con NDF o una retención total se omite. Los montos de una nota de crédito o débito se informan positivos según el tipo de documento.
Retención total por rubro
Los códigos 31, 38, 39, 41 y 47 son retenciones totales por rubro. No requieren ndf y se usan en todas las líneas afectas de la operación que corresponda. El código 15 se conserva para cambio de sujeto genérico cuando tenga respaldo aplicable; retencion_iva_total está deprecado y se mantiene solo por compatibilidad.
El código tributario 46 es IVA retenido oro y sólo se admite en DTE 33, 56 y 61 con referencia a una 33; no es válido en la Factura de Compra tipo 46. Para compra de oro bajo la Res. Ex. 3338/1992 conserva codigo: "15" en la Factura de Compra.
Notas de crédito y débito
Las notas 56 y 61 pueden corregir una factura de compra con retención. Deben incluir una referencia directa a la factura 46 y mantener el marcado por línea que corresponde a la corrección. ndf solo se acepta en 46, 56 y 61 junto con una retención parcial que tenga variante total.
{
"tipo_dte": 61,
"referencia": [{ "tipo_doc_ref": 46, "folio_ref": "123", "fecha_ref": "2026-09-16", "codigo_ref": 3, "razon_ref": "Corrección de monto" }],
"detalle": [{ "nombre": "Legumbres", "monto": 10000, "impuestos": [{ "codigo": "30" }] }]
}
Reglas de cálculo
La base del código es la suma de las líneas que lo llevan. Para una retención parcial, el total se calcula como neto + exento + IVA − retención; iva_no_retenido informa la diferencia entre el IVA y la retención. Las retenciones no se combinan con impuestos adicionales en el mismo documento.
Los descuentos o recargos globales porcentuales se prorratean antes de calcular cada base. Los globales en pesos se rechazan cuando hay códigos de impuesto. La combinación requiere validación en certificación antes de habilitarse en producción. En particular, el código 15 sin descuento conserva su compatibilidad histórica; con un descuento o recargo porcentual debe figurar explícitamente en IMPUESTOS_ADICIONALES_PROD.
Por ejemplo, dos líneas con código 30 por $100.000 y $200.000, más un descuento global de 10%, quedan con bases de $90.000 y $180.000. El neto es $270.000, el IVA $51.300, la retención $27.000, iva_no_retenido $24.300 y el total $294.300. El prorrateo conserva la suma del ajuste y el redondeo por código/documento.
{
"descuentos_globales": [{ "tipo_movimiento": "D", "tipo_valor": "%", "valor": 10 }],
"detalle": [
{ "nombre": "Legumbres A", "monto": 100000, "impuestos": [{ "codigo": "30" }] },
{ "nombre": "Legumbres B", "monto": 200000, "impuestos": [{ "codigo": "30" }] }
]
}
Validación y disponibilidad
Cada línea admite una sola retención. Una línea exenta no puede llevarla. Folyo rechaza antes de asignar folio los códigos fuera del catálogo, un tipo de DTE no admitido, una variante total sin NDF, NDF sin una retención parcial compatible y una nota con retención que no referencia una 46.
Uso limitado a certificación
Estas familias requieren validación externa antes de habilitarse en producción. Cada código nuevo debe estar habilitado explícitamente en IMPUESTOS_ADICIONALES_PROD; la respuesta 422 IMPUESTO_PENDIENTE_CERT no consume folio y no constituye una aceptación del SII.