Objeto Documento

Puedes hacer uso de la API para solicitar la información de uno o más documentos de tu empresa. Los documentos hacen referencia a las Facturas al interior de Duemint.

Método getDocuments

Método para obtener una lista de documentos de la empresa de acuerdo a parámetros definidos.

Parámetro Descripción
Método GET
URL https://api.duemint.com/v1/getDocuments<params>
Params Parámetros que pueden ser agregados a la solicitud para discriminar qué documentos se desea obtener. Los parametros posibles son:
since date Fecha desde cuando contar los documentos en formato YYYY-MM-DD, con respecto a la fecha definida en el parámetro dateBy
until date Fecha hasta cuando contar los documentos en formato YYYY-MM-DD, con respecto a la fecha definida en el parámetro dateBy
dateBy integer 1 = Fecha de emisión (por defecto); 2 = Fecha de creación
status integer 1: Pagada; 2: Por vencer; 3: Vencida; 4: Anulada
number string Folio o número del documento
code integer Código tributario del documento. 33: Factura Electrónica; 34: Factura Exenta Electrónica
currency string(3) Código ISO de la moneda que se desea filtrar. Por ejemplo USD para Dólar Americano o CLP para Pesos Chilenos
clientId integer Id único del cliente. Ver getClients
clientTaxId string Código tributario del cliente. En el caso de un RUT chileno el formato es sin puntos y con guión (ej: 99999999-9)
tagId integer Id único del Tag. Ver getTags
orderBy integer 1: Fecha de emisión (por defecto); 2: Fecha de creación; 3: Fecha de vencimiento; 4: Número o folio; 5: Monto total
order string ASC o DESC (default)
resultsPerPage integer Número de resultados por solicitud. Por defecto = 50 (máximo 100)
page integer Página de resultados. Por defecto = 1
expandClient bool 0: No expandir (Por defecto), 1: Expandir información del cliente
expandContact bool 0: No expandir (Por defecto), 1: Expandir información del contacto. El parámetro expandClient debe ser = 1
expandTag bool 0: No expandir (Por defecto), 1: Expandir información del tag
expandFile bool 0: No expandir (Por defecto), 1: Expandir información del archivo

A continuación se muestra un ejemplo usando el método getDocuments de la API de Duemint.

METHOD GET
curl "https://api.duemint.com/v1/getDocuments?clientId=8201&resultsPerPage=2" \
 -H 'Authorization: Bearer <token>' -H 'Accept: application/json'

El resultado ejemplo para esta llamada se muestra a continuación:

{
  "records": {
    "totalRecords": 4,
    "items": 2,
    "page": 1,
    "pages": 2
  },
  "items": [
    {
      "id": "109948",
      "clientTaxId": "99999999-9",
      "number": "702",
      "createdAt": "2018-04-11 21:02:32",
      "issueDate": "2018-04-11",
      "dueDate": "2018-04-18",
      "status": 1,
      "statusName": "Pagada",
      "currency": "CLP",
      "net": "8091.00",
      "taxes": "1537.00",
      "total": "9628.00",
      "paidAmount": "9628.00",
      "paidDate": "2018-04-12",
      "amountDue": "0",
      "amountCredit": "0",
      "amountDebit": "0",
      "purchaseOrder": "OC456",
      "gloss": "",
      "notes": "",
      "code": 33,
      "url": "https:\/\/www.duemint.com\/portal\/invoice\/109948\/p59a93o3f15634",
      "xml": "https:\/\/www.duemint.com\/portal\/downloadInvoiceXml\/109948\/p59a93o3f15634",
      "pdf": "https:\/\/www.duemint.com\/portal\/showPdf\/109948\/p59a93o3f15634",
      "client": {
        "id": "8201"
      },
      "tags": [
        {
          "id": "2417"
        }
      ],
      "files": [
        {
          "id": "62540"
        }
      ]
    },
    {
      "id": "106192",
      "clientTaxId": "99999999-9",
      "number": "630",
      "createdAt": "2018-04-09 10:00:51",
      "issueDate": "2018-04-09",
      "dueDate": "2018-04-16",
      "status": 3,
      "statusName": "Vencida",
      "currency": "CLP",
      "net": "21574.00",
      "taxes": "4099.00",
      "total": "25673.00",
      "paidAmount": "0.00",
      "paidDate": null,
      "amountDue": "25673.00",
      "amountCredit": "0",
      "amountDebit": "0",
      "purchaseOrder": "OC123",
      "gloss": "",
      "notes": "",
      "code": 33,
      "url": "https:\/\/www.duemint.com\/portal\/invoice\/106192\/p5a21dc6ccf061",
      "xml": "https:\/\/www.duemint.com\/portal\/downloadInvoiceXml\/106192\/p5a21dc6ccf061",
      "pdf": "https:\/\/www.duemint.com\/portal\/showPdf\/106192\/p5a21dc6ccf061",
      "client": {
        "id": "8201"
      },
      "tags": [],
      "files": []
    }
  ]
}

