Método de consulta de estado y metadata del documento (GetDocument)
Este método permite consultar la información de un documento utilizando el servicio POST GetDocument.
Por medio de este método, se obtiene toda la información del documento, IDs del documento, fechas de emisión, firmado, notas, datos del emisor, receptor, estado, etc.
Para conectarse a esta funcionalidad será necesario que ingrese la URL de acuerdo con el ambiente a consumir:
https://developers.gosocket.net/api/v1/Document/GetDocumenthttps://developers-sbx.gosocket.net/api/v1/Document/GetDocumentTome en cuenta lo siguiente:
- El periodo máximo de fechas de documentos, es un mes.
- La API responderá con 10 documentos por consulta.
- Ingrese el parámetro "ResultMaxItemCount" para consultar hasta 100 documentos. Por ejemplo, si requiere consultar 80 documentos, deberá ingresar:
"ResultMaxItemCount": 80. - Los parámetros (DateFrom y DateTo) para indicar el periodo a consultar, pueden omitirse en el ambiente de sandbox. Sin embargo, su uso es obligatorio, como se indica en la presente documentación.
¿Cómo funciona el método GetDocument?
Para realizar la petición, el método tiene los siguientes parámetros en formato JSON con la siguiente estructura:
| GetDocument (request) | |||
|---|---|---|---|
| Parámetro | Tipo | Descripción | Valores permitidos |
| GlobalDocumentId | String | ID del documento en Gosocket Si bien este parámetro no es obligatorio, agiliza la consulta cuando se llena. | UUID de 36 caracteres alfanuméricos xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
| CountryDocumentId | String | Identificador fiscal del documento a nivel país, conocido también como CUFE, CLAVE, UUID, ID | Ver tabla Estructura Country Document ID |
| ExternalId | String | ID del documento en sistema externo | |
| Country* | String | Código del País de emisión del documento | ar, bo, br, cl, co, cr, ec, gt, mx, pa, pe, py, do, sv, uy |
| DateFrom* | String | Fecha de emisión (desde), no se permite en el rango combinar 2 o más años Campo obligatorio, excepto cuando se ingresa el GlobalDocumetId. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| DateTo* | String | Fecha de emisión (hasta), no se permite en el rango combinar 2 o más años Campo obligatorio, excepto cuando se ingresa el GlobalDocumetId. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| ReceivedDateFrom | String | Fecha de recepción (desde), no se permite en el rango combinar 2 o más años. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| ReceivedDateTo | String | Fecha de recepción (hasta), no se permite en el rango combinar 2 o más años. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| SenderCode* | String | ID Fiscal Emisor Campo obligatorio. En caso de no ser enviado, se emite el error Unautorized Action/ empresa no autorizada | Consultar tabla Estructura ID Fiscal |
| ReceiverCode | String | ID Fiscal del Receptor | Consultar tabla Estructura ID Fiscal |
| DocumentTypeId | Integer | Codigo del tipo de documento en Gosocket (factura, nota, etc) | 1, 2, 3, 4, … |
| Series | String | Serie del documento | |
| Number | String | Folio del documento | |
| SeriesNumber | String | Serie y folio del documento concatenados | |
| TwoCheckStatusSender | Integer | Estados del emisor con validaciones adicionales Smart Supply | 0: pendiente 2: enviado 3: aceptado 4: rechazado |
| TwoCheckStatusReceiver | Integer | Estados del receptor con validaciones adicionales Smart Supply | 0: pendiente 2: enviado 3: aceptado 4: rechazado |
| Has Offer | Boolean | Estado de ofertas del documento | True: Tiene ofertas False: No tiene ofertas |
| OfferFinancialEntityCode | String | RUT de empresa que hizo la oferta | 00000000-0 |
| DocumentTagValues | String | Etiquetas que contiene el documento | Ejemplo: "DocumentTagValues": { "AuthorityStatus": "2" } |
| ContainDocumentTagCode | Boolean | Indicador de que el documento contenga la etiqueta definida | True: el documento contiene el código de etiqueta definida. False: el documento no contiene el código de etiqueta definida. Ejemplo: "ContainDocumentTagCode": { "AttRC": true } |
| ResultMaxItemCount | Integer | Cantidad de resultados de la consulta, si se pone un valor por encima de 100 el sistema lo ajustará a 100 máximo. | 1, 2, 3, 4, 5, 6, 7, 8, 9…100 |
| ContinuationToken | String | Token que página el resultado en caso de no haber respondido todos los documentos en la consulta anterior | Ejemplo: [{"compositeToken":{"token":null,"range":{"min":"05C1E0","max":"05C1E2"}},"orderByItems":[{"item":"2022-07-29T23:04:03.3120133Z"}],"rid":"2nsFAKt-OBYtwgQAAACACQ==","skipCount":0,"filter":null}] |
*Requerido
Nota: Los parámetros (DateFrom y DateTo) para indicar el periodo a consultar, pueden omitirse en el ambiente de sandbox. Sin embargo, su uso es obligatorio, como se indica en el presente manual.
Ejemplo de petición del método

