SuperFactura

   

SuperFactura soporta integración con cualquier lenguaje de programación mediante el comando superfactura.exe que permite emitir documentos tributarios electrónicos a partir de un archivo generado por su Software.

El comando recibe los siguientes argumentos:

superfactura.exe [usuario] [contraseña] [ambiente] [archivo] [opciones]
  • [usuario] y [contraseña] corresponden a la cuenta registrada en SuperFactura.
  • [ambiente] debe ser cer para certificación o pro para producción.
  • [archivo] es el archivo con el contenido del DTE en formato JSON o XML.
  • [opciones] es una cadena en formato JSON con opciones adicionales (este argumento es opcional y se puede omitir).

Ejemplo de Uso

Por ejemplo, si queremos generar un documento a partir de un archivo JSON y además enviar la opción savePDF con el valor C:\temp\dte-123 para descargar el archivo PDF, la linea de comandos quedaría así:

superfactura.exe "usuario@empresa.com" "miclave" "cer" "archivo.json" "{'documentID': 'F123', 'savePDF': 'C:\\temp\\dte-123'}"

Notar que en la cadena de opciones JSON se debe escapar el carácter \ anteponiendo otro carácter \.

Contenido del DTE

El archivo con el contenido del DTE puede tener formato XML o JSON (recomendado porque es más flexible y sencillo) y debe tener una estructura similar a la especificación oficial del SII para Documentos Tributarios Electrónicos o Boletas Electrónicas de Venta. La API permite incluso enviar archivos con información de Libros de Compra y Venta, Libros de Guías de Despacho, etc.

Ejemplo JSON

{
    "Encabezado" : {
        "IdDoc" : {
            "TipoDTE" : "33"
            // 'FchEmis' => '2015-01-01' // Opcional
        },
        "Emisor" : {
            "RUTEmisor" : "99581150-2"
            // Los demás datos serán agregados por SuperFactura
        },
        "Receptor" : {
            "RUTRecep" : "1-9",
            "RznSocRecep" : "Test",
            "GiroRecep" : "Giro",
            "DirRecep" : "Dirección",
            "CmnaRecep" : "Comuna",
            "CiudadRecep" : "Ciudad"
        }
    },
    "Detalles" : [
        {
            "NmbItem" : "Item 1",
            "DscItem" : "Descripción del item 1",
            "QtyItem" : "3",
            "UnmdItem" : "KG",
            "PrcItem" : "100"
        },
        {
            "NmbItem" : "Item 2",
            "DscItem" : "Descripción del item 2",
            "QtyItem" : "5",
            "UnmdItem" : "KG",
            "PrcItem" : "65"
        }
    ]
}

Ver más ejemplos aquí.

Ejemplo XML


<?xml version="1.0" encoding="ISO-8859-1"?>
<DTE version="1.0">
    <Documento ID="ID-INTERNO">
        <Encabezado>
            <IdDoc>
                <TipoDTE>33</TipoDTE>
                <Folio>123</Folio>
                <FchEmis>2015-04-09</FchEmis>
            </IdDoc>
            <Emisor>
                <RUTEmisor>99581150-2</RUTEmisor>
                <RznSoc>IMATRONIX S A</RznSoc>
                <GiroEmis>SISTEMAS DE INFORMACIÓN EMPRESARIALES</GiroEmis>
                <Acteco>726000</Acteco>
                <CdgSIISucur>065955163</CdgSIISucur>
                <DirOrigen>AVDA LIMONARES 455, Nº 29, VIÑA DEL MAR</DirOrigen>
                <CmnaOrigen>VINA DEL MAR</CmnaOrigen>
                <CiudadOrigen>VINA DEL MAR</CiudadOrigen>
                <CdgVendedor>XXX</CdgVendedor>
            </Emisor>
            <Receptor>
                <RUTRecep>1-9</RUTRecep>
                <RznSocRecep>Test</RznSocRecep>
                <GiroRecep>Giro</GiroRecep>
                <CorreoRecep>dte@cliente.cl</CorreoRecep>
                <DirRecep>Dirección</DirRecep>
                <CmnaRecep>Comuna</CmnaRecep>
                <CiudadRecep>Ciudad</CiudadRecep>
            </Receptor>
            <Totales>
                <MntNeto>64475</MntNeto>
                <MntExe>0</MntExe>
                <TasaIVA>19</TasaIVA>
                <IVA>12250</IVA>
                <ImptoReten>
                    <TipoImp>26</TipoImp>
                    <TasaImp>20.5</TasaImp>
                    <MontoImp>649440</MontoImp>
                </ImptoReten>
                <ImptoReten>
                    <TipoImp>271</TipoImp>
                    <TasaImp>18</TasaImp>
                    <MontoImp>590328</MontoImp>
                </ImptoReten>
                <MntTotal>1316493</MntTotal>
            </Totales>
        </Encabezado>
        <Detalle>
            <NroLinDet>1</NroLinDet>
            <CdgItem>
                <TpoCodigo>INT</TpoCodigo>
                <VlrCodigo>75032715</VlrCodigo>
            </CdgItem>
            <NmbItem>CORONA EXTRA 355 CC 4.6</NmbItem>
            <DscItem>CORONA EXTRA 355 CC 4.6</DscItem>
            <UnmdRef>UNI</UnmdRef>
            <QtyItem>72</QtyItem>
            <UnmdItem>UNI</UnmdItem>
            <PrcItem>440</PrcItem>
            <CodImpAdic>26</CodImpAdic>
            <MontoItem>31680</MontoItem>
        </Detalle>
        <Detalle>
            <NroLinDet>2</NroLinDet>
            <NmbItem>Coca-Cola</NmbItem>
            <DscItem>Coca-Cola</DscItem>
            <UnmdRef>UNI</UnmdRef>
            <QtyItem>36</QtyItem>
            <UnmdItem>UNI</UnmdItem>
            <PrcItem>911</PrcItem>
            <CodImpAdic>271</CodImpAdic>
            <MontoItem>32796</MontoItem>
        </Detalle>
        <DscRcgGlobal>
            <NroLinDR>1</NroLinDR>
            <TpoMov>D</TpoMov>
            <GlosaDR>Descuento de 1 peso</GlosaDR>
            <TpoValor>$</TpoValor>
            <ValorDR>1</ValorDR>
        </DscRcgGlobal>
    </Documento>
</DTE>

Salida

El comando generará como salida un string JSON que incluirá el número de folio asignado al documento:

{"ok":true,"folio":"125"}

En caso de generarse algún error, su Software debiera ofrecer al usuario la opción de reintentar o cancelar la emisión del documento sin redigitar sus datos.

El logo y diseño de las muestras impresas PDF y el certificado digital para firmar los DTE se configuran en la Ficha del Contribuyente de .

Para obtener más información sobre el servicio , ver cotización aquí.

Para realizar pruebas de integración y emitir documentos en el ambiente de certificación del SII, ver pasos para comenzar. El servicio para realizar pruebas es completamente gratis.

En caso de tener alguna consulta, puede escribirnos a contacto@superfactura.cl.