Creación de XML de un DTE#
El formato XML es útil al momento de generar una factura electrónica porque permite que la información contenida en la factura sea estructurada y fácilmente procesable por sistemas informáticos. Al utilizar XML, se pueden definir etiquetas y atributos para cada dato, lo que facilita la lectura y el intercambio de información entre distintas aplicaciones y sistemas.
Además, el uso de XML en la facturación electrónica es un estándar internacional que permite la interoperabilidad y la integración entre sistemas, lo que significa que una factura electrónica generada en un sistema puede ser procesada y leída por otros sistemas sin dificultades. También es un formato legible por humanos y puede ser visualizado en un navegador web o en una herramienta de procesamiento de texto.
En resumen, el formato XML es fundamental en la generación de facturas electrónicas porque permite estructurar y procesar la información de manera eficiente, lo que facilita el intercambio y la interoperabilidad entre sistemas, además de ser legible tanto por sistemas como por humanos.
Es importante que siempre estemos al tanto de los cambios que se realizan por medio de la SAT, para que nuestros documentos sean certificados de la manera adecuada, ésto lo podemos realizar en la página de especificaciones técnicas que provee la SAT
POST •••/api/xml
Servicio para crear DTE enviando información en formato JSON.
Request#
Query
Key
Value
Description
tipo
base64
Se retornará el DTE codificado en Base64.
tipo
xml
Se retornará el DTE en formato XML. Esta es la opción por defecto si no se envía parámetro. Opción recomendada para validar la información contenida en el DTE.
firma
true
Se retornará el JSON necesario para el paso de Firma. Opcion recomendada para usar en conjunto con el paso Firmar.
Header
Key
Value
Description
appKey
{{appKey}}
Llave que se brinda para acceder a este servicio.
Body
{ "dte": { "datosGenerales": { "tipo": "FACT", "fechaHoraEmision": "2023-01-15T12:56:49.6090", "codigoMoneda": "GTQ" }, "emisor": { "nitEmisor": "{{NIT Emisor}}", "nombreEmisor": "nombreEmisor", "codigoEstablecimiento": 1, "nombreComercial": "nombreComercial", "correoEmisor": "correo@emisor.com", "afiliacionIVA": "GEN", "direccion": { "direccion": "direccionEmisor", "codigoPostal": 0, "municipio": "municipioEmisor", "departamento": "departamentoEmisor", "pais": "GT" } }, "receptor": { "idReceptor": "CF", "nombreReceptor": "nombreReceptor", "correoReceptor": "correo@receptor.com", "direccion": { "direccion": "direccionReceptor", "codigoPostal": 0, "municipio": "municipioReceptor", "departamento": "departamentoReceptor", "pais": "GT" } }, "frases": [ { "tipoFrase": 1, "codigoEscenario": 1 } ], "items": [ { "bienOServicio": "B", "cantidad": 1, "unidadMedida": "UN", "descripcion": "descripcion del producto", "precioUnitario": 5000, "precio": 5000, "descuento": 0, "total": 5000, "impuestos": [ { "nombreCorto": "IVA", "codigoUnidadGravable": 1, "montoGravable": 4464.2857142857, "montoImpuesto": 535.7142857142 } ] } ], "totalImpuestos": [ { "nombreCorto": "IVA", "totalMontoImpuesto": 535.7142857142 } ], "adendas": { "valores": { "nombreAdenda": "Valor de la adenda" } }, "granTotal": 5000 } }
Examples:#
Example: Crear DTE
POST •••/api/xmlRequest
Header
Key
Value
Description
appKey
{{appKey}}
Llave que se brinda para acceder a este servicio.
Body
{ "dte": { "datosGenerales": { "tipo": "FACT", "fechaHoraEmision": "2023-01-15T12:56:49.6090", "codigoMoneda": "GTQ" }, "emisor": { "nitEmisor": "{{NIT Emisor}}", "nombreEmisor": "nombreEmisor", "codigoEstablecimiento": 1, "nombreComercial": "nombreComercial", "correoEmisor": "correo@emisor.com", "afiliacionIVA": "GEN", "direccion": { "direccion": "direccionEmisor", "codigoPostal": 0, "municipio": "municipioEmisor", "departamento": "departamentoEmisor", "pais": "GT" } }, "receptor": { "idReceptor": "CF", "nombreReceptor": "nombreReceptor", "correoReceptor": "correo@receptor.com", "direccion": { "direccion": "direccionReceptor", "codigoPostal": 0, "municipio": "municipioReceptor", "departamento": "departamentoReceptor", "pais": "GT" } }, "frases": [ { "tipoFrase": 1, "codigoEscenario": 1 } ], "items": [ { "bienOServicio": "B", "cantidad": 1, "unidadMedida": "UN", "descripcion": "descripcion del producto", "precioUnitario": 5000, "precio": 5000, "descuento": 0, "total": 5000, "impuestos": [ { "nombreCorto": "IVA", "codigoUnidadGravable": 1, "montoGravable": 4464.2857142857, "montoImpuesto": 535.7142857142 } ] } ], "totalImpuestos": [ { "nombreCorto": "IVA", "totalMontoImpuesto": 535.7142857142 } ], "adendas": { "valores": { "nombreAdenda": "Valor de la adenda" } }, "granTotal": 5000 } }Example: Crear DTE, tipo=base64
POST •••/api/xml?tipo=base64Request
Query
Key
Value
Description
tipo
base64
Se retornará el DTE codificado en Base64.
Header
Key
Value
Description
appKey
{{appKey}}
Llave que se brinda para acceder a este servicio.
Body
{ "dte": { "datosGenerales": { "tipo": "FACT", "fechaHoraEmision": "2023-01-15T12:56:49.6090", "codigoMoneda": "GTQ" }, "emisor": { "nitEmisor": "{{NIT Emisor}}", "nombreEmisor": "nombreEmisor", "codigoEstablecimiento": 1, "nombreComercial": "nombreComercial", "correoEmisor": "correo@emisor.com", "afiliacionIVA": "GEN", "direccion": { "direccion": "direccionEmisor", "codigoPostal": 0, "municipio": "municipioEmisor", "departamento": "departamentoEmisor", "pais": "GT" } }, "receptor": { "idReceptor": "CF", "nombreReceptor": "nombreReceptor", "correoReceptor": "correo@receptor.com", "direccion": { "direccion": "direccionReceptor", "codigoPostal": 0, "municipio": "municipioReceptor", "departamento": "departamentoReceptor", "pais": "GT" } }, "frases": [ { "tipoFrase": 1, "codigoEscenario": 1 } ], "items": [ { "bienOServicio": "B", "cantidad": 1, "unidadMedida": "UN", "descripcion": "descripcion del producto", "precioUnitario": 5000, "precio": 5000, "descuento": 0, "total": 5000, "impuestos": [ { "nombreCorto": "IVA", "codigoUnidadGravable": 1, "montoGravable": 4464.2857142857, "montoImpuesto": 535.7142857142 } ] } ], "totalImpuestos": [ { "nombreCorto": "IVA", "totalMontoImpuesto": 535.7142857142 } ], "adendas": { "valores": { "nombreAdenda": "Valor de la adenda" } }, "granTotal": 5000 } }Example: Crear DTE, firma=true
POST •••/api/xml?firma=trueRequest
Query
Key
Value
Description
firma
true
Se retornará el JSON necesario para el paso de Firma. Opcion recomendada para usar en conjunto con el paso Firmar.
Header
Key
Value
Description
appKey
{{appKey}}
Llave que se brinda para acceder a este servicio.
Body
{ "dte": { "datosGenerales": { "tipo": "FACT", "fechaHoraEmision": "2023-01-15T12:56:49.6090", "codigoMoneda": "GTQ" }, "emisor": { "nitEmisor": "{{NIT Emisor}}", "nombreEmisor": "nombreEmisor", "codigoEstablecimiento": 1, "nombreComercial": "nombreComercial", "correoEmisor": "correo@emisor.com", "afiliacionIVA": "GEN", "direccion": { "direccion": "direccionEmisor", "codigoPostal": 0, "municipio": "municipioEmisor", "departamento": "departamentoEmisor", "pais": "GT" } }, "receptor": { "idReceptor": "CF", "nombreReceptor": "nombreReceptor", "correoReceptor": "correo@receptor.com", "direccion": { "direccion": "direccionReceptor", "codigoPostal": 0, "municipio": "municipioReceptor", "departamento": "departamentoReceptor", "pais": "GT" } }, "frases": [ { "tipoFrase": 1, "codigoEscenario": 1 } ], "items": [ { "bienOServicio": "B", "cantidad": 1, "unidadMedida": "UN", "descripcion": "descripcion del producto", "precioUnitario": 5000, "precio": 5000, "descuento": 0, "total": 5000, "impuestos": [ { "nombreCorto": "IVA", "codigoUnidadGravable": 1, "montoGravable": 4464.2857142857, "montoImpuesto": 535.7142857142 } ] } ], "totalImpuestos": [ { "nombreCorto": "IVA", "totalMontoImpuesto": 535.7142857142 } ], "adendas": { "valores": { "nombreAdenda": "Valor de la adenda" } }, "granTotal": 5000 } }Response
Body
{ "dte": { "nit_transmitter": "{{NIT Emisor}}", "xml_dte": "" } }