Nota: Recuerde que antes de utilizar el método, debe realizar su autenticación dentro de la pestaña Authorization.
Para este método utilizamos la pestaña Body de Postman.
- Seleccione el tipo de método. En este caso, se debe seleccionar POST.
- Ingrese la URL del método.
- Ingrese los parámetros que se muestran en la tabla anterior con sus valores correspondientes.
- Presione Send.
| GetDocument (request) | |||
|---|---|---|---|
| Parámetro | Tipo | Descripción | Valores permitidos |
| GlobalDocumentId | String | ID del documento en Gosocket Si bien este parámetro no es obligatorio, agiliza la consulta cuando se llena. | UUID de 36 caracteres alfanuméricos xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
| CountryDocumentId | String | Identificador fiscal del documento a nivel país, conocido también como CUFE, CLAVE, UUID, ID | Ver tabla Estructura Country Document ID |
| ExternalId | String | ID del documento en sistema externo | |
| Country* | String | Código del País de emisión del documento | ar, bo, br, cl, co, cr, ec, gt, mx, pa, pe, py, do, sv, uy |
| DateFrom* | String | Fecha de emisión (desde), no se permite en el rango combinar 2 o más años Campo obligatorio, excepto cuando se ingresa el GlobalDocumetId. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| DateTo* | String | Fecha de emisión (hasta), no se permite en el rango combinar 2 o más años Campo obligatorio, excepto cuando se ingresa el GlobalDocumetId. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| LastChangeFrom | String | Fecha del último cambio (desde), no se permite en el rango combinar 2 o más años. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| LastChangeTo | String | Fecha del último cambio (hasta), no se permite en el rango combinar 2 o más años. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| ReceivedDateFrom | String | Fecha de recepción (desde), no se permite en el rango combinar 2 o más años. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| ReceivedDateTo | String | Fecha de recepción (hasta), no se permite en el rango combinar 2 o más años. Este parámetro filtra por fecha, no por hora. | aaaa-mm-dd |
| SenderCode* | String | ID Fiscal Emisor Campo obligatorio. En caso de no ser enviado, se emite el error Unautorized Action/ empresa no autorizada | Consultar tabla Estructura ID Fiscal |
| ReceiverCode | String | ID Fiscal del Receptor | Consultar tabla Estructura ID Fiscal |
| DocumentTypeId | Integer | Codigo del tipo de documento en Gosocket (factura, nota, etc) | 1, 2, 3, 4, … |
| Series | String | Serie del documento | |
| Number | String | Folio del documento | |
| SeriesNumber | String | Serie y folio del documento concatenados | |
| TwoCheckStatusSender | Integer | Estados del emisor con validaciones adicionales Smart Supply | 0: pendiente 2: enviado 3: aceptado 4: rechazado |
| TwoCheckStatusReceiver | Integer | Estados del receptor con validaciones adicionales Smart Supply | 0: pendiente 2: enviado 3: aceptado 4: rechazado |
| Has Offer | Boolean | Estado de ofertas del documento | True: Tiene ofertas False: No tiene ofertas |
| OfferFinancialEntityCode | String | RUT de empresa que hizo la oferta | 00000000-0 |
| DocumentTagValues | String | Etiquetas que contiene el documento | Ejemplo: "DocumentTagValues": { "AuthorityStatus": "2" } |
| ContainDocumentTagCode | Boolean | Indicador de que el documento contenga la etiqueta definida | True: el documento contiene el código de etiqueta definida. False: el documento no contiene el código de etiqueta definida. Ejemplo: "ContainDocumentTagCode": { "AttRC": true } |
| ResultMaxItemCount | Integer | Cantidad de resultados de la consulta, si se pone un valor por encima de 100 el sistema lo ajustará a 100 máximo. | 1, 2, 3, 4, 5, 6, 7, 8, 9…100 |
| ContinuationToken | String | Token que página el resultado en caso de no haber respondido todos los documentos en la consulta anterior | Ejemplo: [{"compositeToken":{"token":null,"range":{"min":"05C1E0","max":"05C1E2"}},"orderByItems":[{"item":"2022-07-29T23:04:03.3120133Z"}],"rid":"2nsFAKt-OBYtwgQAAACACQ==","skipCount":0,"filter":null}] |
*Requerido
Ejemplo de respuesta







