API REST – Documento soporte

Introducción

Este documento se realiza con el objetivo de presentar la documentación de los métodos creados para la emisión de documento de soporte en adquisiciones efectuadas a sujetos no obligados a expedir factura de venta o documento equivalente, a través de una API REST de integración.

Próposito

Con el fin de facilitar la integración con los comercios y su respectivo software administrativo de Facturación o ERP, se realiza el siguiente documento que muestra las acciones necesarias para la integración con el servicio y su correcto consumo.

Público destinatario

Este manual de usuario está dirigido a las personas que requieran realizar la administración o configuración para llevar a cabo la facturación desde su software administrativo de Facturación o ERP a través del servicio de integración de Olimpia.

Descripción del producto

El servicio web está elaborado en WCF Windows Communication Foundation de Microsoft para desarrollar aplicaciones orientadas a servicios.

Descripción técnica

AuthenticateWithoutCompany

Este método permite que se autentique un usuario de un comercio específico a través del servicio REST.

Parámetros de entrada

A continuación, se detallan los parámetros de entrada para consumir el método.

Este sería un json de ejemplo

Parámetros de salida

A continuación, se detallan los parámetros de salida del método:

NOTA: el método AuthenticateWithoutCompany no retorna un objeto. Sólo un string con el JWT, que se debe usar como Bearer Authentication. El siguiente es un ejemplo de la salida, cuando se autentica correctamente.

“eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoiY2FybG9zLm1hcnRpbmV6QG9saW1waWFpdC5jb20iLCJuYmYiOjE2NTkwMjIwNjEsImV4cCI6MTY1OTAyMzg2MSwiaWF0IjoxNjU5MDIyMDYxLCJpc3MiOiJodHRwczovL2FwcGZhY3R1cmFlbGVjdHJvbmljYS5vbGltcGlhaXQuY29tIiwiYXVkIjoiaHR0cHM6Ly9hcHBmYWN9dXJhZWxlY3Ryb25pY2Eub2xpbXBpYWl0LmNvbSJ9.dRepkc2sAeuTBPibGcjC4tx3axURAD-iL51orjEmci8”

Respuesta y mensajes

A continuación, se detallan los posibles mensajes que se pueden obtener al realizar la petición:

Createsupportdocument

Este método permite crear y enviar documento de soporte en adquisiciones efectuadas a sujetos no obligados a expedir factura de venta o documento equivalente a la DIAN a través del servicio REST. Si estas son aprobadas por la DIAN, se enviarán luego al adquiriente.

Parametros de entrada

A continuación, se detallan los parámetros de entrada para consumir el método.

Nota: si no se van a enviar datos, en los campos tipo arreglo, se debe enviar un arreglo vacío ([]). No se debe omitir el campo.

Parámetros de salida

A continuación, se detallan los parámetros de salida del método:

Respuesta y mensajes

A continuación, se detallan los posibles mensajes que se pueden obtener al realizar la petición:

CreateAdjustmentNote

Este método permite crear y enviar notas de ajuste a la DIAN, asociadas a un documento de soporte, a través del servicio REST. Si estas son aprobadas por la DIAN, se enviarán luego al proveedor.

Parámetros de entrada

A continuación, se detallan los parámetros de entrada para consumir el método.

Parámetros de salida

A continuación, se detallan los parámetros de salida del método:

Respuesta y mensajes

A continuación, se detallan los posibles mensajes que se pueden obtener al realizar la petición:

Listados de valores

Se han definido los listados de los posibles valores para los elementos XML obligatorios en los cuales se almacena un código que representa un dominio de negocio.

Tipos de detalle tributario

Tipos de identidad

Tipos de documento (emisión)

Tipos de personas

Tipo de operación

Tipos de régimen

Tipo de esquema

Cargos

Estados del documento con respecto a la DIAN

Tipos de moneda

Método de pago

Medio de pago

Precios de referencia

Tipos de descuento

Causas de nota de ajuste

Impuestos

Códigos de adicional XML

Formas de generación y transmisión

Anexos

JSON de ejemplo

