Saltar al contenido principal

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:

PRODUCCIÓNhttps://developers.gosocket.net/api/v1/Document/GetDocument
SANDBOXhttps://developers-sbx.gosocket.net/api/v1/Document/GetDocument
info

Tome 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ámetroTipoDescripciónValores permitidos
GlobalDocumentIdStringID 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
CountryDocumentIdStringIdentificador fiscal del documento a nivel país, conocido también como CUFE, CLAVE, UUID, IDVer tabla Estructura Country Document ID
ExternalIdStringID del documento en sistema externo
Country*StringCódigo del País de emisión del documentoar, bo, br, cl, co, cr, ec, gt, mx, pa, pe, py, do, sv, uy
DateFrom*StringFecha 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*StringFecha 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
ReceivedDateFromStringFecha 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
ReceivedDateToStringFecha 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*StringID Fiscal Emisor Campo obligatorio. En caso de no ser enviado, se emite el error Unautorized Action/ empresa no autorizadaConsultar tabla Estructura ID Fiscal
ReceiverCodeStringID Fiscal del ReceptorConsultar tabla Estructura ID Fiscal
DocumentTypeIdIntegerCodigo del tipo de documento en Gosocket (factura, nota, etc)1, 2, 3, 4, …
SeriesStringSerie del documento
NumberStringFolio del documento
SeriesNumberStringSerie y folio del documento concatenados
TwoCheckStatusSenderIntegerEstados del emisor con validaciones adicionales Smart Supply0: pendiente 2: enviado 3: aceptado 4: rechazado
TwoCheckStatusReceiverIntegerEstados del receptor con validaciones adicionales Smart Supply0: pendiente 2: enviado 3: aceptado 4: rechazado
Has OfferBooleanEstado de ofertas del documentoTrue: Tiene ofertas False: No tiene ofertas
OfferFinancialEntityCodeStringRUT de empresa que hizo la oferta00000000-0
DocumentTagValuesStringEtiquetas que contiene el documentoEjemplo:   "DocumentTagValues": {     "AuthorityStatus": "2"   }
ContainDocumentTagCodeBooleanIndicador de que el documento contenga la etiqueta definidaTrue: el documento contiene el código de etiqueta definida. False: el documento no contiene el código de etiqueta definida. Ejemplo: "ContainDocumentTagCode": {         "AttRC": true     }
ResultMaxItemCountIntegerCantidad 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
ContinuationTokenStringToken que página el resultado en caso de no haber respondido todos los documentos en la consulta anteriorEjemplo: [{"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

image-20240502-224706.png

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.

  1. Seleccione el tipo de método. En este caso, se debe seleccionar POST.
  2. Ingrese la URL del método.
  3. Ingrese los parámetros que se muestran en la tabla anterior con sus valores correspondientes.
  4. Presione Send.
GetDocument  (request)
ParámetroTipoDescripciónValores permitidos
GlobalDocumentIdStringID 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
CountryDocumentIdStringIdentificador fiscal del documento a nivel país, conocido también como CUFE, CLAVE, UUID, IDVer tabla Estructura Country Document ID
ExternalIdStringID del documento en sistema externo
Country*StringCódigo del País de emisión del documentoar, bo, br, cl, co, cr, ec, gt, mx, pa, pe, py, do, sv, uy
DateFrom*StringFecha 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*StringFecha 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
LastChangeFromStringFecha 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
LastChangeToStringFecha 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
ReceivedDateFromStringFecha 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
ReceivedDateToStringFecha 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*StringID Fiscal Emisor Campo obligatorio. En caso de no ser enviado, se emite el error Unautorized Action/ empresa no autorizadaConsultar tabla Estructura ID Fiscal
ReceiverCodeStringID Fiscal del ReceptorConsultar tabla Estructura ID Fiscal
DocumentTypeIdIntegerCodigo del tipo de documento en Gosocket (factura, nota, etc)1, 2, 3, 4, …
SeriesStringSerie del documento
NumberStringFolio del documento
SeriesNumberStringSerie y folio del documento concatenados
TwoCheckStatusSenderIntegerEstados del emisor con validaciones adicionales Smart Supply0: pendiente 2: enviado 3: aceptado 4: rechazado
TwoCheckStatusReceiverIntegerEstados del receptor con validaciones adicionales Smart Supply0: pendiente 2: enviado 3: aceptado 4: rechazado
Has OfferBooleanEstado de ofertas del documentoTrue: Tiene ofertas False: No tiene ofertas
OfferFinancialEntityCodeStringRUT de empresa que hizo la oferta00000000-0
DocumentTagValuesStringEtiquetas que contiene el documentoEjemplo:   "DocumentTagValues": {     "AuthorityStatus": "2"   }
ContainDocumentTagCodeBooleanIndicador de que el documento contenga la etiqueta definidaTrue: el documento contiene el código de etiqueta definida. False: el documento no contiene el código de etiqueta definida. Ejemplo: "ContainDocumentTagCode": {         "AttRC": true     }
ResultMaxItemCountIntegerCantidad 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
ContinuationTokenStringToken que página el resultado en caso de no haber respondido todos los documentos en la consulta anteriorEjemplo: [{"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

image-20240503-002321.png

image-20240503-002336.png

image-20240503-002423.png

image-20240503-002442.png

image-20240503-002506.png

image-20240503-002521.png

image-20240503-002533.png


Ejemplo de consulta de los tags value

image-20240503-005154.png

GetDocument  (response)
ParámetroTipoDescripciónValores permitidos
UrlPdfStringURL de descarga del archivo PDF generado a partir del documento"https://... "
UrlXmlStringURL de descarga del archivo XML tributario del documento"https://... "
GlobalDocumentIdStringID del documento en GosocketUUID de 36 caracteres alfanuméricos xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
CountryDocumentIdStringIdentificador fiscal del documento a nivel país, conocido también como CUFE, CLAVE, UUID, IDVer tabla Estructura Country Document ID
ExternalIdStringID del documento en sistema externo
CountryIdStringCódigo del País de emisión del documentoar, bo, br, cl, co, cr, ec, gt, mx, pa, pe, py, do, sv, uy
DateStringFecha de emisión del documentoaaaa-mm-ddThh:mm:ss
DocumentTypeIdintegerCodigo del tipo de documento en Gosocket (factura, nota, etc)1, 2, 3, 4, …
DocumentTypeNameStringNombre del tipo de documento en GosocketEjemplo: Factura Electrónica
NetAmountnumberMonto neto
FreeAmountnumberMonto
TaxAmountnumberMonto de impuestos
TotalAmountnumberMonto Total
CurrencyTypeStringCódigo del tipo de moneda en el que están expresados los valores del documentoEjemplo: COP
SeriesNumberStringSerie y folio del documento concatenados
SeriesStringSerie del documento
NumberintegerFolio del documento en formato numerico
NumberStrStringFolio del documento en formato string
DocumentSenderCodeStringID Fiscal EmisorConsultar tabla Estructura ID Fiscal
DocumentSenderNameStringNombre del Emisor
DocumentReceiverCodeStringID Fiscal del ReceptorConsultar tabla Estructura ID Fiscal
DocumentReceiverNameStringNombre del Receptor
DocumentFinancialOwnerCodeStringID del financiadorConsultar tabla Estructura ID Fiscal
DocumentFinancialOwnerNameStringNombre del financiador
FinancialDateStringFecha de financiaciónaaaa-mm-ddThh:mm:ss
EstimatedPaymentDateStringFecha estimada de pagoaaaa-mm-ddThh:mm:ss
DocumentTimeStampStringFecha de recepción en Gosocketaaaa-mm-ddThh:mm:ss
AuthorityTimeStampStringFecha de validación ante la entidad vertificadoraaaaa-mm-ddThh:mm:ss
SyncPointStringUsuario del sistema que envió el documento a GosocketUUID de 36 caracteres alfanuméricos xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DocumentTagsarrayEtiquetas que contiene el documentoEjemplo:   "DocumentTags": [            {  "Code": "AuthorityStatus",                     "TimeStamp": "2022-07-29T18:04:03.3120133",                     "Value": "2"    }     ]
TwoCheckarrayResultado de las validaciones adicionales del módulo SmartSupplyEjemplo: "TwoCheck":       {          "TwoCheckDocumentStatus": 3,         "TwoCheckDocumentStatusDescription": "ACEPTADO",         "TwoCheckReceiverDocumentStatus": 3,         "TwoCheckReceiverInternalDocumentStatusDescription": "ACEPTADO",         "Timestamp": "2022-07-02T23:08:07.6106945Z"     }
NotesarrayNotas del documentoEjemplo: "Notes":  [       {    "Mandatory": false,             "Code": "FAJ73",             "Note": " Notificación: Estructura código no valida",             "TimeStamp": "2022-07-02T18:29:14.6451258Z",             "Source": "DIAN"    }     ]
OffersarrayOfertas del documento
FieldsarrayInformación adicionalEjemplo: "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"     }      ]
AuthorStringUsuario que creó el documentonull o correo
ContinuationTokenStringToken para pagin+C220:E225ar el resultado en caso de no responder todos en la consulta realizadaEjemplo: [{"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)
CodeDescripciónPosibles Valores
AuthorityStatusEstado ante la entidad tributaria00: Por enviar 01: Enviado 02: Aprobado (Validado) 03: Rechazado 04: Anulado
AuthorityFormatVersionVersión del formato del XML para la entidad tributaria2.1 4.0 4.3
ACDAceptación o Rechazo ComercialA: Aceptado R: Rechazado
ARRAcuse de ReciboRF: Acuse Recibo FE ER: Envío Rechazado
ARMRecibo mercaderíaRM: Recibido
AttSCPosee adjuntos para el emisort: True
AttRCPosee adjuntos para el receptort: True
AuditContiene información de auditoriat: True
PaymentIndica si el documento se encuentra pagadoMPP: Marcado como Pago Parcial MTP: Marcado como Pago Total
DivisionDivisión o grupo al que pertenece el documento
subdivisionSubdivisión o subgrupo al que pertenece el documento
BranchOfficeCentro de costos del documento
FinancedIndica si el documento es financiado o anticipado
TradeShiftTxIdID que devuelve TradeShift al enviar el documento
DistributionReceiver, DistributionSender, DistributionIndica la distribución del documentoSD: 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)
StatusDescription
0Pendiente
2Enviado
3Aceptado
4Rechazado
  • 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