Ejemplo de consulta de los tags value

| GetDocument (response) | |||
|---|---|---|---|
| Parámetro | Tipo | Descripción | Valores permitidos |
| UrlPdf | String | URL de descarga del archivo PDF generado a partir del documento | "https://... " |
| UrlXml | String | URL de descarga del archivo XML tributario del documento | "https://... " |
| GlobalDocumentId | String | ID del documento en Gosocket | UUID de 36 caracteres alfanuméricos xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
| CountryDocumentId | String | Identificador fiscal del documento a nivel país, conocido también como CUFE, CLAVE, UUID, ID | Ver tabla Estructura Country Document ID |
| ExternalId | String | ID del documento en sistema externo | |
| CountryId | String | Código del País de emisión del documento | ar, bo, br, cl, co, cr, ec, gt, mx, pa, pe, py, do, sv, uy |
| Date | String | Fecha de emisión del documento | aaaa-mm-ddThh:mm:ss |
| DocumentTypeId | integer | Codigo del tipo de documento en Gosocket (factura, nota, etc) | 1, 2, 3, 4, … |
| DocumentTypeName | String | Nombre del tipo de documento en Gosocket | Ejemplo: Factura Electrónica |
| NetAmount | number | Monto neto | |
| FreeAmount | number | Monto | |
| TaxAmount | number | Monto de impuestos | |
| TotalAmount | number | Monto Total | |
| CurrencyType | String | Código del tipo de moneda en el que están expresados los valores del documento | Ejemplo: COP |
| SeriesNumber | String | Serie y folio del documento concatenados | |
| Series | String | Serie del documento | |
| Number | integer | Folio del documento en formato numerico | |
| NumberStr | String | Folio del documento en formato string | |
| DocumentSenderCode | String | ID Fiscal Emisor | Consultar tabla Estructura ID Fiscal |
| DocumentSenderName | String | Nombre del Emisor | |
| DocumentReceiverCode | String | ID Fiscal del Receptor | Consultar tabla Estructura ID Fiscal |
| DocumentReceiverName | String | Nombre del Receptor | |
| DocumentFinancialOwnerCode | String | ID del financiador | Consultar tabla Estructura ID Fiscal |
| DocumentFinancialOwnerName | String | Nombre del financiador | |
| FinancialDate | String | Fecha de financiación | aaaa-mm-ddThh:mm:ss |
| EstimatedPaymentDate | String | Fecha estimada de pago | aaaa-mm-ddThh:mm:ss |
| DocumentTimeStamp | String | Fecha de recepción en Gosocket | aaaa-mm-ddThh:mm:ss |
| AuthorityTimeStamp | String | Fecha de validación ante la entidad vertificadora | aaaa-mm-ddThh:mm:ss |
| SyncPoint | String | Usuario del sistema que envió el documento a Gosocket | UUID de 36 caracteres alfanuméricos xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
| DocumentTags | array | Etiquetas que contiene el documento | Ejemplo: "DocumentTags": [ { "Code": "AuthorityStatus", "TimeStamp": "2022-07-29T18:04:03.3120133", "Value": "2" } ] |
| TwoCheck | array | Resultado de las validaciones adicionales del módulo SmartSupply | Ejemplo: "TwoCheck": { "TwoCheckDocumentStatus": 3, "TwoCheckDocumentStatusDescription": "ACEPTADO", "TwoCheckReceiverDocumentStatus": 3, "TwoCheckReceiverInternalDocumentStatusDescription": "ACEPTADO", "Timestamp": "2022-07-02T23:08:07.6106945Z" } |
| Notes | array | Notas del documento | Ejemplo: "Notes": [ { "Mandatory": false, "Code": "FAJ73", "Note": " Notificación: Estructura código no valida", "TimeStamp": "2022-07-02T18:29:14.6451258Z", "Source": "DIAN" } ] |
| Offers | array | Ofertas del documento | |
| Fields | array | Información adicional | Ejemplo: "Fields": [ { "Code": "ORDENINTERNA", "Name": "Orden Interna", "Value": "COCCRPPE02", "ExternalId": "46a0810c-cbbe-44bd-8b38-7f736a416952", "Source": "ARESTREPO@GEO-PARK.COM", "IsValid": true, "EditingEnabled": false, "Flow": "smartsupply", "Timestamp": "2022-07-29T22:26:06.7719072Z", "Category": "Orden interna" } ] |
| Author | String | Usuario que creó el documento | null o correo |
| ContinuationToken | String | Token para pagin+C220:E225ar el resultado en caso de no responder todos en la consulta realizada | Ejemplo: [{"compositeToken":{"token":null,"range":{"min":"05C1E0","max":"05C1E2"}},"orderByItems":[{"item":"2022-07-29T23:04:03.3120133Z"}],"rid":"2nsFAKt-OBYtwgQAAACACQ==","skipCount":0,"filter":null}] |
Nota: Las URL de descarga de archivo xml y pdf se activan por empresa. Por lo tanto, para poder visualizarlas se debe solicitar su activación.
Características del método
- El método recupera la información del documento.
- Se puede consultar las veces que se requiera.
- Cuando no se encuentra información con los parámetros de consulta, el servicio responde:
{
"Documents": [],
"ContinuationToken": null
}- Cuando no se consulta por un Id de documento específico, el máximo de documentos que retorna la consulta es de 10 documentos.
- Los estados por los que ha pasado el documento se pueden ver en la sección de DocumentTags
| Valores DocumentTags (GetDocument) | ||
|---|---|---|
| Code | Descripción | Posibles Valores |
| AuthorityStatus | Estado ante la entidad tributaria | 00: Por enviar 01: Enviado 02: Aprobado (Validado) 03: Rechazado 04: Anulado |
| AuthorityFormatVersion | Versión del formato del XML para la entidad tributaria | 2.1 4.0 4.3 |
| ACD | Aceptación o Rechazo Comercial | A: Aceptado R: Rechazado |
| ARR | Acuse de Recibo | RF: Acuse Recibo FE ER: Envío Rechazado |
| ARM | Recibo mercadería | RM: Recibido |
| AttSC | Posee adjuntos para el emisor | t: True |
| AttRC | Posee adjuntos para el receptor | t: True |
| Audit | Contiene información de auditoria | t: True |
| Payment | Indica si el documento se encuentra pagado | MPP: Marcado como Pago Parcial MTP: Marcado como Pago Total |
| Division | División o grupo al que pertenece el documento | |
| subdivision | Subdivisión o subgrupo al que pertenece el documento | |
| BranchOffice | Centro de costos del documento | |
| Financed | Indica si el documento es financiado o anticipado | |
| TradeShiftTxId | ID que devuelve TradeShift al enviar el documento | |
| DistributionReceiver, DistributionSender, Distribution | Indica la distribución del documento | SD: Sin reglas de Distribución PD: Distribuido Parcialmente ED: Error de Distribución TD: Distribuido |
En la sección TwoCheck se puede ver el resultado de las validaciones del proceso de SmartSupply:
| Valores TwoCheck (GetDocument) | |
|---|---|
| Status | Description |
| 0 | Pendiente |
| 2 | Enviado |
| 3 | Aceptado |
| 4 | Rechazado |
-
En la sección Notes se pueden ver las notas asociadas al documento que pueden ser de diferente origen:
- Entidad Tributaria (DIAN, SII, SRI, SUNAT, PAC)
- Eventos Mercantiles
- Servidor de correo
- Servidor de correo Distribución
- Distribucion por Ftp/Sftp
- SmartSupply
- Gosocket