Método getDocument

Método para obtener un documento específico.

Parámetro Descripción
Método GET
URL https://api.duemint.com/v1/getDocument<params>
Params Parámetros que pueden ser agregados a la solicitud para discriminar qué documento se desea obtener. Los parametros posibles son:
id integer Id único del documento (requerido)
expandClient bool 0: No expandir (Por defecto), 1: Expandir información del cliente
expandContact bool 0: No expandir (Por defecto), 1: Expandir información del contacto. El parámetro expandClient debe ser = 1
expandTag bool 0: No expandir (Por defecto), 1: Expandir información del tag
expandFile bool 0: No expandir (Por defecto), 1: Expandir información del archivo

A continuación se muestra un ejemplo usando el método getDocument de la API de Duemint.

METHOD GET
curl "https://api.duemint.com/v1/getDocument?id=106262&expandClient=1" \
 -H 'Authorization: Bearer <token>' -H 'Accept: application/json'

El resultado ejemplo para esta llamada se muestra a continuación:

{
  "id": "109948",
  "clientTaxId": "99999999-9",
  "number": "702",
  "createdAt": "2018-04-11 21:02:32",
  "issueDate": "2018-04-11",
  "dueDate": "2018-04-18",
  "status": 1,
  "statusName": "Pagada",
  "currency": "CLP",
  "net": "8091.00",
  "taxes": "1537.00",
  "total": "9628.00",
  "paidAmount": "9628.00",
  "paidDate": "2018-04-12",
  "amountDue": "0",
  "amountCredit": "0",
  "amountDebit": "0",
  "purchaseOrder": "OC456",
  "gloss": "",
  "notes": "",
  "code": 33,
  "url": "https:\/\/www.duemint.com\/portal\/invoice\/109948\/p59a93o3f15634",
  "xml": "https:\/\/www.duemint.com\/portal\/downloadInvoiceXml\/109948\/p59a93o3f15634",
  "pdf": "https:\/\/www.duemint.com\/portal\/showPdf\/109948\/p59a93o3f15634",
  "client": {
    "id": "8201",
    "name": "Deli Sandwich",
    "taxId": "99999999-9",
    "country": "Chile",
    "region": "Metropolitana",
    "city": "Santiago",
    "address": "",
    "zipcode": "",
    "phone": "",
    "fax": "",
    "paymentTerm": 30,
    "sendReminders": {
      "newDocument": true,
      "soonToExpire": true,
      "expired": true,
      "newPayment": true,
      "debtSummary": true
    },
    "url": "https:\/\/www.duemint.com\/portal\/8201\/p59fhf5c456u4c",
    "contacts": [
      {
        "id": "16567"
      }
    ]
  },
  "tags": [
    {
      "id": "2417"
    }
  ],
  "files": [
    {
      "id": "62540"
    }
  ]
}

Método createDocumentFromXml

Método para crear un documento a partir de un XML debidamente estructurado de acuerdo a su País.

Parámetro Descripción
Método POST
URL https://api.duemint.com/v1/createDocumentFromXml
Post Params Parametros a comunicar.
xml string Cadena de texto correspondiente al xml codificado en base64. Los DTE aceptados en este método deben ser Facturas Electrónicas (33) o Facturas Exentas Electrónicas (34). (requerido)
countryCode string Código ISO de 2 letras del país (por defecto CL). Por ejemplo CL para Chile, MX para México.
taxId string Código de identificación del cliente (tributario o no) al cual quedará asociado el docuemnto. Campo opcional, en caso de no definirse, se utiliza el código incluido en el XML.
send boolean 0: No enviar (por defecto); 1: Enviar recordatorio de Factura Emitida (si existe)

A continuación se muestra un ejemplo usando el método createDocumentFromXml de la API de Duemint.

