REST - mjungjohann/Ingefactura GitHub Wiki

Se ha dispuesto esta API, de forma de REST, permitiendo acceder a métodos los cuales están orientados a facilitar la integración desde y hacia la plataforma de Ingefactura. El rest puede funcionar con formato XML o JSON, cualquiera de los dos es aceptado por la api de ingefactura. Para realizar cambios entre Json y Xml puedes utilizar el softeare

Generalidades del Rest de Ingefactura

Las peticiones son Http Rest por lo que se debe especificar el método que se va a utilizar, los cuales pueden ser los siguiuentes

GET -->para obtener información de un recurso.
POST--> para crear un recurso.
PUT--> para modificar un recurso.
DELETE-->para eliminar un recurso.

A lo anterior se debe sumar las siguientes cabeceras, las cuales son necesarías para realizar la petición:

store-code:"tuCodigoDeTienda"
Authorization:"tuCodigoDeAutorizacion"

Endpoint General

La dirección para el general es la siguiente:
https://www.develop.ingefactura.cl/wsRest/web/igf/{NombreEndpoint}
NombreEndpoint debe ser reemplazado por el método a utilizar. Estos serán detallados a continuación.

Documento

Endpoint Documento (DteIgf)

El siguiente es el enlace para realizar/consultar las notas de pedido:
https://www.develop.ingefactura.cl/wsRest/web/igf/emision
Proximamente "emision" será reeemplazado por documento o preventa

Estructura de Documento

La estructura de un documento de Ingefactura puede ser en json/xml a continuación se muestra una estructura tipo:

{
  "dteDocumento": {
    "Encabezado": {
      "IdDoc": {
        "TipoDTE": "802",
        "Folio": "68",
        "FchEmis": "2020-04-03"
      },
      "Emisor": {
        "RUTEmisor": "76494269-8",
        "RznSoc": "INGEFACTURA  LIMITADA",
        "GiroEmis": "ACTIVIDADES DE CONSULTORIA DE INFORMATICA Y DE GESTION",
        "Acteco": "620200",
        "sucursal": "CASA MATRIZ",
        "DirOrigen": "Santiago centro",
        "CmnaOrigen": "Alto Biobío",
        "CiudadOrigen": "Biobío",
        "CdgVendedor": "Usuario Test"
      },
      "Receptor": {
        "RUTRecep": "88888888-8",
        "RznSocRecep": "EMPRESA PRUABAS A ASOCIADOA",
        "GiroRecep": "VENTA AL POR MAYOR DE PRODUCTOS DE CONFI",
        "DirRecep": "Direccion Receptor",
        "CmnaRecep": "SANTIAGO",
        "CiudadRecep": "SANTIAGO"
      },
      "Totales": {
        "MntNeto": "840.0",
        "MntExe": "0.0",
        "TasaIVA": "19.0",
        "IVA": "160",
        "MntTotal": "1000"
      }
    },
    "Detalle": {
      "NroLinDet": "1",
      "TpoCodigo": "EAN",
      "VlrCodigo": "codigo",
      "IndExe": "0",
      "NmbItem": "Producto Prueba",
      "QtyItem": "1.0",
      "UnmdItem": "UNID",
      "PrcItem": "840.336134",
      "DescuentoPct": "0.0",
      "DescuentoMonto": "0.0",
      "MontoItem": "840.336134"
    },
    "idSucursal": { "idSucursal": "497" }
  }
}

El caso anterior corresponde a una nota de pedido la cual se envía al endpoint de emision. La nota de pedido TipoDTE 802

Respuesta del Post de un Documento

{
"CdgResp": 1,
"DscResp": "Documento Generado Ok! -Sin XML",
"TrackId": 1237122,
"numPedido": 70,
"Url": "https://develop.ingefactura.cl/PortalPagos/web/com/doc/RTi4OErVBou1kgz8L2Oj5SUfUOstNpuN69kruG9-9r0=",
"Folio": 6504,
"TipoDTE": 802
}
  • CdgResp: Codigo de respuesta del rest, indicado si fue correcto el envío o tuvo algún error.
  • DscResp: Descripcion de las respuesta, si
  • TrackId: Identificación del documento en Ingefactura (número único)
  • numPedido: Número enviado en el post por parte del cliente, el cual relaciona la numeración externa con la de Ingefactura
  • Url: Dirección en donde queda el pdf para descarga o visualización
  • Folio: Folio entregado por Ingefactura para el documento enviado, puede ser el mismo del numPedido dependiendo de la configuracion
  • TipoDTE: tipo de documento enviado