{

“operationTypeCode”: “11”,

“invoiceTypeCode”: “05”,

“issueDate”: “2022-07-27”,

“expirationDate”: “2023-03-25T00:00:00”,

“prefix”: “SETP”,

“documentNumber”: “1234567890”,

/*”documentTypeCodeSupplier”: “13”,

“documentNumberSupplier”: “9876543210”,*/

“documentTypeCodeSupplier”: “31”,

“documentNumberSupplier”: “10234567890”,

“supplier”: {

“fullname”: “Proveedor ejemplo”,

“code”: “987654321012”,

“juridicalOrganizationCode”: “2”,

“regimenTypeCode”: “49”,

“PhoneNumber”: “30123456789”,

“tributaryDetail”: “01”,

“DocumentNumberCheck”: “7”,

“physicalLocation”: {

“countryCode”: “CO”,

“state”: “66”,

“city”: “001”,

“postalZone”: “1010110”,

“address”: “Dirección actualizada”

},

“fiscalLocation”: {

“countryCode”: “CO”,

“state”: “66”,

“city”: “001”,

“postalZone”: “1010110”,

“address”: “Dirección actualizada”

},

“email”: “jero@email.com”,

“users”: [

{

“fullName”: “nombres apellidos”,

“email”: “correo@email.com”,

“phoneNumber”: “31298765432”

}

],

“active”: true

},

“currencyCode”: “COP”,

“paymentMeanCode”: “3”,

“paymentMethodCode”: “2”,

/*”observations”: {

“observation1”: null,

“observation2”: “”,

“observation3”: “0.0”,

“observation4”: null

},*/

“items”: [

{

“description”: “Producto Doc Soporte”,

“quantity”: 2.00,

“priceAmount”: 7000000.00,

“note”: “Nota de producto”,

“schemeTypeCode”: “001”,

“scheme”: “False”,

“quantityCode”: “94”,

“brandName”: “a”,

“modelName”: “b”,

“invoicePeriod”: {

“startDate”: “2022-07-21”,

“descriptionCode”: 2

},

“subtotal”: 14000000.00,

“observations”: {

“observation1”: null,

“observation2”: null,

“observation3”: null,

“observation4”: null

},

“taxesAndRetentions”: [

{

“code”: “01”,

“baseG”: 14000000.00,

“factor”: 19,

“total”: 2660000.00

},

{

“code”: “05”,

“baseG”: 2660000.00,

“factor”: 2,

“total”: 53200.00

},

{

“code”: “06”,

“baseG”: 100000.00,

“factor”: 15,

“total”: 15000.00

}

],

“allowancesOrCharges”: [

{

“codeType”: “02”,

“amount”: 100000.00,

“codeAllowanceDIAN”: “11”,

“motive”: “Prueba Descuento cert ITEM”,

“observations”: “Observación Descuento item”

},

{

“codeType”: “01”,

“amount”: 100000.00,

“codeAllowanceDIAN”: “11”,

“motive”: “Prueba Cargo Cert ITEM”,

“observations”: “Observación Descuento item”

}

],

“mandateDocumentNumber”: null,

“mandateVerificationDigit”: null,

“additionalItemProperties”: [

{

“Name”: “01”,

“Value”: “RM01212”,

“ValueQuantity”: 50,

“UnitCode”: “KGM”

}

]

}

],

“total”: 16660000.00,

“subtotal”: 14000000.00,

“taxesTotal”: 2660000.00,

“note”: “prueba nota”,

“allowancesOrCharges”: [

{

“codeType”: “01”,

“amount”: 10000.00,

“motive”: “Cargo Cert general”,

“observations”: “Observación Descuento general”

},

{

“codeType”: “02”,

“amount”: 10000.00,

“codeAllowanceDIAN”: “11”,

“motive”: “Descuento Cert general”,

“observations”: “Observación Descuento general”

}

],

“sectorAdditionals”: {

“SectorName”: “aseguradoras”,

“AdditionalCollections”: []

}

}

Control de cambios

VERSIÓN

FECHA

DESCRIPCIÓN

1

2022-03-24

Creación del documento

2

2022-07-28

Ajuste a la Resolución vigente


Propiedad de Olimpia

El presente documento es de carácter confidencial y está protegido por las normas de derechos de autor, cualquier reproducción, distribución o modificación total o parcial a usuarios no autorizados o cualquier uso indebido de la información confidencial será considerado un delito conforme a lo establecido por el Código Penal y Leyes vigentes del estado Colombiano.