Você está na página 1de 41

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”
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 ........................................................................................................14
Request .................................................................................................................................14
Response ..............................................................................................................................15
6. Get Document XML ...........................................................................................................16
Request .................................................................................................................................16
Response ..............................................................................................................................17
7. Get Dummy Invoice ...........................................................................................................28
Request .................................................................................................................................28
Response ..............................................................................................................................29
Tags API ...............................................................................................................................31
Códigos de Estado ................................................................................................................41
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": "andres_vargasapi@mail.com",
"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": [
{
Status Response

"Id": 1,
"TaxEvidenceIndicator": false,
"Percent": 19,
"TaxableAmount": 100,
"TaxAmount": 1000
}
],
}
],
"TaxesInformation": [
{
"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”}


Status Response

{"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’”}

{"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":"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”}


Status Response

{"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”}

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
},
Status Response

"Item_Information": [
{
"ItemCode": 21848,
"QuantityBack": 0,
"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"}
Status Response

400 {"error":"El campo "Tipo" debe ser diligenciado si otros campos del
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": "1b306235a2582c86660a0f38121439dfb73d6a12"
},
"Note_Information": {
"Id": 21458,
"ResponseCode": 4,
"Discount": 0,
"Interest": 0
Status Response

},
"Item_Information": [
{
"ItemCode": 21848,
"QuantityBack": 0,
"Price": 3200,
"Amount": 3200
}
],
"Taxes_Information": [
{
"Id": 0,
"TaxEvidenceIndicator": false,
"Percent": 0,
"TaxableAmount": 0,
"TaxAmount": 0
}
],
"Payment_Summary": {
"LineExtensionAmount": 3200,
"TaxExclusiveAmount": 3200,
"PayableAmount": 3200
},
"Note_Concept": {
"Note": "Para pagar en otro lado"
}
}
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 del descuento debe ser numérico"}

400 {"error":"La cantidad devuelta debe ser numérica"}

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

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


Status Response

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
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."}

5. Get Document Status


Obtiene la información del estado de una factura

Request
Method URL

GET 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":15564,
"DocumentType":1
}

Ejemplo de la respuesta es:

{
"DocumentStatus": Emitido,
"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": 300.000,
}

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
}

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
Status Response

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>
<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>
Status Response

<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>
<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
Status Response

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

VQQKEwpBbmRlcyBTQ0QuMRQwEgYDVQQHEwtCb2dvdGEgRC5DLjELMAkGA1UEBhMCQ08
wHhcNMTMw

NDE2MjIyMzUwWhcNMTYwODEzMjIyMzUwWjCCASQxHTAbBgNVBAkTFENhbGxlIEZhbHN
hIE5vIDEy

IDM0MT0wOwYJKoZIhvcNAQkBFi5wZXJzb25hX25hdHVyYWxfcHJ1ZWJhc0BlbXByZXN
hcGFyYXBy

dWViYXMuY29tMRswGQYDVQQDExJVc3VhcmlvIGRlIFBydWViYXMxETAPBgNVBAUTCDE
xMTExMTEx

MV0wWwYDVQQLE1RDZXJ0aWZpY2FkbyBQZXJzb25hIG5hdHVyYWwgRW1pdGlkbyBwb3I
gQW5kZXMg

U0NEIEF2LiBDYXJyZXJhIDQ1IE5vIDEwMyAtIDM0IE9GLiAyMDUxFDASBgNVBAcTC0J
1Y2FyYW1h

bmdhMRIwEAYDVQQIEwlTYW50YW5kZXIxCzAJBgNVBAYTAkNPMIIBIjANBgkqhkiG9w0
BAQEFAAOC

AQ8AMIIBCgKCAQEAuVkIDKtLVyEQhVGvaaJZXq6YU1yLC0VQEptM7mUfwR849CW+pGe
FsWlkvaNJ

PiKZHajDrd2EWs7LMowLkBMhS0vwV9cH7G65GcLbvs5pc7ZtUt5Fq7vTmk0RXp1fjh+
mbKkR/SdG
Status Response

a/fYxf8zVYhYSUbYNfFwvN5ZzAkj+V1GflpPostK8CkR5jMdRdNPkQQpCUMwV9M3FvZ
iLWBKHXQi

kYm5Ed3suR2a6G8nWTosu8zbRLVXlmBG81tGL2oBemMfePMU3thNHVn2T9vNp1tJPwy
B9+npU0qe

4kZvyu3/xMB1a28ZgZ7fDNYhuDQ6/DYdCoBVFbrvWCAuVSJcC+RpEQIDAQABo4ICzTC
CAskwHQYD

VR0OBBYEFAaSNjJJPImFjE/cyw4JVdqO+VcRMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBg
wFoAUqEu0

9AuntlvUoCiFEJ0EEzPEp/cwggHFBgNVHSAEggG8MIIBuDCCAbQGDSsGAQQBgfRIAQI
BAQIwggGh

MIIBWgYIKwYBBQUHAgIwggFMHoIBSABMAGEAIAB1AHQAaQBsAGkAegBhAGMAaQDzAG4
AIABkAGUA

IABlAHMAdABlACAAYwBlAHIAdABpAGYAaQBjAGEAZABvACAAZQBzAHQAYQAgAHMAdQB
qAGUAdABh

ACAAYQAgAGwAYQBzACAAUABvAGwA7QB0AGkAYwBhAHMAIABkAGUAIABDAGUAcgB0AGk
AZgBpAGMA

YQBkAG8AIABkAGUAIABQAGUAcgBzAG8AbgBhACAATgBhAHQAdQByAGEAbAAgACgAUAB
DACkAIAB5

ACAAUAByAOEAYwB0AGkAYwBhAHMAIABkAGUAIABDAGUAcgB0AGkAZgBpAGMAYQBjAGk
A8wBuACAA

KABEAFAAQwApACAAZQBzAHQAYQBiAGwAZQBjAGkAZABhAHMAIABwAG8AcgAgAEEAbgB
kAGUAcwAg

AFMAQwBEAC4wQQYIKwYBBQUHAgEWNWh0dHA6Ly93d3cuYW5kZXNzY2QuY29tLmNvL2R
vY3MvRFBD

X0FuZGVzU0NEX1YxLjQucGRmMEYGA1UdHwQ/MD0wO6A5oDeGNWh0dHA6Ly93d3cuYW5
kZXNzY2Qu

Y29tLmNvL2luY2x1ZGVzL2dldENlcnQucGhwP2NybD0xMA4GA1UdDwEB/wQEAwIF4DA
dBgNVHSUE

FjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwOQYDVR0RBDIwMIEucGVyc29uYV9uYXR1cmF
sX3BydWVi
Status Response

YXNAZW1wcmVzYXBhcmFwcnVlYmFzLmNvbTANBgkqhkiG9w0BAQsFAAOCAgEAwvPxwHK
tiywYT/BU

X2Anq3fzwD57ooMPewnSQXJs1pSuVbJSjmakdjKmJngwpaSx6z+LOB4PniP4BRdygxA
3RSuFtlQo

RbYv8FqMvoUzHJLPO+DH6SZklDyMcanFiAPuMGSvjMZVfeLjH+2Ut1/iM/kipRnevND
qVxjj9xZs

rOoSWSuOv+r5pQE4A3G74lZD30iHS702g0ylNjgVNhdCnolHeoli6qYWBTORV9yIIzS
ml9ALkSeN

Sg92tSF+GDdquIfiI1U2q5iuD7jnrGF5mgaF/D9iznDPyCXCrBsjbIV8wnqPKUWqas3
llg2onb0A

Ly8G7dROHgKjwlYHgVz0ohnovOowFL/Zi73imEOULeVd+KxjH7MfSd1IQlQ6qI2GhUP
dSya6k9cf

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>
Status Response

<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
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>
Status Response

</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>
</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>
Status Response

<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>
<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>
Status Response

<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>
<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>
Status Response

<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>
<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”}


Status Response

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:

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


PersonFamilyName2 electrónica. Condicional (Este campo es opcional cuando el
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)

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). 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