METHOD POST
curl "https://api.duemint.com/v1/createDocumentFromXml' -X POST \
 -d '{"send":1, "xml":"PERURSB2ZXJzaW9uPSIxLjAiPgo8RG9jdW1lbnRvIElEPSJNaVBFNzY0NTM3MDctMiI+CiAgICA8RW5jYWJlemFkbz4KICAgICAgPElkRG9jPgogICAgICAgIDxUaXBvRFRFPjMzPC9UaXBvRFRFPgogICAgICAgIDxGb2xpbz42OTY8L0ZvbGlvPgogICAgICAgIDxGY2hFbWlzPjIwMTgtMDQtMDY8L0ZjaEVtaXM+CiAgICAgICAgPFRwb1RyYW5Db21wcmE+MTwvVHBvVHJhbkNvbXByYT4KICAgICAgICA8VHBvVHJhblZlbnRhPjE8L1Rwb1RyYW5WZW50YT4KICAgICAgICA8Rm1hUGFnbz4yPC9GbWFQYWdvPgogICAgICA8L0lkRG9jPgogICAgICA8RW1pc29yPgogICAgICAgIDxSVVRFbWlzb3I+NzY0NTM3MDctNjwvUlVURW1pc29yPgogICAgICAgIDxSem5Tb2M+RFVFTUlOVCBTUEE8L1J6blNvYz4KICAgICAgICA8R2lyb0VtaXM+REVTQVJST0xMTyBZIFZFTlRBIERFIFNPRlRXQVJFUywgU0lTVEVNQVMgWSBBUFBTPC9HaXJvRW1pcz4KICAgICAgICA8Q29ycmVvRW1pc29yPlBBQkxPQERVRU1JTlQuQ09NPC9Db3JyZW9FbWlzb3I+CiAgICAgICAgPEFjdGVjbz43MjQwMDA8L0FjdGVjbz4KICAgICAgICA8Q2RnU0lJU3VjdXI+MDgwNTYxOTU1PC9DZGdTSUlTdWN1cj4KICAgICAgICA8RGlyT3JpZ2VuPkFWLiBMT1MgRE9NSU5JQ09TIDg2MzAgIDMxMDwvRGlyT3JpZ2VuPgogICAgICAgIDxDbW5hT3JpZ2VuPkxBUyBDT05ERVM8L0NtbmFPcmlnZW4+CiAgICAgICAgPENpdWRhZE9yaWdlbj5TQU5USUFHTzwvQ2l1ZGFkT3JpZ2VuPgogICAgICA8L0VtaXNvcj4KICAgICAgPFJlY2VwdG9yPgogICAgICAgIDxSVVRSZWNlcD45OTk5OTk5OS05PC9SVVRSZWNlcD4KICAgICAgICA8UnpuU29jUmVjZXA+Q0xJRU5URSBFSkVNUExPPC9Sem5Tb2NSZWNlcD4KICAgICAgICA8R2lyb1JlY2VwPlZFTlRBIEFMIFBPUiBNQVlPUiBERSBIVUVWT1MsIExFQ0hFPC9HaXJvUmVjZXA+CiAgICAgICAgPERpclJlY2VwPkFWIExBUyBDT05ERVMgNjkwMzwvRGlyUmVjZXA+CiAgICAgICAgPENtbmFSZWNlcD5MQVMgQ09OREVTPC9DbW5hUmVjZXA+CiAgICAgICAgPENpdWRhZFJlY2VwPlNBTlRJQUdPPC9DaXVkYWRSZWNlcD4KICAgICAgPC9SZWNlcHRvcj4KICAgICAgPFRvdGFsZXM+CiAgICAgICAgPE1udE5ldG8+ODA5MDE8L01udE5ldG8+CiAgICAgICAgPFRhc2FJVkE+MTkuMDA8L1Rhc2FJVkE+CiAgICAgICAgPElWQT4xNTM3MTwvSVZBPgogICAgICAgIDxNbnRUb3RhbD45NjI3MjwvTW50VG90YWw+CiAgICAgIDwvVG90YWxlcz4KICAgIDwvRW5jYWJlemFkbz4KICAgIDxEZXRhbGxlPgogICAgICA8TnJvTGluRGV0PjE8L05yb0xpbkRldD4KICAgICAgPE5tYkl0ZW0+U0VSVklDSU9TIFZBUklPUzwvTm1iSXRlbT4KICAgICAgPERzY0l0ZW0+Q09OU1VMVE9SSUEgWSBBU0VTT1JJQTwvRHNjSXRlbT4KICAgICAgPFF0eUl0ZW0+MS4wMDwvUXR5SXRlbT4KICAgICAgPFVubWRJdGVtPnVuaTwvVW5tZEl0ZW0+CiAgICAgIDxQcmNJdGVtPjgwOTAwLjY3PC9QcmNJdGVtPgogICAgICA8TW9udG9JdGVtPjgwOTAxPC9Nb250b0l0ZW0+CiAgICA8L0RldGFsbGU+CiAgPC9Eb2N1bWVudG8+CjwvRFRFPg=="}'
 -H 'Authorization: Bearer <token>' -H 'Accept: application/json'

El resultado ejemplo para esta llamada se muestra a continuación:

