Instalación y Pruebas

En este tutorial, exploraremos como instalar y ejecutar el programa y además veremos la estructura básica de una factura de venta electrónica en formato JSON y te enseñaremos cómo obtener el XML firmado correspondiente.

Requisitos

Para comenzar, es imprescindible contar con un certificado digital de facturación electrónica asociado a la empresa con la que realizarás las pruebas. Este certificado se puede obtener a través de una de las siguientes plataformas:

Certificado de pruebas

En caso de que no dispongas de un certificado digital, te ofrecemos la posibilidad de realizar pruebas utilizando nuestro certificado de pruebas. Es importante tener en cuenta que este certificado está destinado exclusivamente para pruebas locales y no está habilitado para la emisión de facturas electrónicas.

Descargar Certificado

Contraseña: 123456

Registrar Software Propio (Opcional para este tutorial)

Para obtener la identificación y el rango de prueba es necesario registrarse como software propio en la plataforma de la DIAN.

Sigue este video para aprender como hacerlo:

Video

Estructura JSON Factura Nacional

La estructura JSON de la factura de venta contiene la siguiente información:

Información del Software Propio

  • Información del Emisor y Adquirente de la factura
  • Detalle de los productos, totales e impuestos
  • Suma total de los valores

Reemplaza los siguientes valores en el formato JSON:

  • Identificación del software
  • Pin software
  • Ruta del certificado
  • Clave certificado
  • Identificación, digito de verificación y nombre del emisor
  • Clave técnica del rango de prueba
{
    "documento": {
        "tipo": "01",
        "numero": "990000035",
        "fecha": "2023-06-20",
        "hora": "15:44:34-05:00",
        "nota": "",
        "software": {
            "ambiente": 2,
            "identificacion": "IDENTIFICACION_SOFTWARE",
            "pin": "123456",
            "ruta_certificado": "C:\\Archivos\\ejemplo.pfx",
            "clave_certificado": "123456"
        },
        "numeracion": {
            "desde": 990000000,
            "hasta": 995000000,
            "prefijo": "SETP",
            "clave_tecnica": "CLAVE_TECNICA",
            "autorizacion": "18760000001",
            "fecha_final": "2030-01-19",
            "fecha_inicio": "2019-01-19"
        },
        "pago": {
            "fecha": "2023-06-12",
            "id": "Contado",
            "codigo": "ZZZ",
            "identificador": "Pago0001"
        },
        "emisor": {
            "tipo_organizacion": 1,
            "digito_verificacion": 1,
            "nombre": {
                "nombre_comercial": "Empresa A",
                "razon_social": "Empresa A"
            },
            "telefono": "2424",
            "direccion": "CL 345 3",
            "municipio": "05001",
            "departamento": "05",
            "identificacion": "IDENTIFICACION",
            "regimen_fiscal": 48,
            "responsabilidades_fiscales": "R-99-PN",
            "correo_electronico": "a@micorreo.com",
            "tipo_identificacion": "31"
        },
        "adquiriente": {
            "tipo_organizacion": 1,
            "digito_verificacion": 1,
            "nombre": {
                "razon_social": "Juan Perez"
            },
            "telefono": "2424",
            "direccion": "CL 345 3",
            "municipio": "05001",
            "departamento": "05",
            "identificacion": "2222222222",
            "regimen_fiscal": 48,
            "responsabilidades_fiscales": "R-99-PN",
            "correo_electronico": "a@micrreo.com",
            "tipo_identificacion": "31"
        },
        "detalle": [
            {
                "numero": 1,
                "descripcion": "Prueba",
                "nota": "Prueba",
                "total": 479359.00,
                "precio": 479359.00,
                "cantidad": 1.00,
                "impuestos": [
                    {
                        "codigo": "01",
                        "total": 91078.21,
                        "porcentaje": 19.00,
                        "base": 479359.00
                    },
                    {
                        "codigo": "01",
                        "total": 76697.44,
                        "porcentaje": 16.00,
                        "base": 479359.00
                    }
                ],
                "estandar": {
                    "nombre": "UNSPSC",
                    "codigo": "43201501"
                }
            },
            {
                "numero": 2,
                "descripcion": "Prueba 2",
                "nota": "Prueba 2",
                "total": 454504.00,
                "precio": 454504.00,
                "cantidad": 1.00,
                "impuestos": [
                    {
                        "codigo": "01",
                        "total": 86355.76,
                        "porcentaje": 19.00,
                        "base": 454504.00
                    },
                    {
                        "codigo": "01",
                        "total": 72720.64,
                        "porcentaje": 16.00,
                        "base": 454504.00
                    }
                ],
                "estandar": {
                    "nombre": "UNSPSC",
                    "codigo": "43201501"
                }
            }
        ],
        "impuestos_totales": [
            {
                "codigo": "01",
                "total": 177433.97,
                "porcentaje": 19.00,
                "base": 933863.00
            },
            {
                "codigo": "01",
                "total": 149418.08,
                "porcentaje": 16.00,
                "base": 933863.00
            }
        ],
        "valor_total_iva": 326852.05,
        "valor_total_ica": 0.0,
        "valor_total_inc": 0.0,
        "valor_total_bruto": 933863.0,
        "valor_total_pagar": 1260715.05,
        "valor_total_con_impuestos": 1260715.05,
        "valor_total_base_imponible": 1867726.0
    }
}

Obtener XML Firmado

Para realizar las pruebas, utilizaremos Postman, una herramienta popular para realizar solicitudes HTTP. Sin embargo, también puedes utilizar otros programas como cURL o incluso cualquier lenguaje de programación que te resulte más cómodo y familiar. La elección del método depende de tus preferencias y conocimientos. Asegúrate de tener instalado el programa o herramienta que elijas antes de continuar con las pruebas.


  • Seleccionamos el metodo POST
  • La url de servicio debe ser: http://dev.enlote.co/api/v1/factura/xml
  • Nos dirigimos a Body y seleccionamos la opción raw
  • Pegamos el formato JSON previamente creado
  • En la opción tipo de dato seleccionamos JSON