0% encontró este documento útil (0 votos)
107 vistas43 páginas

API Integración Factura Electronica

Este documento especifica la API para integrar facturas electrónicas. Detalla los métodos para autenticación, inserción de facturas, notas de débito, notas de crédito, consultar estado de documentos y obtener documentos XML. Se han realizado varias actualizaciones para ajustar la API a las nuevas necesidades del negocio y funcionalidades como obtener facturas de muestra.

Cargado por

Veimar Celis
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
107 vistas43 páginas

API Integración Factura Electronica

Este documento especifica la API para integrar facturas electrónicas. Detalla los métodos para autenticación, inserción de facturas, notas de débito, notas de crédito, consultar estado de documentos y obtener documentos XML. Se han realizado varias actualizaciones para ajustar la API a las nuevas necesidades del negocio y funcionalidades como obtener facturas de muestra.

Cargado por

Veimar Celis
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 43

Documento de especificación de API

(Integración factura electrónica)

Version Fecha Autor Descripción

1.0 05-Sep-2016 David Saavedra Presentación inicial

1.1 20-May-2017 David Saavedra Se ajusta el documento dado las


nuevas necesidades del negocio

1.2 03-Ago-2017 Arturo Polanco Se ajusta el documento dado las


nuevas necesidades del negocio

1.3 01 – Feb - 2018 Arturo Polanco Se adiciona el método “Get Dummy


Invoice”

1.4 30 – Mar - 2018 Susana Silva Se modifica el método “Credit Note


Insertion”
Index
Contenido
1. login.................................................................................................................................... 3
Request .................................................................................................................................. 3
Response ............................................................................................................................... 3
2. Invoice Insertion ................................................................................................................. 4
Request .................................................................................................................................. 4
Response ............................................................................................................................... 5
3. Debit note Insertion ............................................................................................................ 8
Request .................................................................................................................................. 8
Response ............................................................................................................................... 9
4. Credit Note Insertion ..........................................................................................................11
Request .................................................................................................................................11
Response ..............................................................................................................................12
5. Get Document Status ........................................................................................................16
Request .................................................................................................................................16
Response ..............................................................................................................................17
6. Get Document XML ...........................................................................................................17
Request .................................................................................................................................17
Response ..............................................................................................................................18
7. Get Dummy Invoice ...........................................................................................................30
Request .................................................................................................................................30
Response ..............................................................................................................................30
Tags API ...............................................................................................................................33
Códigos de Estado ................................................................................................................43
Métodos
1. login
Por medio de este método, el usuario podrá autenticarse en el api de misfacturas para realizar
los procedimientos que desee con las empresas autorizadas. Como resultado de este
procedimiento el usuario recibirá un token de autenticación válido durante las siguientes 24
horas. Este deberá ser entregado en CADA petición precedido por la palabra clave misfacturas.

Ejemplo: “misfacturas <<token>>”

Request
Method URL

POST https://misfacturas.cenet.ws/integrationapi/api/login

Type Params Values

POST username string


POST password string

Authorization
El Token de Autorización debe ser enviado de ser enviada en todas las solicitudes de cliente

Response
Status Response

200
“token”

auth_key (string) - todos los llamados al API deben tener esta llave

401 En caso de que el usuario o la contraseña sea inválida el usuario recibirá un


Unauthorized
2. Invoice Insertion
Ingresa una prefactura en la plataforma.

Request
Method URL

POST https://misfacturas.cenet.ws/integrationapi/api/insertinvoice

Type Params Values

HEADER Authorization string


BODY(POST) Invoice Json(Invoice)
POST SchemaID Int
POST IDNumber String
POST TemplateID Int

Authorization
Revisar las respuestas de https://misfacturas.cenet.ws/integrationapi/api/login/

invoice
Factura a agregar

SchemaID
Tipo de documento de la empresa sobre la cual se va a realizar el procedimiento

IDNumber
Numero de documento de la empresa sobre la cual se va a realizar el procedimiento

TemplateID
Código del tipo de plantilla que contendrá la factura. Si no se entrega este parámetro, el
sistema entenderá que es una plantilla genérica.

IMPORTANTE: en caso de no conocer la estructura Json de la plantilla a utilizar, cosulte el


método “Get Dummy Invoice” para obtener dicha estructura.

NOTA: La empresa debe realizar la autorización del usuario para realizar procedimientos por
medio del API. Esta actividad se debe realizar a través de misfacturas.com.co en el módulo de
interoperabilidad.
Response
Status Response

200 Retorna un identificador único de la factura que fue agregada

Ejemplo de la petición
{
"Customer_Information": {
"IdentificationType": 13,
"Identification": 1235,
"DV": 0,
"PartyTaxLevelCode": 2,
"PersonTypeID": 1,
"RegistrationName": "Prueba API",
"PersonFirstName": null,
"PersonMiddleName": null,
"PersonFamilyName": null,
"PersonFamilyName2": null,
"CityID": 12688,
"AddressLine": "Calle 45",
"Telephone": 3655555,
"Email": "[email protected]",
"WebSiteURI":"www.api.com"
},
"Authorization_Information": {
"InvoiceAuthorizationNumber": 2154878788,
"PreinvoiceNumber": 548848487,
"DaysOff": 30
},
"Item_Information": [
{
"ItemCode": 45551,
"Name": "Pantalla",
"Quantity": 1,
"Price": 3500,
"Amount": 3500,
"MeasureUnitCode": null,
"AdditionalItemPropertyList": null
"TaxesInformation": [
{
"Id": 1,
"TaxEvidenceIndicator": false,
"Percent": 19,
"TaxableAmount": 100,
"TaxAmount": 1000
}
],
}
],
"TaxesInformation": [
Status Response

{
"Id": 0,
"TaxEvidenceIndicator": false,
"Percent": 0,
"TaxableAmount": 0,
"TaxAmount": 0
}
],
"Payment_Summary": {
"PaymentTypeID": 10,
"PaymentMethodNote": "Nada en especial",
"CurrencyCode": "COP"
},
"Payment_Information": {
"LineExtensionAmount": 3500,
"TaxExclusiveAmount": 3500,
"PayableAmount": 3500
},
"Invoice_Note": {
"Note": null
}
}

Ejemplo de la respuesta es:


{
"DocumentId": <Document_id>
}