{
  "id": "113763",
  "clientTaxId": "99999999-9",
  "number": "696",
  "createdAt": "2018-04-19 18:01:39",
  "issueDate": "2018-04-06",
  "dueDate": "2018-04-13",
  "status": 2,
  "statusName": "Por vencer",
  "currency": "CLP",
  "net": "80901.00",
  "taxes": "15371.00",
  "total": "96272.00",
  "paidAmount": 0,
  "paidDate": null,
  "amountDue": "96272.00",
  "amountCredit": "0",
  "amountDebit": "0",
  "purchaseOrder": "",
  "gloss": "",
  "notes": "*** LINEAS DETALLE DTE *** NroLinDet: 1 NmbItem: SERVICIOS VARIOS DscItem: CONSULTORIA Y ASESORIA QtyItem: 1.00 PrcItem: 80900.67 MontoItem: 80901 ",
  "code": 33,
  "url": "https:\/\/www.duemint.com\/portal\/invoice\/113763\/p5ad8d7c22055f",
  "xml": "https:\/\/www.duemint.com\/portal\/downloadInvoiceXml\/113763\/p5ad8d7c22055f",
  "pdf": "https:\/\/www.duemint.com\/portal\/showPdf\/113763\/p5ad8d7c22055f",
  "client": {
    "id": "8201"
  },
  "tags": [],
  "files": []
}

Método createDocument

Método para crear un documento. Si tienes acceso al XML te recomendamos utilizar el método createDocumentFromXml.

Parámetro Descripción
Método POST
URL https://api.duemint.com/v1/createDocument
Post Params Parametros a comunicar.
clientId integer Id único del cliente del documento (requerido)
number string Número o folio del documento (requerido)
issueDate date YYYY-MM-DD Fecha de emisión del documento (requerido)
dueDate date YYYY-MM-DD Fecha de vencimiento del documento
total float Monto total del documento (requerido)
taxes float Monto de impuestos del documento (requerido)
code integer Código tributario del documento (33: Factura Electrónica; 34: Factura Exenta Electrónica; 39: Boleta Electrónica; 41:Boleta Exenta Electrónica)
currency string(3) Código ISO de la moneda del documento. Por ejemplo USD para Dólar Americano o CLP para Pesos Chilenos
purchaseOrder string(255) Número de orden de compra
gloss string(255) Glosa (descripción) del documento
notes string Notas (descripción detalla) del documento
send boolean 0: No enviar (por defecto); 1: Enviar recordatorio de Factura Emitida (si existe)
tags string[] Conjunto de etiquetas para asociar al documento

A continuación se muestra un ejemplo usando el método createDocument de la API de Duemint.

METHOD POST
curl "https://api.duemint.com/v1/createDocument' -X POST \
 -d '{"clientId":"24192","number":"696","issueDate":"2018-04-06","total":"96272","taxes":"15371","currency":"CLP"}'
 -H 'Authorization: Bearer <token>' -H 'Accept: application/json'

El resultado ejemplo para esta llamada se muestra a continuación:

{
  "id": "113763",
  "clientTaxId": "99999999-9",
  "number": "696",
  "createdAt": "2018-04-19 18:01:39",
  "issueDate": "2018-04-06",
  "dueDate": "2018-04-13",
  "status": 3,
  "statusName": "Vencida",
  "currency": "CLP",
  "net": "80901.00",
  "taxes": "15371.00",
  "total": "96272.00",
  "paidAmount": 0,
  "paidDate": null,
  "amountDue": "96272.00",
  "amountCredit": "0",
  "amountDebit": "0",
  "purchaseOrder": "",
  "gloss": "",
  "notes": "",
  "code": null,
  "url": "https:\/\/www.duemint.com\/portal\/invoice\/113763\/p5ad8d7c22055f",
  "xml": "https:\/\/www.duemint.com\/portal\/downloadInvoiceXml\/113763\/p5ad8d7c22055f",
  "pdf": "https:\/\/www.duemint.com\/portal\/showPdf\/113763\/p5ad8d7c22055f",
  "client": {
    "id": "8201"
  },
  "tags": [],
  "files": []
}

Método deleteDocument

Método para eliminar un Documento.

Parámetro Descripción
Método DELETE
URL https://api.duemint.com/v1/deleteDocument
Post Params Parametros a comunicar.
clientTaxId string Código tributario del cliente. En el caso de un RUT chileno el formato es sin puntos y con guión (ej: 99999999-9) (requerido)
number string Folio o número del documento (requerido)

A continuación se muestra un ejemplo usando el método deleteDocument de la API de Duemint.

METHOD DELETE
curl "https://api.duemint.com/v1/deleteDocument' -X DELETE \
 -d '{"clientTaxId":"99999999-9", "number":"12345"}'
 -H 'Authorization: Bearer <token>' -H 'Accept: application/json'

El resultado ejemplo para esta llamada se muestra a continuación:

{
  "id": "12345",
  "msg": "Documento eliminado.",
}