IMPUESTOS#
Gravados#
Grupo de campos para registrar información relacionada con tributos aplicables tanto a nivel de línea como a nivel global en un Documento Soporte. Se debe aplicar el Impuesto sobre el Valor Añadido (IVA), que grava el consumo final de productos y/o servicios, siendo un impuesto que paga el consumidor final.
Cuando hablamos de un impuesto porcentual, nos referimos a que se calcula multiplicando el valor por un porcentaje determinado. En un Documento Soporte, se debe aplicar el impuesto correspondiente según los productos o servicios ofrecidos. Los impuestos porcentuales definidos por la DIAN son:
Impuesto de Valor Agregado – IVA.
Note
Nota: Recuerde informar, tanto a nivel de línea como en el Documento Soporte, en las secciones TaxSubTotals y TaxTotals, los productos gravados con impuestos porcentuales.
Exentos#
Grupo de campos para información relacionada con productos o servicios exentos de IVA. Los servicios exentos son aquellos que, aunque están contemplados en la ley como generadores de IVA, cuentan con una tarifa del 0%.
Note
Nota: Recuerde informar, tanto a nivel de línea como en la factura, en las secciones TaxSubTotals y TaxTotals, los productos que estén exentos de IVA.
Productos o servicios Grabados o Exentos que se reportan en la factura a nivel de línea#
1. TaxCategory (IMPUESTOS)
Invoice.Lines.TaxSubTotals.TaxCategory
/Invoice/cac:InvoiceLine/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory
TaxCategory: Identificador del tributo.
El listado de los tipos de TaxCategory: El código de impuesto permitido por la DIAN para Documento Soporte 01 – IVA.
Para gravables la tarifa a informar es la regulada por el gobierno a la fecha.
Para exentos la Tarifa a informar 0.00.
2. TaxPercentage (IMPUESTOS)
Invoice.Lines.TaxSubTotals.TaxPercentage
/Invoice/cac:InvoiceLine/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:Percent
TaxPercentage: Porcentaje del tributo.
3. TaxableAmount (IMPUESTOS)
Invoice.Lines.TaxSubTotals.TaxableAmount
/Invoice/cac:InvoiceLine/cac:TaxTotal/cac:TaxSubtotal/cbc:TaxableAmount
TaxableAmount: Base Imponible sobre la que se calcula el valor del tributo.
Formula: Impuesto en la línea (Taxableamount) = Valor neto de la línea (NetAmount).
4. TaxAmount (IMPUESTOS)
Invoice.Lines.TaxSubTotals.TaxAmount
/Invoice/cac:InvoiceLine/cac:TaxTotal/cac:TaxSubtotal/cbc:TaxAmount
TaxAmount: es el Valor del tributo que a su vez es el producto del porcentaje aplicado sobre la base imponible.
Formula: Valor del impuesto de la línea (TaxAmount) = Porcentaje del impuesto (TaxPercentage) * Base para calcular el impuesto en la línea (Taxableamount).
5. TaxCategory (IMPUESTOS)
Invoice.Lines.TaxTotals.TaxCategory
/Invoice/cac:InvoiceLine/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID
TaxCategory: Identificador del tributo.
El listado de los tipos de TaxCategory: El código de impuesto permitido por la DIAN para Documento Soporte 01 – IVA.
6. TaxAmount (IMPUESTOS)
Invoice.Lines.TaxTotals.TaxAmount
/Invoice/cac:InvoiceLine/cac:TaxTotal/cbc:TaxAmount
TaxAmount: es la sumatoria del Valor de los tributos de la línea.
Formula:
Valor total del impuesto de la línea (TaxTotals.TaxAmount) = Sumatoria de todos los valores de los impuestos por línea ∑ (TaxSubTotals.TaxAmount)
7. RoundingAmount (IMPUESTOS)
Invoice.Lines.TaxTotals.RoundingAmount
/Invoice/cac:InvoiceLine/cac:TaxTotal/cbc:RoundingAmount
RoundingAmount corresponde al Redondeo agregado al impuesto y debe ser enviado de forma obligatoria, en caso de no tener redondeo se envía con valor 0.
Rechazo Si: TaxTotal/RoundingAmount <> Sumatoria de ((TaxTotal.TaxSubtotal.TaxableAmount * TaxTotal/TaxSubtotal/TaxCategory/Percent) - TaxTotal/TaxSubtotal/TaxAmount)
Productos o servicios Exentos que se reportan en la factura a nivel de global#
1. TaxCategory (IMPUESTOS)
Invoice.TaxSubTotals.TaxCategory
/Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cac:TaxScheme/cbc:Name
TaxCategory: Identificador del tributo.
El listado de los tipos de TaxCategory: El código de impuesto permitido por la DIAN para Documento Soporte 01 – IVA.
Para gravables la tarifa a informar es la regulada por el gobierno a la fecha.
Para exentos la Tarifa a informar 0.00.
2. TaxPercentage (IMPUESTOS)
Invoice.TaxSubTotals.TaxPercentage
/Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:Percent
TaxPercentage: Porcentaje del tributo.
3. TaxableAmount (IMPUESTOS)
Invoice.TaxSubTotals.TaxableAmount
/Invoice/cac:TaxTotal/cac:TaxSubtotal/cbc:TaxableAmount
TaxableAmount: es la sumatoria de las Bases Imponibles sobre la que se calcula el valor del tributo.
Formula: Impuesto a nivel global (TaxableAmount) = Sumatoria Valor neto de las líneas ∑ (Lines.NetAmount).
Notas:
Esta sumatoria debe reportarse agrupado por tipo de impuesto y porcentaje.
No se deben sumar las líneas que sean excluidos de IVA (Lines.ExcludeVat= true).
4. TaxAmount (IMPUESTOS)
Invoice.TaxSubTotals.TaxAmount
/Invoice/cac:TaxTotal/cac:TaxSubtotal/cbc:TaxAmount
TaxAmount: es la sumatoria del Valor de los tributos de la línea.
Formula: _Impuesto global (TaxAmount) = Base del impuesto global (TaxSubTotals.TaxableAmount) * Porcentaje del impuesto (TaxSubTotals.TaxPercentage).
Nota:
Esta sumatoria debe reportarse agrupado por tipo de impuesto y porcentaje.
5. TaxCategory (IMPUESTOS)
Invoice.TaxTotals.TaxCategory
/Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cac:TaxScheme/cbc:ID
TaxCategory: Identificador del tributo.
El listado de los tipos de TaxCategory: El código de impuesto permitido por la DIAN para Documento Soporte 01 – IVA.
6. TaxAmount (IMPUESTOS)
Invoice.TaxTotals.TaxAmount
/Invoice/cac:TaxTotal/cbc:TaxAmount
TaxAmount: es la sumatoria del Valor de los tributos de la línea.
Formula:
Impuesto global (TaxTotals.TaxAmount) = Sumatoria de todos los valores de todos los tipos de impuesto ∑(TaxSubTotals.TaxAmount)
7. RoundingAmount (IMPUESTOS)
Invoice.TaxTotals.RoundingAmount
/Invoice/cac:TaxTotal/cbc:RoundingAmount
RoundingAmount corresponde al Redondeo agregado al impuesto y debe ser enviado de forma obligatoria, en caso de no tener redondeo se envía con valor 0.
Rechazo Si: TaxTotal/RoundingAmount <> Sumatoria de ((TaxTotal.TaxSubtotal.TaxableAmount * TaxTotal/TaxSubtotal/TaxCategory/Percent) - TaxTotal/TaxSubtotal/TaxAmount)
8. TaxInclusiveAmount (IMPUESTOS)
Invoice.Total.TotalBillableAmount
/Invoice/cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount
TotalBillableAmount : es el Total del Valor Bruto más tributos es igual a Valor Bruto de la factura que contienen el valor comercial más la Suma de los Tributos de todas las líneas de detalle.
Formula:
TotalBillableAmount = Valor Bruto de la factura (GrossAmount) + Sumatoria valor total de los impuestos de las líneas ∑ (Line.TaxTotals.TaxAmount).
8. TaxInclusiveAmount (IMPUESTOS)
Invoice.Total.TaxableAmount
/Invoice/cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount
TaxableAmount: es el Valor Bruto más tributos tiene que ser igual a Valor Bruto de la factura que contienen el valor comercial, más la Suma de los Tributos de todas las líneas de detalle.
Formula
Impuesto a nivel global (Total.TaxableAmount) = GrossAmount.
Notas:
No se deben sumar las líneas que sean excluidos de IVA (Lines.ExcludeVat= true).
Excluidos#
Grupo de campos para registrar información sobre productos o servicios excluidos del IVA.
Los servicios excluidos de IVA son aquellos que, por disposición legal, se consideran como “no causantes” del Impuesto sobre las Ventas. Entre ellos se incluyen los servicios médicos, odontológicos, hospitalarios, clínicos y de laboratorio relacionados con la salud humana. Esta información debe reportarse a nivel de línea.
1. TaxCategory (IMPUESTOS)
Invoice.Lines.ExcludeVat
NA
Este campo se debe enviar en “true” cuando el producto o servicio es Excluido de IVA.
Nota: Lines.TaxSubTotals y Lines.TaxTotals no se reportan a nivel de línea.
2. TotalBillableAmount (IMPUESTOS)
Invoice.Total.TotalBillableAmount
/Invoice/cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount
TotalBillableAmount: es el total del Valor Bruto más tributos es igual a Valor Bruto de la factura que contienen el valor comercial, más la Suma de los Tributos de todas las líneas de detalle.
Formula:
TotalBillableAmount = Valor Bruto de la factura (GrossAmount) + Sumatoria valor total de los impuestos de las líneas ∑ (Line.TaxTotals.TaxAmount).
2. TaxableAmount (IMPUESTOS)
Invoice.Total.TaxableAmount
/Invoice/cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount
TaxableAmount: es el Valor Bruto más tributos tiene que ser igual a Valor Bruto de la factura que contienen el valor comercial, más la Suma de los Tributos de todas las líneas de detalle.
Formula:
Impuesto a nivel global (Total.TaxableAmount) = GrossAmount.
Notas:
No se deben sumar las líneas que sean excluidos de IVA (Lines.ExcludeVat= true).
Si todos los productos son excluidos se debe informar este campo con valor 0.00.
Note
Las secciones TAXTOTALS y TAXSUBTOTALS a nivel de Documento Soporte deben incluirse solo si existe al menos un (1) producto que no esté excluido del IVA.
DTO IMPUESTOS#
JSON (DTO) - IMPUESTOS
{
"Currency": "COP",
"SeriePrefix": "SEDS",
"SerieNumber": "984000001",
"IssueDate": "2023-11-27T12:12:12",
"DueDate": "2023-11-27T12:12:12",
"DeliveryDate": "2023-11-27T12:12:12",
"OperationType": "10", /*--> 10 vendedor es residente en co - 11 vendedor no es residente en co*/
"CorrelationDocumentId": "POSTMAN-{{$timestamp}}",
"SerieExternalKey": "{{serieexternalkeyDS}}",
"PaymentMeans": [
{
"Code": "20",
"Mean": "1",
"DueDate": "2023-11-27"
}
],
"CustomerParty": {
"Identification": {
"DocumentNumber": "{{nit}}",
"DocumentType": "NIT",
"CountryCode": "CO",
"CheckDigit": "{{digitoverificacion}}"
}
},
"SupplierParty": {
"LegalType": "Legal",
"Email": "correo@sovos.com",
"TaxScheme": "ZZ",
"ResponsabilityTypes": [
"R-99-PN"
],
"Identification": {
"DocumentNumber": "{{nit}}",
"DocumentType": "NIT",
"CountryCode": "CO",
"CheckDigit": "{{digitoverificacion}}"
},
"Name": "Saphety Transacciones Electrónicas S.A.S",
"Address": {
"DepartmentCode": "11",
"CityCode": "11001",
"AddressLine": "Calle 97a No. 9 - 45",
"Country": "CO",
"PostalCode": "000000"
}
},
"Lines": [
{
"Number": "1",
"Quantity": "1",
"QuantityUnitOfMeasure": "NAR",
"TaxSubTotals": [ // IMPUESTO GRAVABLE
{
"TaxCategory": "01",
"TaxPercentage": "19.00",
"TaxableAmount": "100000.00",
"TaxAmount": "19000.00"
}
],
"TaxTotals": [
{
"TaxCategory": "01",
"TaxAmount": "19000.00",
"RoundingAmount": "0.00"
}
],
"UnitPrice": "100000.00",
"GrossAmount": "100000.00",
"NetAmount": "100000.00",
"Item": {
"Gtin": "xxxxx",
"Description": "Servicio 1"
},
"InvoicePeriod": {
"From": "2023-11-27",
"DescriptionCode": "1"
}
},
{
"Number": "2",
"Quantity": "1",
"QuantityUnitOfMeasure": "NAR",
"TaxSubTotals": [ // IMPUESTO EXENTO
{
"TaxCategory": "01",
"TaxPercentage": "0.00",
"TaxableAmount": "100000.00",
"TaxAmount": "0.00"
}
],
"TaxTotals": [
{
"TaxCategory": "01",
"TaxAmount": "0.00",
"RoundingAmount": "0.00"
}
],
"UnitPrice": "100000.00",
"GrossAmount": "100000.00",
"NetAmount": "100000.00",
"Item": {
"Gtin": "xxxxx",
"Description": "Servicio 1"
},
"InvoicePeriod": {
"From": "2022-07-22",
"DescriptionCode": "1"
}
},
{
"Number": "3",
"Quantity": "1",
"QuantityUnitOfMeasure": "NAR",
"Excludevat": "true", // EXCLUIDO IMPUESTOS
"UnitPrice": "100000.00",
"GrossAmount": "100000.00",
"NetAmount": "100000.00",
"Item": {
"Gtin": "xxxxx",
"Description": "Servicio 1"
},
"InvoicePeriod": {
"From": "2022-07-22",
"DescriptionCode": "1"
}
}
],
"TaxSubTotals": [
{
"TaxCategory": "01",
"TaxPercentage": "19.00", // GRABADO
"TaxableAmount": "100000.00",
"TaxAmount": "19000.00"
},
{
"TaxCategory": "01",
"TaxPercentage": "0.00", // EXENTO
"TaxableAmount": "100000.00",
"TaxAmount": "0.00"
}
],
"TaxTotals": [
{
"TaxCategory": "01",
"TaxAmount": "19000.00",
"RoundingAmount": "0.00"
}
],
"Total": {
"GrossAmount": "300000.00",
"TotalBillableAmount": "319000.00",
"PayableAmount": "319000.00",
"TaxableAmount": "200000.00"
},
"Notes": [
"Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum."
]
}