Id listados de códigos). Condicional (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). 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. 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


Credit 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 crédito en construcción. Ver listados


ResponseCode
de códigos. Obligatorio

Porcentaje del descuento aplicable a la factura a través


Discount de la nota crédito. Condicional (debe completarse si el
concepto de la nota es por “Descuento Comercial”)

Información Ítem

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


ItemCode
reportado en la factura. Obligatorio

Cantidad de vuelta del ítem facturado. Esta cantidad debe


ser igual o inferior a la cantidad facturada. Condicional
QuantityBack
(debe completarse si el concepto de la nota es por
“Devolución Prod/Serv”)

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


Price
ser inferior al precio unitario facturado. Obligatorio

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

Información Impuestos y Retenciones

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


Id códigos). 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

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


TaxExclusiveAmount
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

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. 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

Price Precio unitario real del ítem a Debitar. Este valor debe
Nombre Tag Descripción

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). 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 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

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.
Nombre Tag Descripción

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


DocumentType
códigos)

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


DocumentStatus
códigos.

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.

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.

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)
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

Listados de Código
Listado códigos de conceptos de nota

Notas Crédito
Concepto Código

Devolución de parte de los bienes; no


1
aceptación de partes del servicio
Rebaja en precio de producto o servicio 3
Descuento Comercial 4
Otros 6

Notas Débito
Concepto Código
Intereses 1
Gastos por Cobrar 2
Cambio del valor 3

Listado códigos de forma de pago

Forma de Pago Código

Efectivo 10
Cheque 20
Transferencia Bancaria 41

Consignación Bancaria 42
Listado códigos de tipos de documento de identificación

Tipo Documentos Código

Registro Civil 11
Tarjeta de Identidad 12
Cédula Ciudadanía 13
Tarjeta Extranjería 21
Cédula Extranjería 22
NIT 31
Pasaporte 41

Documento Identificación Extrajero 42

Listado códigos de tipo de régimen tributario

Régimen Tributario Código

Simple 0

Común 2

Listado códigos de tipo de persona

Tipo Persona Código

Jurídica 1

Natural 2

Listado códigos de clase de Impuesto/Retención

Impuesto Código

IVA 01
Impoconsumo 02
ICA 03

Retefuente 04

Listado códigos de tipo de impuesto/retención

Boleano Impuesto/Retención Código

Impuesto False

Retención True
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

Você também pode gostar