400 {"error":"El tipo de documento del cliente es obligatorio”}

400 {"error":"El tipo de documento del cliente debe ser numérico”}

400 {"error":"El número de identificación del cliente es obligatorio”}

400 {"error":"El tipo de régimen tributario del cliente es obligatorio”}

400 {"error":"El tipo de régimen tributario del cliente debe ser numérico”}

400 {"error":"El tipo de persona asociado al cliente es obligatorio”}

400 {"error":"El tipo de persona asociado al cliente debe ser numérico”}

{"error":"La razón social del cliente es obligatoria si el tipo de


400 persona es ‘Jurídica’”}

{"error":"El primer nombre del cliente es obligatorio si el tipo de


400 persona es ‘Natural’”}
Status Response

{"error":"El primer apellido del cliente es obligatorio si el tipo de


400 persona es ‘Natural’”}

400 {"error":"La ciudad del cliente es obligatoria”}

400 {"error":"El código de la ciudad debe ser numérico”}

400 {"error":"El departamento del cliente es obligatoria”}

400 {"error":"El código del departamento debe ser numérico”}

400 {"error":"La dirección del cliente es obligatoria”}

400 {"error":"El teléfono del cliente debe ser numérico”}

400 {"error":"El número de resolución es obligatorio”}

{"error":" - El número de prefactura (ID generado por el software del


400 Emisor) es obligatorio”}

{"error":"El número de días de vencimiento de la factura debe ser


400 numérico”}

400 {"error":"El código del prod/serv es obligatorio”}

400 {"error":"El nombre del prod/serv es obligatorio”}

{"error":"El precio unitario del prod/serv con código <<código>> debe


400 ser obligatorio”}

{"error":" El precio unitario del prod/serv con código <<código>> debe


400 ser numérico”}

{"error":" El valor total de la línea del prod/serv con código


400 <<código>> debe ser obligatorio”}

{"error":"El valor total de la línea del prod/serv con código


400 <<código>> debe ser numérico”}

{"error":"El campo "clase Impuesto" debe ser diligenciado si otros


400 campos del Impuesto/Retención han sido diligenciados”}

{"error":"El campo "Tipo" debe ser diligenciado si otros campos del


400 Impuesto/Retención han sido diligenciados”}

{"error":"El campo "Porcentaje" debe ser diligenciado si otros campos


400 del Impuesto/Retención han sido diligenciados”}

400 {"error":"El porcentaje del impuesto/retención debe ser numérico”}

{"error":"El campo "Valor Gravable" debe ser diligenciado si otros


400 campos del Impuesto/Retención han sido diligenciados”}

400 {"error":"El valor gravable del impuesto/retención debe ser numérico”}


Status Response

{"error":"El campo "Valor Impuesto/Retención" debe ser diligenciado si


400 otros campos del Impuesto/Retención han sido diligenciados”}

400 {"error":"El valor gravable del impuesto/retención debe ser numérico”}

400 {"error":"El método de pago es obligatorio”}

400 {"error":"El subtotal de la factura es obligatorio”}

400 {"error":"El subtotal de la factura debe ser numérico”}

400 {"error":"El total de los impuestos es obligatorio”}

400 {"error":"El total de los impuestos debe ser numérico”}

400 {"error":"El total de la factura es obligatorio”}

400 {"error":"El total de la factura debe ser numérico”}

401 Unauthorized

500 {"error":"Lo sentimos se ha presentado un problema."}

IMPORTANTE: para reportar “ReteIVA” y “Rete ICA” se debe hacer en el arreglo


“TaxesInformation” correspondiente a la factura y no al arreglo referente al ítem.

3. Debit note Insertion


Inserta una nueva nota débito

Request
Method URL

POST https://misfacturas.cenet.ws/integrationapi/api/insertdebitnote
Type Params Values

HEADER Authorization string


BODY(POST) debitnote Json(Invoice)
POST SchemaID Int
POST IDNumber string

Authorization
Revisar las respuestas de https://misfacturas.cenet.ws/integrationapi/api/login/

debitNote
Nota débito a insertar en el sistema y enviar a la DIAN

SchemaID
Tipo de documento de la empresa sobre la cual se va a realizar el procedimiento

IDNumber
Numero de documento de la empresa sobre la cual se va a realizar el procedimiento

NOTA: La empresa debe realizar la autorización del usuario para realizar procedimientos por
medio del API. Esta actividad se debe realizar a través de misfacturas.com.co en el módulo de
interoperabilidad

Response
Status Response

200 Retorna un identificador único de la nota débito que fue agregada

Ejemplo de la petición
{
"Invoice_Information": {
"Cufe": “1b306235a2582c86660a0f38121439dfb73d6a12”
},
"Note_Information": {
"Id": 21458,
"ResponseCode":4,
"Discount": 0,
"Interest": 0
},
"Item_Information": [
{
"ItemCode": 21848,
"QuantityBack": 0,
Status Response

"Price": 3200,
"Amount": 3200
}
],
"Taxes_Information": [
{
"Id": 0,
"TaxEvidenceIndicator": false,
"Percent": 0,
"TaxableAmount": 0,
"TaxAmount": 0
}
],
"Payment_Summary": {
"LineExtensionAmount": 0,
"TaxExclusiveAmount": 0,
"PayableAmount": 0
},
"Note_Concept": {
"Note": null
}
}

Ejemplo de la respuesta es:


{
"DocumentId": <Document_id>
}

400 {"error":"El CUFE asociado a la factura es obligatorio"}

400 {"error":"El número de nota es obligatorio"}

400 {"error":"El concepto de nota es obligatorio"}

400 {"error":"El concepto de la nota debe ser numérico"}

400 {"error":"El porcentaje de intereses debe ser numérico"}

400 {"error":"El precio unitario real debe ser numérico"}

400 {"error":"El precio unitario real debe ser numérico"}

400 {"error":"El valor de la línea debe ser numérico"}

400 {"error":"El campo "clase Impuesto" debe ser diligenciado si otros


campos del Impuesto/Retención han sido diligenciados"}

400 {"error":"El campo "Tipo" debe ser diligenciado si otros campos del
Status Response

Impuesto/Retención han sido diligenciados"}

400 {"error":"El campo "Porcentaje" debe ser diligenciado si otros campos


del Impuesto/Retención han sido diligenciados"}

400 {"error":"El porcentaje del impuesto/retención debe ser numérico"}

400 {"error":"El campo "Valor Gravable" debe ser diligenciado si otros


campos del Impuesto/Retención han sido diligenciados"}

400 {"error":"El valor gravable del impuesto/retención debe ser numérico"}

400 {"error":"El campo "Valor Impuesto/Retención" debe ser diligenciado si


otros campos del Impuesto/Retención han sido diligenciados"}

400 {"error":"El valor del impuesto/retención debe ser numérico"}

400 {"error":"El subtotal de la nota es obligatorio"}

400 {"error":"El subtotal de la nota debe ser numérico"}

400 {"error":"El total de los impuestos es obligatorio"}

400 {"error":"El total de los impuestos debe ser numérico"}

400 {"error":"El total de la nota es obligatorio"}

400 {"error":"El total de la nota debe ser numérico"}

400 {"error":"La razón de la creación de la nota es obligatoria"}

401 {"error":"Unauthorized"}

500 {"error":"Lo sentimos se ha presentado un problema."}

4. Credit Note Insertion

Request

Method URL

POST https://misfacturas.cenet.ws/integrationapi/api/insertcreditnote
Type Params Values

HEADER Authorization string


BODY(POST) creditNote Json(Invoice)
POST SchemaID Int
POST IDNumber string

Authorization
Revisar las respuestas de https://misfacturas.cenet.ws/integrationapi/api/login/

creditNote
Nota crédito a ser insertada en el sistema y enviada a la Dian

SchemaID
Tipo de documento de la empresa sobre la cual se va a realizar el procedimiento

IDNumber
Numero de documento de la empresa sobre la cual se va a realizar el procedimiento

NOTA: La empresa debe realizar la autorización del usuario para realizar procedimientos por
medio del API. Esta actividad se debe realizar a través de misfacturas.com.co en el módulo de
interoperabilidad

Response
Status Response

200 Retorna un identificador único de la nota crédito que fue agregada

Ejemplo de la petición
{
"Invoice_Information": [
{
"Cufe": "90cf864a5bf736a0bfa0113e3572ae2bf923a1ac",
"IssueDate": "2018-05-16T08:08:15.35"
}
],
"Note_Information": {
"Id": "N123",
"ResponseCode": 2,
Status Response

"CurrencyCode": "COP",
"Customer_Information": {
"IdentificationType": 31,
"Identification": "8032454066",
"DV": 0,
"PartyTaxLevelCode": 2,
"PersonTypeID": 1,
"RegistrationName": "Empresa SAS",
"PersonFirstName": null,
"PersonMiddleName": null,
"PersonFamilyName": null,
"PersonFamilyName2": null,
"CityID": "05001",
"RegionID": "05",
"AddressLine": "Calle 123 No. 45 - 67",
"Telephone": "1234567",
"Email": "[email protected]",
"WebSiteURI": "www.aaa.com"
}
},
"Item_Information": [
{
"ItemCode": "0001",
"Description": "Producto 1",
"Quantity": 10,
"Price": 100000.00,
"Amount": 1000000.00
}
],
"Taxes_Information": [
{
"Id": 1,
"TaxEvidenceIndicator": false,
"Percent": 19,
"TaxableAmount": 1000000.00,
"TaxAmount": 190000.00
}
],
"Payment_Summary": {
"LineExtensionAmount": 1000000.00,
"TaxExclusiveAmount": 190000.00,
"PayableAmount": 1190000.00
},
"Note_Concept": {
"Note": "Se genera esta nota crédito para la anulación de la correspondiente factura, debido a que
la mercancía no fue recibida por el cliente"
}
}
Status Response

Ejemplo de la respuesta es:

{
"DocumentId": <Document_id>
}

400 {"error":"El CUFE asociado a la factura es obligatorio"}


*Este error únicamente aplica si se está reportando una factura asociada
a la nota

400 {"error":"La fecha de expedición de la factura es obligatoria"}


*Este error únicamente aplica si se está reportando una factura asociada
a la nota

400 {"error":"El número de nota es obligatorio"}

400 {"error":"El concepto de nota es obligatorio"}

400 {"error":"El concepto de la nota debe ser numérico"}

400 {"error":"El tipo de documento del cliente es obligatorio"}

400 {"error":"El tipo de documento del cliente debe ser numérico"}

400 {"error":"El número de identificación del cliente es obligatorio"}

400 {"error":"El tipo de régimen tributario del cliente es obligatorio"}

400 {"error":"El tipo de régimen tributario del cliente debe ser numérico"}

400 {"error":"El tipo de persona asociado al cliente es obligatorio"}

400 {"error":"El tipo de persona asociado al cliente debe ser numérico"}

{"error":"La razón social del cliente es obligatoria si el tipo de


400 persona es ‘Jurídica’"}

{"error":"El primer nombre del cliente es obligatorio si el tipo de


400 persona es ‘Natural’"}

{"error":"El primer apellido del cliente es obligatorio si el tipo de


400 persona es ‘Natural’"}

400 {"error":"La ciudad del cliente es obligatoria"}

400 {"error":"El código de la ciudad debe ser numérico"}

400 {"error":"El departamento del cliente es obligatorio"}

400 {"error":"El código del departamento debe ser numérico"}


Status Response

400 {"error":"La dirección del cliente es obligatoria"}

400 {"error":"El correo electrónico del cliente es obligatorio"}

{"error":"El código del prod/serv es obligatorio"}


400 *Este error únicamente aplica si se está reportando un producto o
servicio asociada a la nota

{"error":"El nombre del prod/serv con código <<código>> es obligatorio"}


400 *Este error únicamente aplica si se está reportando un producto o
servicio asociada a la nota

{"error":"La cantidad del prod/serv con código <<código>> es


obligatorio"}
400 *Este error únicamente aplica si se está reportando un producto o
servicio asociada a la nota

{"error":"La cantidad del prod/serv con código <<código>> debe ser


400 numérico"}

{"error":"El precio unitario del prod/serv con código <<código>> debe


ser obligatorio"}
400 *Este error únicamente aplica si se está reportando un producto o
servicio asociada a la nota

{"error":" El precio unitario del prod/serv con código <<código>> debe


400 ser numérico"}

{"error":" El valor total de la línea del prod/serv con código


<<código>> debe ser obligatorio"}
400 *Este error únicamente aplica si se está reportando un producto o
servicio asociada a la nota

{"error":"El valor total de la línea del prod/serv con código


400 <<código>> debe ser numérico"}

{"error":"El campo "clase Impuesto" debe ser diligenciado si otros


400 campos del Impuesto/Retención han sido diligenciados”}

{"error":"El campo "Tipo" debe ser diligenciado si otros campos del


400 Impuesto/Retención han sido diligenciados”}

{"error":"El campo "Porcentaje" debe ser diligenciado si otros campos


400 del Impuesto/Retención han sido diligenciados”}

400 {"error":"El porcentaje del impuesto/retención debe ser numérico”}

{"error":"El campo "Valor Gravable" debe ser diligenciado si otros


400 campos del Impuesto/Retención han sido diligenciados”}

400 {"error":"El valor gravable del impuesto/retención debe ser numérico”}

{"error":"El campo "Valor Impuesto/Retención" debe ser diligenciado si


400 otros campos del Impuesto/Retención han sido diligenciados”}

400 {"error":"El valor gravable del impuesto/retención debe ser numérico”}


Status Response

400 {"error":"El subtotal de la factura es obligatorio”}

400 {"error":"El subtotal de la factura debe ser numérico”}

400 {"error":"El total de los impuestos es obligatorio”}

400 {"error":"El total de los impuestos debe ser numérico”}

400 {"error":"El total de la factura es obligatorio”}

400 {"error":"El total de la factura debe ser numérico”}

400 {"error":"La razón de la factura debe ser numérico”}

401 Unauthorized

500 {"error":"Lo sentimos se ha presentado un problema."}

5. Get Document Status


Obtiene la información del estado de una factura o nota

Request
Method URL

POST https://misfacturas.cenet.ws/integrationapi/api/GetDocument

Type Params Values

HEAD Authorization string


URL_PARAM <invoice_id> uniqueIdentifier

Authorization
Revisar las respuestas de https://misfacturas.cenet.ws/integrationapi/api/login

invoice_id
Id de la factura a consultar.
Response
Status Response

200 Objeto Json con la respuesta del estado de la factura

Ejemplo de la petición
{
"DocumentId":"48655194-4868-41da-930d-a1751e2ace8b",
"DocumentType":1
}

Ejemplo de la respuesta es:


{
"DocumentStatus": 1,
"StatusDate": 2017/01/01 – 13:57:50,
"CUFE": ed296ca29ce9e886b2b6b3f2d6ea189eca1ebba1 <<este campo se entregará en el
response cuando se trate de una Factura que esté emitida>>,
"InvoiceNumber": 5566 <<este campo se entregará cuando se trate de una factura que esté
emitida>>,
"NoteNumber": NC123 <<este campo se entregará cuando se trate de una Nota>>,
"CustomerParty": Almacenes Éxito,
"CustomerPartyID": NIT - 880956889,
"PayableAmount": 300000,
}

400 {"error":" El número de identificación del documento electrónico es


obligatorio "}

400 {"error":" El tipo de documento electrónico es obligatorio"}

400 {"error":" El tipo de documento electrónico debe ser numérico"}

401 {"error":"Unauthorized"}

500 {"error":"Lo sentimos se ha presentado un problema."}

6. Get Document XML


Obtener XML de una factura, nota crédito o nota débito.

Request
Method URL

POST https://misfacturas.cenet.ws/integrationapi/api/getdocumentXML
Type Params Values

HEADER Authorization string


POST SchemaID Int
POST IDNumber String
POST DocumentType Int
POST DocumentID String

Authorization
Revisar las respuestas de https://misfacturas.cenet.ws/integrationapi/api/login/

SchemaID
Tipo de documento de la empresa sobre la cual se va a realizar el procedimiento

IDNumber
Número de documento de la empresa sobre la cual se va a realizar el procedimiento

DocumentType
Tipo de documento electrónico (Factura, Nota Crédito o Nota Débito) del cual se quiere obtener
el XML.

DocumentID
Identificación del documento electrónico del cual se quiere obtener el XML.

NOTA: La empresa debe realizar la autorización del usuario para realizar procedimientos por
medio del API. Esta actividad se debe realizar a través de misfacturas en el módulo de
interoperabilidad

Response
Status Response

200 Retorna un identificador único de la factura que fue agregada

Ejemplo de la petición
{
"DocumentType": 1,
"DocumentID": 1235
}
Status Response

Ejemplo de la respuesta es:


{
"XMLresult": “<?xml version="1.0" encoding="UTF-8"
standalone="no"?>
<fe:Invoice
xmlns:fe="http://www.dian.gov.co/contratos/facturaelectronica/v1"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggre
gateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasic
Components-2"
xmlns:clm54217="urn:un:unece:uncefact:codelist:specification:54217:
2001"
xmlns:clm66411="urn:un:unece:uncefact:codelist:specification:66411:
2001"
xmlns:clmIANAMIMEMediaType="urn:un:unece:uncefact:codelist:specific
ation:IANAMIMEMediaType:2003"
xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExten
sionComponents-2"
xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDa
tatypes-2"
xmlns:sts="http://www.dian.gov.co/contratos/facturaelectronica/v1/S
tructures"
xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedData
TypesSchemaModule:2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
xsi:schemaLocation="http://www.dian.gov.co/contratos/facturaelectro
nica/v1 ../xsd/DIAN_UBL.xsd
urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchema
Module:2 ../../ubl2/common/UnqualifiedDataTypeSchemaModule-2.0.xsd
urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2
../../ubl2/common/UBL-QualifiedDatatypes-2.0.xsd">
<ext:UBLExtensions>
<ext:UBLExtension>
<ext:ExtensionContent>
<sts:DianExtensions>
<sts:InvoiceControl>

<sts:InvoiceAuthorization>469910</sts:InvoiceAuthorization>
<sts:AuthorizationPeriod>
<cbc:StartDate>2013-12-15</cbc:StartDate>
<cbc:EndDate>2015-12-15</cbc:EndDate>
</sts:AuthorizationPeriod>
<sts:AuthorizedInvoices>
<sts:Prefix>459</sts:Prefix>
<sts:From>10280906</sts:From>
Status Response

<sts:To>19999999</sts:To>
</sts:AuthorizedInvoices>
</sts:InvoiceControl>
<sts:InvoiceSource>
<cbc:IdentificationCode listAgencyID="6"
listAgencyName="United Nations Economic Commission for Europe"
listSchemeURI="urn:oasis:names:specification:ubl:codelist:gc:Countr
yIdentificationCode-2.0">CO</cbc:IdentificationCode>
</sts:InvoiceSource>
<sts:SoftwareProvider>
<sts:ProviderID schemeAgencyID="195"
schemeAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas
Nacionales)">700085371</sts:ProviderID>
<sts:SoftwareID schemeAgencyID="195"
schemeAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas
Nacionales)">f79992f5-983e-40d0-8049-094f081211da</sts:SoftwareID>
</sts:SoftwareProvider>
<sts:SoftwareSecurityCode schemeAgencyID="195"
schemeAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas
Nacionales)">8295dcd6334a8d64d8495efdfddaaa1237020e6e0be5a4c3356c95
02b4bc88740e2661a899ddff5b5a3b0350a98e5d36</sts:SoftwareSecurityCod
e>
</sts:DianExtensions>
</ext:ExtensionContent>
</ext:UBLExtension>
<ext:UBLExtension>
<ext:ExtensionContent>
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
Id="xmldsig-e7b5d982-29c7-4169-a97e-526173f354ef">
<ds:SignedInfo>
<ds:CanonicalizationMethod
Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<ds:SignatureMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<ds:Reference Id="xmldsig-e7b5d982-29c7-4169-a97e-
526173f354ef-ref0" URI="">
<ds:Transforms>
<ds:Transform
Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
</ds:Transforms>
<ds:DigestMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<ds:DigestValue>rYj33os8GzcfvFntClVf0caUYHc=</ds:DigestValue>
</ds:Reference>
Status Response

<ds:Reference URI="#xmldsig-87d128b5-aa31-4f0b-8e45-
3d9cfa0eec26-keyinfo">
<ds:DigestMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<ds:DigestValue>0iE/FGZgLfbnV9DhUaDBBVPjn44=</ds:DigestValue>
</ds:Reference>
<ds:Reference
Type="http://uri.etsi.org/01903#SignedProperties" URI="#xmldsig-
e7b5d982-29c7-4169-a97e-526173f354ef-signedprops">
<ds:DigestMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<ds:DigestValue>e8gxYZKNKVmcwlOqMXD1CGczdVo=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue Id="xmldsig-e7b5d982-29c7-4169-a97e-
526173f354ef-sigvalue">

R6yO9YoAtEbnots6kbvR85bxZOCocUKVG97KJ+jRbMFEfxEdb3lG8jx6c2NnRCXxoL9
B8cnCg2Vq

H4FpXVthHXtYvDZGUIm3GmrwLZHD4MT2d6ktNHvyVNkKAg6JmwJ1UbC8SItWsDyeB3b
OX/yEYEFy

CsF730iW7acPEofVZbDMOV01oZ6dK4iIqf30DztxXMNu/Z2RWPcu6OLdo9jJzaGqMZx
LK8DmCnaw

w2kBujXZflagoS1irgKXftK/5+yiAe2YcV640B6YyAJiAyeKrYIFRvW91jyZYhdZPnn
D9THGptis
ir7d8XLhr0MViIzUf1fLPdjyfldFbAz7sOVPLg==
</ds:SignatureValue>
<ds:KeyInfo Id="xmldsig-87d128b5-aa31-4f0b-8e45-
3d9cfa0eec26-keyinfo">
<ds:X509Data>
<ds:X509Certificate>

MIIILDCCBhSgAwIBAgIIfq9P6xyRMBEwDQYJKoZIhvcNAQELBQAwgbQxIzAhBgkqhki
G9w0BCQEW

FGluZm9AYW5kZXNzY2QuY29tLmNvMSMwIQYDVQQDExpDQSBBTkRFUyBTQ0QgUy5BLiB
DbGFzZSBJ

STEwMC4GA1UECxMnRGl2aXNpb24gZGUgY2VydGlmaWNhY2lvbiBlbnRpZGFkIGZpbmF
sMRMwEQYD
Status Response

VQQKEwpBbmRlcyBTQ0QuMRQwEgYDVQQHEwtCb2dvdGEgRC5DLjELMAkGA1UEBhMCQ08
wHhcNMTMw

NDE2MjIyMzUwWhcNMTYwODEzMjIyMzUwWjCCASQxHTAbBgNVBAkTFENhbGxlIEZhbHN
hIE5vIDEy

IDM0MT0wOwYJKoZIhvcNAQkBFi5wZXJzb25hX25hdHVyYWxfcHJ1ZWJhc0BlbXByZXN
hcGFyYXBy

dWViYXMuY29tMRswGQYDVQQDExJVc3VhcmlvIGRlIFBydWViYXMxETAPBgNVBAUTCDE
xMTExMTEx

MV0wWwYDVQQLE1RDZXJ0aWZpY2FkbyBQZXJzb25hIG5hdHVyYWwgRW1pdGlkbyBwb3I
gQW5kZXMg

U0NEIEF2LiBDYXJyZXJhIDQ1IE5vIDEwMyAtIDM0IE9GLiAyMDUxFDASBgNVBAcTC0J
1Y2FyYW1h

bmdhMRIwEAYDVQQIEwlTYW50YW5kZXIxCzAJBgNVBAYTAkNPMIIBIjANBgkqhkiG9w0
BAQEFAAOC

AQ8AMIIBCgKCAQEAuVkIDKtLVyEQhVGvaaJZXq6YU1yLC0VQEptM7mUfwR849CW+pGe
FsWlkvaNJ

PiKZHajDrd2EWs7LMowLkBMhS0vwV9cH7G65GcLbvs5pc7ZtUt5Fq7vTmk0RXp1fjh+
mbKkR/SdG

a/fYxf8zVYhYSUbYNfFwvN5ZzAkj+V1GflpPostK8CkR5jMdRdNPkQQpCUMwV9M3FvZ
iLWBKHXQi

kYm5Ed3suR2a6G8nWTosu8zbRLVXlmBG81tGL2oBemMfePMU3thNHVn2T9vNp1tJPwy
B9+npU0qe

4kZvyu3/xMB1a28ZgZ7fDNYhuDQ6/DYdCoBVFbrvWCAuVSJcC+RpEQIDAQABo4ICzTC
CAskwHQYD

VR0OBBYEFAaSNjJJPImFjE/cyw4JVdqO+VcRMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBg
wFoAUqEu0

9AuntlvUoCiFEJ0EEzPEp/cwggHFBgNVHSAEggG8MIIBuDCCAbQGDSsGAQQBgfRIAQI
BAQIwggGh

MIIBWgYIKwYBBQUHAgIwggFMHoIBSABMAGEAIAB1AHQAaQBsAGkAegBhAGMAaQDzAG4
AIABkAGUA
Status Response

IABlAHMAdABlACAAYwBlAHIAdABpAGYAaQBjAGEAZABvACAAZQBzAHQAYQAgAHMAdQB
qAGUAdABh

ACAAYQAgAGwAYQBzACAAUABvAGwA7QB0AGkAYwBhAHMAIABkAGUAIABDAGUAcgB0AGk
AZgBpAGMA

YQBkAG8AIABkAGUAIABQAGUAcgBzAG8AbgBhACAATgBhAHQAdQByAGEAbAAgACgAUAB
DACkAIAB5

ACAAUAByAOEAYwB0AGkAYwBhAHMAIABkAGUAIABDAGUAcgB0AGkAZgBpAGMAYQBjAGk
A8wBuACAA

KABEAFAAQwApACAAZQBzAHQAYQBiAGwAZQBjAGkAZABhAHMAIABwAG8AcgAgAEEAbgB
kAGUAcwAg

AFMAQwBEAC4wQQYIKwYBBQUHAgEWNWh0dHA6Ly93d3cuYW5kZXNzY2QuY29tLmNvL2R
vY3MvRFBD

X0FuZGVzU0NEX1YxLjQucGRmMEYGA1UdHwQ/MD0wO6A5oDeGNWh0dHA6Ly93d3cuYW5
kZXNzY2Qu

Y29tLmNvL2luY2x1ZGVzL2dldENlcnQucGhwP2NybD0xMA4GA1UdDwEB/wQEAwIF4DA
dBgNVHSUE

FjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwOQYDVR0RBDIwMIEucGVyc29uYV9uYXR1cmF
sX3BydWVi

YXNAZW1wcmVzYXBhcmFwcnVlYmFzLmNvbTANBgkqhkiG9w0BAQsFAAOCAgEAwvPxwHK
tiywYT/BU

X2Anq3fzwD57ooMPewnSQXJs1pSuVbJSjmakdjKmJngwpaSx6z+LOB4PniP4BRdygxA
3RSuFtlQo

RbYv8FqMvoUzHJLPO+DH6SZklDyMcanFiAPuMGSvjMZVfeLjH+2Ut1/iM/kipRnevND
qVxjj9xZs

rOoSWSuOv+r5pQE4A3G74lZD30iHS702g0ylNjgVNhdCnolHeoli6qYWBTORV9yIIzS
ml9ALkSeN

Sg92tSF+GDdquIfiI1U2q5iuD7jnrGF5mgaF/D9iznDPyCXCrBsjbIV8wnqPKUWqas3
llg2onb0A

Ly8G7dROHgKjwlYHgVz0ohnovOowFL/Zi73imEOULeVd+KxjH7MfSd1IQlQ6qI2GhUP
dSya6k9cf
Status Response

0VJyC1cFkfQCZWNNTh5HRSiDO+3Pd0EnOILdQsi2cayR3GQ7RGIqTnIHcEnfTL7VWEE
GxizN4nah

TMa4yuGxguREw7nTcNGHI/M2uW1Ko5PvcGevSATDwyxK2FPB9ARw0wFXz7uQ9seadcf
KJNFMBNwi

dLSPjkTTh1G72wJRfU+1GBSBB826QyLGkXmqraO8NmYEztG/wEk2ISI17ozcbKUGW+0
NixajqHAs

iDL9ealTnOxdr+HhkzOSpuZM/deICh40N5fwEt6ZDCeNb/Eji41SRaTqlCI=
</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
<ds:Object>
<xades:QualifyingProperties
xmlns:xades="http://uri.etsi.org/01903/v1.3.2#"
xmlns:xades141="http://uri.etsi.org/01903/v1.4.1#"
Target="#xmldsig-e7b5d982-29c7-4169-a97e-526173f354ef">
<xades:SignedProperties Id="xmldsig-e7b5d982-29c7-
4169-a97e-526173f354ef-signedprops">
<xades:SignedSignatureProperties>
<xades:SigningTime>2015-07-20T22:34:26.229-
05:00</xades:SigningTime>
<xades:SigningCertificate>
<xades:Cert>
<xades:CertDigest>
<ds:DigestMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<ds:DigestValue>2el6MfWvYsvEaa/TV513a7tVK0g=</ds:DigestValue>
</xades:CertDigest>
<xades:IssuerSerial>
<ds:X509IssuerName>C=CO,L=Bogota
D.C.,O=Andes SCD.,OU=Division de certificacion entidad final,CN=CA
ANDES SCD S.A. Clase
II,1.2.840.113549.1.9.1=#1614696e666f40616e6465737363642e636f6d2e63
6f</ds:X509IssuerName>

<ds:X509SerialNumber>9128602840918470673</ds:X509SerialNumber>
</xades:IssuerSerial>
</xades:Cert>
<xades:Cert>
<xades:CertDigest>
<ds:DigestMethod
Status Response

Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<ds:DigestValue>YGJTXnOzmebG2Mc6A/QapNi1PRA=</ds:DigestValue>
</xades:CertDigest>
<xades:IssuerSerial>
<ds:X509IssuerName>C=CO,L=Bogota
D.C.,O=Andes SCD,OU=Division de certificacion,CN=ROOT CA ANDES SCD
S.A.,1.2.840.113549.1.9.1=#1614696e666f40616e6465737363642e636f6d2e
636f</ds:X509IssuerName>

<ds:X509SerialNumber>7958418607150926283</ds:X509SerialNumber>
</xades:IssuerSerial>
</xades:Cert>
<xades:Cert>
<xades:CertDigest>
<ds:DigestMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<ds:DigestValue>6EVr7OINyc49AgvNkie19xul55c=</ds:DigestValue>
</xades:CertDigest>
<xades:IssuerSerial>
<ds:X509IssuerName>C=CO,L=Bogota
D.C.,O=Andes SCD,OU=Division de certificacion,CN=ROOT CA ANDES SCD
S.A.,1.2.840.113549.1.9.1=#1614696e666f40616e6465737363642e636f6d2e
636f</ds:X509IssuerName>

<ds:X509SerialNumber>3248112716520923666</ds:X509SerialNumber>
</xades:IssuerSerial>
</xades:Cert>
</xades:SigningCertificate>
<xades:SignaturePolicyIdentifier>
<xades:SignaturePolicyId>
<xades:SigPolicyId>

<xades:Identifier>http://www.facturae.es/politica_de_firma_formato_
facturae/politica_de_firma_formato_facturae_v3_1.pdf</xades:Identif
ier>
</xades:SigPolicyId>
<xades:SigPolicyHash>
<ds:DigestMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<ds:DigestValue>Ohixl6upD6av8N7pEvDABhEL6hM=</ds:DigestValue>
</xades:SigPolicyHash>
</xades:SignaturePolicyId>
Status Response

</xades:SignaturePolicyIdentifier>
<xades:SignerRole>
<xades:ClaimedRoles>

<xades:ClaimedRole>supplier</xades:ClaimedRole>
</xades:ClaimedRoles>
</xades:SignerRole>
</xades:SignedSignatureProperties>
</xades:SignedProperties>
</xades:QualifyingProperties>
</ds:Object>
</ds:Signature>
</ext:ExtensionContent>
</ext:UBLExtension>
</ext:UBLExtensions>
<cbc:UBLVersionID>UBL 2.0</cbc:UBLVersionID>
<cbc:ProfileID>DIAN 1.0</cbc:ProfileID>
<cbc:ID>45910281428</cbc:ID>
<cbc:UUID schemeAgencyID="195" schemeAgencyName="CO, DIAN
(Direccion de Impuestos y Aduanas
Nacionales)">4ae0869bcc9044db987aecbe976187fd3ba0937c</cbc:UUID>
<cbc:IssueDate>2015-07-20</cbc:IssueDate>
<cbc:IssueTime>00:00:00</cbc:IssueTime>
<cbc:InvoiceTypeCode listAgencyID="195" listAgencyName="CO, DIAN
(Direccion de Impuestos y Aduanas Nacionales)"
listSchemeURI="http://www.dian.gov.co/contratos/facturaelectronica/
v1/InvoiceType">1</cbc:InvoiceTypeCode>
<cbc:Note>
Factura de venta
</cbc:Note>
<cbc:DocumentCurrencyCode>COP</cbc:DocumentCurrencyCode>
<fe:AccountingSupplierParty>
<cbc:AdditionalAccountID>1</cbc:AdditionalAccountID>
<fe:Party>
<cac:PartyIdentification>
<cbc:ID schemeAgencyID="195" schemeAgencyName="CO, DIAN
(Direccion de Impuestos y Aduanas Nacionales)"
schemeID="31">700085371</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName>
<cbc:Name>PJ - 700085371 - Adquiriente FE</cbc:Name>
</cac:PartyName>
<fe:PhysicalLocation>
<fe:Address>
<cbc:Department>Bolivar</cbc:Department>
Status Response

<cbc:CitySubdivisionName>Centro</cbc:CitySubdivisionName>
<cbc:CityName>Pasa Caballos</cbc:CityName>
<cac:AddressLine>
<cbc:Line> carrera 8 Nº 6C - 60</cbc:Line>
</cac:AddressLine>
<cac:Country>
<cbc:IdentificationCode>CO</cbc:IdentificationCode>
</cac:Country>
</fe:Address>
</fe:PhysicalLocation>
<fe:PartyTaxScheme>
<cbc:TaxLevelCode>0</cbc:TaxLevelCode>
<cac:TaxScheme/>
</fe:PartyTaxScheme>
<fe:PartyLegalEntity>
<cbc:RegistrationName>PJ - 700085371</cbc:RegistrationName>
</fe:PartyLegalEntity>
</fe:Party>
</fe:AccountingSupplierParty>
<fe:AccountingCustomerParty>
<cbc:AdditionalAccountID>2</cbc:AdditionalAccountID>
<fe:Party>
<cac:PartyIdentification>
<cbc:ID schemeAgencyID="195" schemeAgencyName="CO, DIAN
(Direccion de Impuestos y Aduanas Nacionales)"
schemeID="22">11222333</cbc:ID>
</cac:PartyIdentification>
<fe:PhysicalLocation>
<fe:Address>
<cbc:Department>Huila</cbc:Department>
<cbc:CitySubdivisionName>Centro</cbc:CitySubdivisionName>
<cbc:CityName>Aipe</cbc:CityName>
<cac:AddressLine>
<cbc:Line> carrera 8 Nº 6C - 40</cbc:Line>
</cac:AddressLine>
<cac:Country>
<cbc:IdentificationCode>CO</cbc:IdentificationCode>
</cac:Country>
</fe:Address>
</fe:PhysicalLocation>
<fe:PartyTaxScheme>
<cbc:TaxLevelCode>0</cbc:TaxLevelCode>
<cac:TaxScheme/>
</fe:PartyTaxScheme>
<fe:Person>
Status Response

<cbc:FirstName>Primer-N</cbc:FirstName>
<cbc:FamilyName>Apellido-11222333</cbc:FamilyName>
<cbc:MiddleName>Segundo-N</cbc:MiddleName>
</fe:Person>
</fe:Party>
</fe:AccountingCustomerParty>
<fe:TaxTotal>
<cbc:TaxAmount currencyID="COP">15540.48</cbc:TaxAmount>
<cbc:TaxEvidenceIndicator>false</cbc:TaxEvidenceIndicator>
<fe:TaxSubtotal>
<cbc:TaxableAmount currencyID="COP">97128</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="COP">15540.48</cbc:TaxAmount>
<cbc:Percent>16</cbc:Percent>
<cac:TaxCategory>
<cac:TaxScheme>
<cbc:ID>01</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</fe:TaxSubtotal>
</fe:TaxTotal>
<fe:TaxTotal>
<cbc:TaxAmount currencyID="COP">4021.09</cbc:TaxAmount>
<cbc:TaxEvidenceIndicator>false</cbc:TaxEvidenceIndicator>
<fe:TaxSubtotal>
<cbc:TaxableAmount currencyID="COP">97128</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="COP">4021.09</cbc:TaxAmount>
<cbc:Percent>4.14</cbc:Percent>
<cac:TaxCategory>
<cac:TaxScheme>
<cbc:ID>03</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</fe:TaxSubtotal>
</fe:TaxTotal>
<fe:LegalMonetaryTotal>
<cbc:LineExtensionAmount
currencyID="COP">97128</cbc:LineExtensionAmount>
<cbc:TaxExclusiveAmount
currencyID="COP">19561.57</cbc:TaxExclusiveAmount>
<cbc:PayableAmount
currencyID="COP">116689.57</cbc:PayableAmount>
</fe:LegalMonetaryTotal>
<fe:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:InvoicedQuantity>456</cbc:InvoicedQuantity>
Status Response

<cbc:LineExtensionAmount
currencyID="COP">97128</cbc:LineExtensionAmount>
<fe:Item>
<cbc:Description>Línea-1 45910281428
fos0001_700085371_f7999_R469910-459-27223</cbc:Description>
</fe:Item>
<fe:Price>
<cbc:PriceAmount currencyID="COP">213</cbc:PriceAmount>
</fe:Price>
</fe:InvoiceLine>
</fe:Invoice>”
}

400 {"error":" Debe suministrar el tipo de identificación de la compañía”}

{"error":" El tipo de identificación de la compañía es inválido. Los


tipos de documento disponibles son: Registro Civil(11), Tarjeta de
400 Identidad(12), Cédula Ciudadanía(13), Tarjeta Extranjería(21), Cédula
Extranjería(22), NIT(31), Pasaporte(41), Documento Identificación
Extranjero(42)”}

400 {"error":" Debe suministrar el número de identificación de la compañía”}

{"error":"El tipo de documento suministrado es inválido. Los tipos de


400 documento disponibles son: Factura(1), Nota Crédito(2), Nota Débito(3)”}

400 {"error":"Debe suministrar el identificador único de documento”}

400 {"error":"El identificador único de documento debe ser un GUID válido”}

400 {"error":" <<factura, nota débito o nota crédito>> <<Documentid>> no


existe.”}

400 {"error":"No se encontró XML asociado a <<factura, nota débito o nota


crédito>> <<Documentid>>”}

401 Unauthorized

500 {"error":"Lo sentimos se ha presentado un problema."}


7. Get Dummy Invoice
Obtiene la estructura Json para insertar una factura de una plantilla determinada.

Request
Method URL

GET https://misfacturas.cenet.ws/integrationapi/api/GetDummyInvoice

Type Params Values

HEAD Authorization string


URL_PARAM SchemaID uniqueIdentifier
URL_PARAM IDNumber uniqueIdentifier
URL_PARAM TemplateID uniqueIdentifier

Authorization
Revisar las respuestas de https://misfacturas.cenet.ws/integrationapi/api/login

SchemaID
Tipo de identificación de la empresa.

IDNumber
Número de identificación de la empresa.

TemplateID
Código de identificación de la plantilla a obtener.

Response
Status Response

200 Objeto Json con la respuesta del estado de la factura

Ejemplo de la respuesta es:


{
"Customer_Information": {
"IdentificationType": 0,
"Identification": null,
"DV": 0,
"PartyTaxLevelCode": 0,
"PersonTypeID": 0,
"RegistrationName": null,
"PersonFirstName": null,
"PersonMiddleName": null,
"PersonFamilyName": null,
"PersonFamilyName2": null,
"CityID": 0,
"AddressLine": null,
"Telephone": null,
"Email": null,
"WebSiteURI": null
},
"Authorization_Information": {
"InvoiceAuthorizationNumber": 0,
"PreinvoiceNumber": 0,
"DaysOff": 0
},
"Item_Information": [
{
"ItemCode": null,
"Name": null,
"Quantity": 0,
"Price": 0,
"Amount": 0,
"MeasureUnitCode": null,
"TaxesInformation": [
{
"Id": 0,
"TaxEvidenceIndicator": false,
"Percent": 0,
"TaxableAmount": 0,
"TaxAmount": 0
}
],
"AdditionalItemPropertyList": null,

"AdditionalFields": [
{
"Name": "Color Producto",
"Value": "Value"
}
]
}
],
"TaxesInformation": [
{
"Id": 0,
"TaxEvidenceIndicator": false,
"Percent": 0,
"TaxableAmount": 0,
"TaxAmount": 0
}
],
"Payment_Summary": {
"PaymentTypeID": 0,
"PaymentMethodNote": null,
"CurrencyCode": null
},
"Payment_Information": {
"LineExtensionAmount": 0,
"TaxExclusiveAmount": 0,
"PayableAmount": 0
},
"Invoice_Note": {
"Note": null
},
"Additional_Fields": [
{
"ReferenceName": "Detalles de pago",
"Name": "Tipo Pago",
"Value": "Value"
}
]
}
IMPORTANTE: para construir una factura exitosa se deberá enviar la misma
estructura entregada por el dummy ajustando el valor “Value” de los campos
adicionales (“Additional_Fields”) con la información que debe tener el campo
referenciado. “ReferenceName” es el módulo (dentro de la Representación Gráfica)
al cual hace parte el campo y “Name” es el nombre del campo (dentro de la
Representación Gráfica). También es importante aclarar que el arreglo que
“Additional_Fields” que se encuentra dentro de “Item_Information” son campos
adicionales dentro de la tabla de productos/servicios de la factura, y el
arreglo “Additional_Fields” por fuera de “Item_Information”, hace referencia a
los campos adicional generales de la factura.

500 {"error":"Lo sentimos se ha presentado un problema."}


Glosario
Tags API
A continuación una relación de los tags utilizados en este API y su descripción respectiva:

1. Invoice Insertion

Nombre Tag Descripción

Información Cliente

Tipo de identificación del cliente asociado a la factura


IdentificationType
electrónica (ver listado de códigos). Obligatorio

Número de identificación del cliente asociado a la factura


Identification
electrónica. Obligatorio

Dígito de verificación del documento. Condicional


DV
(Obligatorio cuando el tipo de documento es “NIT”).

Régimen tributario del cliente asociado a la factura


PartyTaxLevelCode
electrónica (ver listado de códigos). Obligatorio

Tipo persona del cliente asociado a la factura electrónica


PersonTypeID
(ver listado de códigos). Obligatorio

Razón social del cliente asociado a la factura electrónica.


RegistrationName Condicional (Este campo se debe completar cuando el tipo de
persona es “Jurídica”)

Primer nombre del cliente asociado a la factura


PersonFirstName electrónica. Condicional (Este campo se debe completar
cuando el tipo de persona es “Natural”)

Segundo nombre del cliente asociado a la factura


PersonMiddleName electrónica. Condicional (Este campo es opcional cuando el
tipo de persona es “Natural”)

Primer apellido del cliente asociado a la factura


PersonFamilyName electrónica. Condicional (Este campo se debe completar
cuando el tipo de persona es “Natural”)

Segundo apellido del cliente asociado a la factura


electrónica. Condicional (Este campo es opcional cuando el
PersonFamilyName2
tipo de persona es “Natural”)
Nombre Tag Descripción

Código de identificación de la ciudad del cliente asociado


CityID a la factura electrónica. Obligatorio (Ver listados de
códigos en documento anexo)

Dirección del cliente asociado a la factura electrónica.


AddressLine
Obligatorio

Teléfono del cliente asociado a la factura electrónica.


Telephone
Opcional

Correo electrónico del cliente asociado a la factura


Email
electr+onica. Opcional

Dirección URL de la página web asociada al cliente de la


WebSiteURI
factura electrónica. Opcional

Información Resolución

InvoiceAuthorizationNum Número de la resolución a utilizar para la factura en


ber creación. Obligatorio

Número prefactura (Númeración interna de la empresa que


PreinvoiceNumber
está generando la factura). Obligatorio

Número de días de vencimiento de la factura electrónica en


construcción. Tener en cuenta que los días reportados serán
ExpirationDays
días calendario. Si no se reporta el campo se entenderá por
defecto 30 días calendario (un mes). Opcional

Información Ítem

ItemCode Código de identificación del ítem a facturar. Obligatorio

Name Nombre o descripción del ítem a facturar. Obligatorio

Quantity Cantidad de ítems a facturar. Obligatorio

Price Precio unitario del ítem a facturar. Obligatorio

Amount Valor de la línea (precio unitario X cantidad). Obligatorio


Nombre Tag Descripción

Unidad de medida del ítem a facturar (Ver listados de


MeasureUnitCode
códigos en documento anexo). Opcional

Tag utilizado para reportar las propiedades adicionales de


AdditionalItemPropertyL
los ítems a facturar. Esta tag no tiene ningún valor, es
ist
un tag padre. Opcional

Nombre de la propiedad adicional del ítem a facturar.


Name
Ejemplo: Color, Talla, etc. Opcional

Valor de la propiedad adicional del ítem a facturar.


Value
Ejemplo: Azul, XL, etc. Opcional

Tag padre que agrupa la información de los impuestos y


TaxesInformation retenciones aplicables al ítem. Para los ítems solo se
puede reportar IVA, Impoconsumo y Retefuente. Opcional

Id de la clase de impuesto a reportar para el ítem. (Ver


listados de códigos en documento anexo). Condicional
Id
(obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Booleano para determinar si el impuesto es un impuesto o


una retención. (false = Impuesto y true = Retención)
TaxEvidenceIndicator
Condicional (obligatorio si se completa algún tag del
elemento “TaxesInformation”)

Porcentaje aplicable del impuesto/retención. Condicional


Percent (obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Valor gravable (valor al cual se aplicará el


impuesto/retención). Valor calculado de la operación “Valor
TaxableAmount
Unitario” * “Cantidad” del ítem. Condicional (obligatorio
si se completa algún tag del elemento “TaxesInformation”)

Valor del impuesto/retención aplicable al ítem. Resultado


de la operación “Valor gravable” * “Porcentaje
TaxAmount
Impuesto/Retención”. Condicional (obligatorio si se
completa algún tag del elemento “TaxesInformation”)

Información Impuestos y Retenciones (resumen de impuestos y retenciones)

Id de la clase de impuesto a reportar. (Ver listados de


Id códigos en documento anexo). Condicional (obligatorio si se
completa algún tag del elemento “TaxesInformation”)
Nombre Tag Descripción

Booleano para determinar si el impuesto es un impuesto o


una retención. (false = Impuesto y true = Retención).
TaxEvidenceIndicator
Condicional (obligatorio si se completa algún tag del
elemento “TaxesInformation”)

Porcentaje aplicable del impuesto/retención. Condicional


Percent (obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Valor gravable (valor al cual se aplicará el


TaxableAmount impuesto/retención). Condicional (obligatorio si se
completa algún tag del elemento “TaxesInformation”)

Valor del impuesto/retención a facturar. Condicional


TaxAmount (obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Información del Método de Pago y Moneda

Método de pago aplicable a la factura. (Ver listados de


PaymentTypeID
códigos en documento anexo. Obligatorio

Nota de instrucción del pago aplicable a la factura.


PaymentMethodNote
Opcional

CurrencyCode Tipo de moneda aplicable a la factura. Opcional

Información del Resumen de Pago

LineExtensionAmount Subtotal de la factura. Obligatorio

TaxExclusiveAmount Valor de los impuestos aplicables a la factura. Obligatorio

PayableAmount Valor total a pagar de la factura. Obligatorio

Observaciones Factura

Note Observaciones aplicables a la factura. Opcional


2. Credit Note Insertion

Nombre Tag Descripción

Información Factura

Código Único de Facturación Electrónica (CUFE) de la factura


asociada a la nota en construcción. Condicional (Se debe
Cufe
reportar cuando se quiera asociar la nota a una o varias
facturas)

Fecha de expedición de la factura asociada a la nota en


IssueDate construcción. Condicional (Se debe reportar cuando se quiera
asociar la nota a una o varias facturas)

Información Nota

Número de la nota en construcción (generado por el sistema de


ID
facturación del emisor). Obligatorio

Concepto de la nota crédito en construcción (ver listado de


ResponseCode
códigos en documento anexo). Obligatorio

Tipo de moneda en la que se están reportando los valores en


CurrencyCode la nota. Si no se reporta este valor, se tomará por defecto
“COP”. Opcional

Información Cliente

Tipo de identificación del cliente asociado a la nota (ver


IdentificationType
listado de códigos en documento anexo). Obligatorio

Número de identificación del cliente asociado a la nota.


Identification
Obligatorio

Dígito de verificación del documento. Condicional (Se debe


DV
reportar cuando el tipo de documento es “NIT”).

PartyTaxLevelCode Régimen tributario del cliente asociado a la nota (ver


listado de códigos en documento anexo). Obligatorio

PersonTypeID Tipo persona del cliente asociado a la nota (ver listado de


códigos en documento anexo). Obligatorio

Razón social del cliente asociado a la nota. Condicional


RegistrationName (Este campo se debe completar cuando el tipo de persona es
“Jurídica”)

Primer nombre del cliente asociado a la nota. Condicional


PersonFirstName (Este campo se debe completar cuando el tipo de persona es
“Natural”)
Segundo nombre del cliente asociado a la nota. Condicional
PersonMiddleName (Este campo es opcional cuando el tipo de persona es
“Natural”)

Primer apellido del cliente asociado a la nota. Condicional


PersonFamilyName (Este campo se debe completar cuando el tipo de persona es
“Natural”)

Segundo apellido del cliente asociado a la nota. Condicional


PersonFamilyName2 (Este campo es opcional cuando el tipo de persona es
“Natural”)

Código de identificación de la ciudad del cliente asociado a


CityID la nota. Obligatorio (Ver listados de códigos en documento
anexo)

Código de identificación del departamento del cliente


RegionID asociado a la nota. Obligatorio (Ver listados de códigos en
documento anexo)

AddressLine Dirección del cliente asociado a la nota. Obligatorio

Telephone Teléfono del cliente asociado a la nota. Opcional

Email Correo electrónico del cliente asociado a la nota.


Obligatorio

Dirección URL de la página web asociada al cliente de la


WebSiteURI
nota. Opcional

Información Ítem

Código del ítem a acreditar. Debe coincidir con el código


reportado en la factura. Condicional (Se debe reportar cuando
ItemCode
se quiera detallar el producto o servicio al que se hace
referencia en la nota crédito.)

Nombre o descripción del ítem a acreditar. Debe coincidir con


el código reportado en la factura. Condicional (Se debe
Description
reportar cuando se quiera detallar el producto o servicio al
que se hace referencia en la nota crédito.)

Cantidad devuelta del ítem facturado. Esta cantidad debe ser


igual o inferior a la cantidad facturada. Condicional (Se debe
Quantity
reportar cuando se quiera detallar el producto o servicio al
que se hace referencia en la nota crédito.)

Precio unitario real del ítem a acreditar. Este valor debe ser
inferior al precio unitario facturado. Condicional (Se debe
Price
reportar cuando se quiera detallar el producto o servicio al
que se hace referencia en la nota crédito.)
Valor de la línea (valor a acreditar por ítem). Condicional
Amount (Se debe reportar cuando se quiera detallar el producto o
servicio al que se hace referencia en la nota crédito.)

Información Impuestos y Retenciones

Id de la clase de impuesto a reportar. (Ver listados de


Id códigos en documento anexo). Condicional (obligatorio si se
completa algún tag del elemento “TaxesInformation”)

Booleano para determinar si el impuesto es un impuesto una


TaxEvidenceIndicator retención. Condicional (obligatorio si se completa algún tag
del elemento “TaxesInformation”)

Porcentaje aplicable del impuesto/retención. Condicional


Percent (obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Valor gravable (valor al cual se aplicará el


TaxableAmount impuesto/retención). Condicional (obligatorio si se completa
algún tag del elemento “TaxesInformation”)

Valor del impuesto/retención a acreditar. Condicional


TaxAmount (obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Información del Resumen de Pago

LineExtensionAmount Subtotal de la nota crédito. Obligatorio

TaxExclusiveAmount Total Impuestos de la nota crédito en creación. Obligatorio

PayableAmount Total de la nota crédito en construcción. Obligatorio

Razón de la Nota

Note Razón de la generación de la nota crédito. Obligatorio


3. Debit Note Insertion

Nombre Tag Descripción

Información Factura

Código Único de Facturación Electrónica (CUFE) de la


CUFE
factura asociada a la nota en construcción. Obligatorio

Información Nota

Número de la nota en construcción (generado por el sistema


ID
de facturación del emisor). Obligatorio

Concepto de la nota débito en construcción. Ver listados de


ResponseCode
códigos en documento anexo. Obligatorio

Porcentaje del interés a aplicar en la factura a través de


Interests la nota débito en creación. Condicional (debe completarse
si el concepto de la nota es por “Intereses”)

Información Ítem

Código del ítem a debitar. Debe coincidir con el código


ItemCode
reportado en la factura. Obligatorio

Precio unitario real del ítem a Debitar. Este valor debe


Price
ser superior al precio unitario facturado. Obligatorio

Amount Valor de la línea (valor a debitar por ítem). Obligatorio

Información Impuestos y Retenciones

Id de la clase de impuesto a reportar. (Ver listados de


Id códigos en documento anexo). Condicional (obligatorio si se
completa algún tag del elemento “TaxesInformation”)

Booleano para determinar si el impuesto es un impuesto una


TaxEvidenceIndicator retención. Condicional (obligatorio si se completa algún
tag del elemento “TaxesInformation”)

Porcentaje aplicable del impuesto/retención. Condicional


Percent (obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Valor gravable (valor al cual se aplicará el


TaxableAmount impuesto/retención). Condicional (obligatorio si se
completa algún tag del elemento “TaxesInformation”)
Nombre Tag Descripción

Valor del impuesto/retención a debitar. Condicional


TaxAmount (obligatorio si se completa algún tag del elemento
“TaxesInformation”)

Información del Resumen de Pago

LineExtensionAmount Subtotal de la nota débito. Obligatorio

TaxExclusiveAmount Total Impuestos de la nota débito en creación. Obligatorio

PayableAmount Total de la nota débito en construcción. Obligatorio

Razón de la Nota

Note Razón de la generación de la nota débito. Obligatorio

4. Get Document Status

Nombre Tag Descripción

Código único de la identificación del documento entregado


DocumentId en las respuestas de los métodos de inserción de
documentos.

Tipo de documento electrónico a consultar. (Ver listados de


DocumentType
códigos en documento anexo)

Concepto de la nota débito en construcción. Ver listados de


DocumentStatus
códigos en documento anexo.

Fecha y hora en la que cambio al último estado referenciado


StatusDate
(DocumentStatus)

Código Único de Facturación Electrónica. Este campo se


CUFE entregará únicamente cuando se trate de una factura
emitida.

Es el número consumido de la resolución de numeración para


InvoiceNumber la factura consultada. Este campo se entregará únicamente
cuando se trate de una factura emitida.

Número de la nota consultada. Recordar que este número es


NoteNumber
asignado por el emisor al momento de generar la nota.
Nombre Tag Descripción

Razón social o nombres del cliente asociado al documento


CustomerParty
electrónico consultado.

Número y tipo de identificación del cliente asociado al


CustomerPartyID
documento electrónico consultado.

PayableAmount Valor total del documento electrónico consultado.

5. Get Document XML

Nombre Tag Descripción

Código único de la identificación del documento entregado


DocumentId en las respuestas de los métodos de inserción de
documentos.

Tipo de documento electrónico a obtener (XML). (Ver


DocumentType
listados de códigos en documento anexo)

6. Get Dummy Invoice

Nombre Tag Descripción

Conjunto de campos adicionales a la factura estándar para


Additional_Fields
la plantilla especificada

Nombre del módulo al cual pertenece el campo en la


ReferenceName
Representación Gráfica.

Name Nombre del campo adicional

Value Campo para capturar el valor del campo adicional


Códigos de Estado
Todos los estados son estándar HTTP, los siguientes son usados en este API

2XX - Petición exitosa


4XX - Error del lado del cliente
5XX - Error del lado del servidor

Código de Descripción
estado

200 OK

201 Created

202 Accepted (Request accepted, and queued for execution)

400 Bad request

401 Authentication failure

403 Forbidden

404 Resource not found

405 Method Not Allowed

409 Conflict

412 Precondition Failed

413 Request Entity Too Large

500 Internal Server Error

501 Not Implemented

503 Service Unavailable

También podría gustarte