Documentación para 2242

Resolución DIAN 2242 del 2015

Manual de uso para conector de integración

Afacturar Electrónicamente


Esta interfaz de programación es una API RESTful que se usa para entregar información a la plataforma Afacturar, en la cual se hacen las validaciones necesarias para poder procesar, construir y firmar documentos electrónicos que se entregarán a la DIAN, a los adquirientes (compradores) y a otras entidades si se requiere.

Para realizar una búsqueda puede usar el buscador del navegador (teclas Ctrl + F en Windows y Cmd + F en Mac).


Endpoints

Todas las llamadas a la API deben comenzar con la URL base para cada uno de los ambientes disponibles:

Producción https://api.afacturar.com/api/v2/
Pruebas https://api-pruebas.afacturar.com/api/v2/

Autenticación

Algunas consideraciones para tener en cuenta:

  • La API utiliza Tokens para la autentificación

    "Authorization": "Bearer 18aks5jhfd8ewre33y87tri8sdawfliuoij983dh4r93q8y4r732659243865p9no9am3s348765... vfr56uhfdwqasdfty890olkj... gfr56yg"
  • Las llamadas a la API deben ser realizadas a través de peticiones GET o POST según el caso
  • Todas las respuestas que no sean devueltas con un código HTTP 200 se consideran como error.
  • Todas las respuestas son devueltas en formato JSON

Categorías de la API

  • Factura de venta (Factura Nacional)
  • Nota crédito
  • Nota débito
  • Factura de contingencia
  • Factura de mandato
  • Transacciones

Interactuar con la API - PostMan

Si quieres probar nuestra API de una manera rápida te recomendamos el uso de PostMan. Postman es una extensión de Google Chrome que permite interactuar con HTTP API's de forma sencilla a través de una interfaz amigable para construir peticiones y obtener respuestas.

LenguajeHTTP client libraries
PHPcURL
PythonurlLib2 + MultipartPostHandler

Especificación detallada para recibir información de factura para ser procesadas en la plataforma


Histórico de cambios

Versión Cambios Fecha de liberación
2.8
  • Adicionar nuevas variables al JSON, estas no son obligatorias.
  • facturas[0].detalle_factura[i].valores_unitarios, este grupo de variables es utilizado para la representación gráfica
  • facturas[0].detalle_factura[i].valor_total_a_pagar, esta variable es utilizada la para representación gráfica
  • generalidades.rg_tipo, generalidades.rg_base_64, generalidades.rg_px_qr, generalidades.rg_px_cufe, estas variables se utilizan cuando el integrador envía la representación gráfica en formato PDF codificado en base 64; y SOFE Afacturar® (Sistema Operativo de Factuaración Electrónica de Afacturar®) se encarga de insertar el CUFE y el QR, en la posición dada en las variables. El tamaño del QR siempre es de 3X3 cm.
  • generalidades.notificacion, este grupo de variables se utilizan para el envio de la notificación al adquiriente, en una de ellas se determina si es envio autmatico o no. Si es automático es necesario llenar la información del correo electrónico del obligado.
05 de Marzo de 2019
2.7
  • La API de producción y desarrollo solo se pueden consumir via https.
  • Las URL del ambiente de producción y desarrollo se cambiaron, y las anteriores se deshabilitaran el 31 de Marzo de 2019.
15 de Enero de 2019
2.6
  • Se modifica la estructura donde se reportan las notas de todos los documentos electrónicos que permite mayor flexibilidad y claridad a la hora de reportar información adicional que se requiere en las representaciones gráficas.
15 de Enero de 2019
2.5
  • En el array de nota estandarización de valores de impuestos adicionales e información adicional de cada obligado en un formato similar a json.
  • En la salida se adicionaron dos opciones qr_url_imagen (Url de la imagen del qr de la factura en formato svg) y qr_url_imagen_base_64 (Url de la imagen del qr en base 64 de la factura en formato txt). Estas se adicionaron en caso que el integrador quiera generar el pdf.
10 de Enero de 2019
2.4
  • Adicionar en encabezado el fecha_vencimiento
  • Adicionar en encabezado el numero_orden
  • Adicionar en encabezado el prefijo
  • Adicionar en valor_factura el valor_total_impuesto_1
  • Adicionar en valor_factura el valor_total_impuesto_2
  • Adicionar en valor_factura el valor_total_impuesto_3
  • Adicionar en valor_factura el valor_total_impuesto_4
27 de Agosto de 2018
2.3
  • Adicionar el número de resolución entregado por la DIAN para la facturación electronica
01 de Agosto de 2018
2.2
  • Adicionar el tipo de petición de cada recurso
19 de Julio de 2018
2 Con respecto a la versión anterior se han hecho las siguientes modificaciones:
  1. Un json por factura
  2. Quitar informacion_obligado
  3. Cambiar en el encabezado el tipo de dato de nota por array
  4. Adicionar en encabezado el tipo_de_pago
  5. Adicionar en informacion_adquiriente la información del RUT - Responsabilidades, Calidades y atributos. Usuarios aduaneros
  6. Adicionar en informacion_adquiriente el correo_electronico para el envio de notificaciones
  7. Adicionar en informacion_adquiriente el numero_movil para el envio de notificaciones
  8. Adicionar en detalle_factura el valor y porcentaje de descuento en el detalle
  9. Organizar en detalle_factura la información de impuestos y adicionar el valor_impuestos Cambiar en valor_factura el nombre de valor_impuestos por valor_base_calculo_impuestos
  10. Adicionar en valor_factura el valor_anticipo
  11. Adicionar en valor_factura el valor_descuento
  12. Quitar en generalidades el numero_facturas_emitidas
06 de Junio de 2018

POST /factura_nacional


documento_obligado:
	000000000

data:
	{
	"facturas":[{
		"encabezado":{
			"id_factura":"",
			"fecha":"",
			"hora":"",
			"nota":["{'':'','':'','':'','':'','':'','':''}"],
			"moneda":"",
			"tipo_factura":"",
			"tipo_de_pago":"",
			"numero_resolucion_facturacion":"",
			"fecha_vencimiento":"",
			"numero_orden":"",
			"prefijo":""
		},
		"informacion_adquiriente":{
			"tipo_contribuyente":"",
			"tipo_regimen":"",
			"tipo_identificacion":"",
			"identificacion":"",
			"correo_electronico":"",
			"numero_movil":"",
			"nombre":{
				"razon_social":"",
				"primer_nombre":"",
				"segundo_nombre":"",
				"apellido":""
			},
			"departamento":"",
			"zona":"",
			"ciudad":"",
			"direccion":"",
			"pais":"",
			"RUT":{
				"resp_calidades_atributos":[{}],
				"usuario_aduanero":[{}]
			}
		},
		"detalle_factura":[
			{
				"numero_linea":"",
				"cantidad":"",
				"valor_unitario":"",
				"descripcion":"",
				"descuento":{
					"porcentaje_descuento":"",
					"valor_descuento":""
				},
				"impuestos_detalle":{
					"codigo_impuesto":"",
					"porcentaje_impuesto":"",
					"valor_base_impuesto":"",
					"valor_impuesto":""
				},
				"valor_total_detalle":"",
				"valores_unitarios":{
					"valor_descuento":"",
					"valor_impuesto":"",
					"valor_con_descuento":"",
					"valor_a_pagar":""
				},
				"valor_total_a_pagar":""
			}
		],
		"impuestos":[
			{
				"codigo_impuesto":"",
				"porcentaje_impuesto":"",
				"valor_base_calculo_impuesto":"",
				"valor_total_impuesto":""
			}
		],
		"valor_factura":{
			"valor_base":"",
			"valor_base_calculo_impuestos":"",
			"valor_anticipo":"",
			"valor_descuento_total":"",
			"valor_total_impuesto_1":"",
			"valor_total_impuesto_2":"",
			"valor_total_impuesto_3":"",
			"valor_total_impuesto_4":"",
			"total_factura":""
		}
	}],
	"generalidades":{
		"version":"2",
		"identificador_transmision":"",
		"rg_tipo":"",
		"rg_base_64":"",
		"rg_px_qr":	{
				"x":"",
				"y":"",
				"size":""
		},
		"rg_px_cufe":	{
				"x":"",
				"y":"",
				"size":""
		},
		"notificacion":	{
				"es_automatico":"",
				"correo_obligado":"",
				"asunto":"",
				"con_copia":""
		}

	}
}

						

URI Parameters

documento_obligadoIdentificación del obligado
dataLa tabla siguiente muestra la explicación de data
Nombre Descripcion
facturas
Nombre Descripcion
encabezado
Nombre Tipo Especificaciones Obligatorio Descripcion
id_factura String Mínimo 1 caracteres Si Identificador del documento: Número de factura de venta. Incluye prefijo + consecutivo de factura. No se permiten caracteres adicionales como espacios o guiones.
fecha Fecha AAAA-MM-DD Si Fecha de emisión de la factura a efectos fiscales.
hora Hora HH24:MM:SS Si Hora de emisión de la factura
nota array El listado de la estandarización de las variables se puede ver aqui SI

Las notas se van a distribuir en un formato similar a JSON, en el cual se cambia la comilla doble por sencilla, tanto en el nombre de la variable, como en su valor, esto debido a la restricción de algunos caracteres especiales que no son soportados en este campo.

Este JSON termina siendo un STRING que se debe enviar dividido en las posiciones del array de nota, de acuerdo con las restricciones que defina la DIAN:

A la fecha (2019-01-11) existe una restricción de enviar como mínimo 15 caracteres(*)

La estructura a utilizar es:

{'variable_1': 'valor_1', 'variable_2':'valor_2'}

Ejemplos:

Enviar valores nulos o vacíos

nota[0] = “{‘variable_1': 'null', 'variable_2':'valor_2', 'variable_3':''}”

División del STRING en varias posiciones del array

nota[0] = “{‘variable_1': 'null', 'variab”

nota[1] = “le_2':'valor_2', 'variable_3':''}”

El API genera la concatenación del STRING y lo convierte a formato JSON y realiza la respectiva validación.

Hay que tener en cuenta que los caracteres (',\', \,) no se deben enviar, porque no son soportados en el API.

Si alguna variable es diferente a las del listado de especificaciones, se debe consultar con el personal de operación de Teleinte S.A.S, para realizar la respectiva validación, y en caso que no exista una variable, se estudiará el caso para determinar la adición o no de la variable que cumpla con la descripción requerida.

(*) Estas restricciones pueden cambiar en cualquier momento por parte de la DIAN, de acuerdo al nuevo proceso que estandarización y validación que están estableciendo.

moneda Parametrizado COP- Colombia, USD - dolares. Inf adicional Ver Si Divisa consolidada aplicable a toda la factura
tipo_factura Parametrizado 1= Factura de venta
2= Factura de exportación
3= Factura de contingencia
Si Código de tipo de documento autorizado para efectos tributarios
tipo_de_pago Parametrizado 10 = Efectivo
20 = Cheque
41 = Transferencia bancaría
42 = Consignación bancaría
Si Medios de pago
numero_resolucion_facturacion String 18 caracteres Si Número de resolución entregado por la DIAN, para la facturación electronica
fecha_vencimiento Date AAAA-MM-DD No Fecha de vencimiento
numero_orden String Minimo 3 caracteres No Número de orden
prefijo String Minimo 3 caracteres No Prefijo de facturación
informacion_adquiriente
Nombre Tipo Especificaciones Obligatorio Descripcion
tipo_contribuyente Parametrizado 1= Persona juridica
2= Persona natural
Si Tipo de documento de identificación de persona
tipo_regimen Parametrizado 0= Simplificado
2= Común
Si Régimen al que pertenece
tipo_identificacion Parametrizado 11= Registro civil
12= Tarjeta de identidad
13= Cedula ciudadania
21= Tarjeta de extranjería
22= Cedula de extranjería
31= NIT
41= Pasaporte
42= Documento de identificación extranjero
Si Tipo de identificación Tributaria o similar
identificacion Numérico 1...n Si Número completo de Identificación Tributaria o similar
correo_electronico Email xxxx@xx.xx Si Dirección de correo electronico, uilizado para el envio de notificaciones
numero_movil String 3111111111 No Número de móvil para el envio de notificaciones
nombre array Depende del tipo de contribuyenteDepende del tipo de contribuyente.
Persona juridica {razon_social}.
Persona natural {primer_nombre, segundo_nombre, apellidos}.
Si
Nombre Tipo Especificaciones Obligatorio Descripcion
razon_social Alfanumérico Mínimo 3 caracteres Opcional dependiendo el tipo de contribuyente. Si es NIT es obligatorio Nombre comercial
primer_nombre Alfabético Mínimo 3 caracteres Si
segundo_nombre Alfabético No
apellido Alfabético Mínimo 3 caracteres Si
departamento Alfabético Mínimo 3 caracteres Si
zona Alfabético Mínimo 3 caracteres Si Localidad, barrio, entre otros
ciudad Alfabético Mínimo 3 caracteres Si
direccion Alfabético Mínimo 2 caracteres Si Texto libre para establecer la dirección. No se recomienda detallar en otros campos más detallados conceptos como número de edificio, letra, escalera, etc.
pais Parametrizado Estandar ISO 3166-1, formato Alpha-2 code. Inf adicional Ver Si
RUT array Información del RUT - Registro Unico Tributario. Responsabilidades, Calidades y Atributos, numeral 53 y Usuarios aduaneros, numeral 54. Si
Nombre Tipo Especificaciones Obligatorio Descripcion
resp_calidades_atributos array Parametrizado.Inf adicional Ver Si Lista de codigos de las responsabilidades, calidades y atributos registrados en el RUT, numeral 53
usuario_aduanero array Parametrizado.Inf adicional Ver No Lista de codigos usuarios aduaneros registrados en el RUT, numeral 54
detalle_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
numero_linea Numerico 1...n Si Número de Línea
cantidad
(Cant)
Numerico 1...n Si Cantidad de productos o servicios solicitados. Número de unidades servidas/prestadas.
valor_unitario
(VU)
String patron decimal Separador con punto, dos decimales Si El precio unitario es el precio por unidad de un bien o servicio, que en una factura ha de ir indicado antes de la aplicación del impuesto o descuento
descripcion Alfanumérico Mínimo de 2 caracteres Si Descripción del artículo que pertenece a la línea de la factura
descuento array Rebaja o reducción del precio de la lista.
(VD*Cant)
No
Nombre Tipo Especificaciones Obligatorio Descripcion
porcentaje_descuento String patron decimal Separador con punto, dos decimales No Porcentaje de descuento a la linea de la factura
valor_descuento
(VD)
String patron decimal Separador con punto, dos decimales No Valor total del descuento efectuado a la linea de la factura.
impuestos_detalle array Información de impuesto por detalle Si
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto del detalle
porcentaje_impuesto
%Imp
String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido a la linea de la factura
valor_base_impuesto
((VU-VD)*Cant)
String patron decimal Separador con punto, dos decimales Si La base gravable es el valor sobre el cual se aplica la tarifa del Impuesto sobre las Ventas.
valor_impuesto
(((VU-VD)*Cant) * %Imp)
String patron decimal Separador con punto, dos decimales Si Es un gravamen que recae sobre el consumo de bienes y servicios
valor_total_detalle
(VU*Cant)
String patron decimal Separador con punto, dos decimales Si Coste Total.
valores_unitarios array Información de valores unitarios Si
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_descuento
(VD)
String patron decimal Separador con punto, dos decimales No Valor del descuento por producto o servicio
valor_impuesto
VImp = (VU * %Imp)
String patron decimal Separador con punto, dos decimales No Importe del impuesto retenido por producto o servicio
valor_con_descuento
(VU-CVD)
String patron decimal Separador con punto, dos decimales No Valor unitario del producto o servicio menos el descuento
valor_a_pagar
(VU-VD)+VImp
String patron decimal Separador con punto, dos decimales No Valor a pagar por producto o servicio
valor_total_a_pagar
((VU-VD)*Cant)+VImp
String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
impuestos
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Número de importe del impuesto retenido
valor_base_calculo_impuesto String patron decimal Separador con punto, dos decimales Si Base Imponible sobre la que se calcula la retención de impuesto
valor_total_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_base String patron decimal Separador con punto, dos decimales Si Total Importe bruto antes de valor_impuestos
valor_base_calculo_impuestos String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_anticipo String patron decimal Separador con punto, dos decimales No Valor de los anticipos efectuados a la factura
valor_descuento_total String patron decimal Separador con punto, dos decimales No Valor de descuento aplicado a la factura
valor_total_impuesto_1 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de IVA
valor_total_impuesto_2 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto al consumo
valor_total_impuesto_3 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de ICA
valor_total_impuesto_4 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto nacional al consumo
total_factura String patron decimal Separador con punto, dos decimales Si Total importe bruto +Total valor_impuestos
generalidades
Nombre Tipo Obligatorio Descripcion
version Decimal Si Identificación consecutiva de la especificación
identificador_transmision Alfanumerico No Código único para identificar el paquete transmitido
rg_base_64 Alfanumerico No Representación grafica del documento en base 64
rg_tipo String Si hay información en rg_base_64 Valor determinado "", HTML O PDF
rg_px_qr array Información de configuración de QR en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x dentro del documento electronico
y numerico Pixeles Posicionamiento en y dentro del documento electronico
size numerico Pixeles Tamaño del qr
rg_px_cufe array Información de configuración de CUFE en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x(abscisas) en el plano cartesiano en el cuarto cuadrante, es decir las columnas empezando de 0.
y numerico Pixeles Posicionamiento en y(ordenadas) en el plano cartesiano en el cuarto cuadrante, es decir las filas empezando de 0.
size numerico Pixeles Tamaño de la letra
notificacion array Información de configuración de envio de notificaciones No
Nombre Tipo Especificaciones Descripcion
es_automatico String Determinado SI o NO
correo_obligado String Correo electronico Dirección de correo del obligado
asunto String Minimo 80 caracteres Texto para el envio de las notificaciones
con_copia String Minimo 5 caracteres Dirección(s) de correo electronico, separadas por coma
Ejemplo real
								
documento_obligado: 830020470
data:{
"facturas":[{
	"encabezado":{
		"id_factura":"1104",
		"fecha":"2019-01-01",
		"hora":"09:00:00",
		"nota": [
			"{'son':'XXXXXX','vr_rte_ica':'1500.00','pct_rte_ica':'0.00','vr_rte_iva':'500.00','pct_rte_iva':'0.00','vr_rte_fte':'0.00','pct_rte_fte':'0.00'}"
		],
		"moneda":"COP",
		"tipo_factura":1,
		"tipo_de_pago":10,
		"numero_resolucion_facturacion":"012345678912345678",
		"fecha_vencimiento":"",
		"numero_orden":"",
		"prefijo":""
	},
	"informacion_adquiriente":{
		"tipo_contribuyente":1,
		"tipo_regimen":2,
		"tipo_identificacion":31,
		"identificacion":830010101,
		"correo_electronico":"aaaaa@prueba.com",
		"numero_movil":"3111111111",
		"nombre":{
			"razon_social":"Pruebas S.A.S",
			"primer_nombre":"",
			"segundo_nombre":"",
			"apellido":""
		},
		"departamento":"Bogota",
		"zona":"Engativa",
		"ciudad":"Bogota",
		"direccion":"Cra 01",
		"pais":"CO",
		"RUT":{
		"resp_calidades_atributos":["O-01","O-03"],
		"usuario_aduanero":["A-99"]
		}
	},
	"detalle_factura":[
		{
			"numero_linea":1,
			"cantidad":10,
			"valor_unitario":"1500.00",
			"descripcion":"Producto uno",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"5000.00"
			},
			"impuestos_detalle":{
				"codigo_impuesto":1,
				"porcentaje_impuesto":"19.00",
				"valor_base_impuesto":"10000.00",
				"valor_impuesto":"1900.00"
			},
			"valor_total_detalle":"15000.00",
			"valores_unitarios":{
				"valor_descuento":"500",
				"valor_impuesto":"190.00",
				"valor_con_descuento":"1000.00",
				"valor_a_pagar":"1190.00"
			},
			"valor_total_a_pagar":"11900.00"
		},
		{
			"numero_linea":2,
			"cantidad":5,
			"valor_unitario":"45000.00",
			"descripcion":"Producto dos",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"0.00"
			},
			"impuestos_detalle":{
				"codigo_impuesto":1,
				"porcentaje_impuesto":"5.00",
				"valor_base_impuesto":"225000.00",
				"valor_impuesto":"11250.00"
			},
			"valor_total_detalle":"225000.00",
			"valores_unitarios":{
				"valor_descuento":"0",
				"valor_impuesto":"2250.00",
				"valor_con_descuento":"45000.00",
				"valor_a_pagar":"47250.00"
			},
			"valor_total_a_pagar":"236250.00"
		},
		{
			"numero_linea":3,
			"cantidad":2,
			"valor_unitario":"18000.00",
			"descripcion":"Producto 3",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"0.00"
			},
			"impuestos_detalle":{
			"codigo_impuesto":1,
				"porcentaje_impuesto":"19.00",
				"valor_base_impuesto":"36000.00",
				"valor_impuesto":"0.00"
			},
			"valor_total_detalle":"36000.00",
			"valores_unitarios":{
				"valor_descuento":"0.00",
				"valor_impuesto":"0.00",
				"valor_con_descuento":"18000.00",
				"valor_a_pagar":"18000.00"
			},
			"valor_total_a_pagar":"36000.00"
		}
	],
	"impuestos":[{
		"codigo_impuesto":1,
		"valor_base_calculo_impuesto":"10000.00",
		"valor_total_impuesto":"1900.00",
		"porcentaje_impuesto":"19.00"
	},
	{
		"codigo_impuesto":1,
		"valor_base_calculo_impuesto":"225000.30",
		"valor_total_impuesto":"11250.30",
		"porcentaje_impuesto":"5.00"
	}
	],
	"valor_factura":{
		"valor_base":"276000.00",
		"valor_base_calculo_impuestos":"271000.00",
		"valor_anticipo":"0.00",
		"valor_descuento_total":"5000.00",
		"valor_total_impuesto_1":"13150.00",
		"valor_total_impuesto_2":"0.00",
		"valor_total_impuesto_3":"0.00",
		"valor_total_impuesto_4":"0.00",
		"total_factura":"284150.00"
	}
}
],
"generalidades":{
	"version":2,
	"identificador_transmision":"Prueba_xwsr1234",
	"rg_tipo":"",
	"rg_base_64":"",
	"rg_px_qr":	{
			"x":"",
			"y":"",
			"size":""
	},
	"rg_px_cufe":	{
			"x":"",
			"y":"",
			"size":""
	},
	"notificacion":	{
			"es_automatico":"",
			"correo_obligado":"",
			"asunto":"",
			"con_copia":""
	}
}
}
								
							  
Salida Exitosa
	
{
    "codigo_error": 0,
    "descripcion_error": "OK",
    "tiempo_ejecucion": 0.002655029296875,
    "transaccion": "5b185bc380da5",
    "resultado": {
        "cufe": "2ef68fd31a57a336e29617459f7b5402cd0c7ebe",
        "id_factura": "1104",
        "url_representacion_xml": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xml",
        "url_representacion_grafica": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf",
	"qr_url_imagen": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.svg",
	"qr_url_imagen_base_64": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.txt"
    }
}
							  								  

Salida con errores de semantica
	
{
    "codigo_error": 400,
    "descripcion_error": "ERROR",
    "tiempo_ejecucion": 0.0024139881134033203,
    "transaccion": "5b185d0a92c30",
    "resultado": [
        {
            "propiedad": "facturas[0].impuestos[1].valor_base_calculo_impuesto",
            "descripcion": "Does not match the regex pattern ^[0-9]+(\\.[0-9]{2})$"
        }
    ]
}
							  								  

Salida con errores HTTP
	
{
    "codigo_error": 500,
    "descripcion_error": "Unauthenticated."
}
								
							  
cULR

Si usted usa cURL para consumir el API, usted debe incluir la URI con doble comilla para enviar los multiples parametros a transmitir.

Si requiere ejemplos en otras tecnologías (HTTP, C(LibCurl, C#, GO, Java, JavaScript, NodeJS, ObjectiveC, OCaml, PHP, Python, Ruby, Shell, Swift) envienos la solicitud a info@afacturar.com

curl -X POST \
  https://api-pruebas.afacturar.com/api/v2/factura_nacional \
  -H 'accept: application/json' \
  -H 'authorization: Bearer token_obligado \
  -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
  -F 'data={
  "facturas": [
    {
      "encabezado": {
        "id_factura": "990010006",
        "fecha": "2019-01-01",
        "hora": "09:00:00",
        "nota": [
          "{'\''son'\'':'\''XXXXXX'\'','\''vr_rte_ica'\'':'\''1500.00'\'','\''pct_rte_ica'\'':'\''0.00'\'','\''vr_rte_iva'\'':'\''500.00'\'','\''pct_rte_iva'\'':'\''0.00'\'','\''vr_rte_fte'\'':'\''0.00'\''}"
        ],
        "moneda": "COP",
        "tipo_factura": 1,
        "tipo_de_pago": 10,
        "numero_resolucion_facturacion": "9000000032882632",
        "fecha_vencimiento": "",
        "numero_orden": "",
        "prefijo": ""
      },
      "informacion_adquiriente": {
        "tipo_contribuyente": 1,
        "tipo_regimen": 2,
        "tipo_identificacion": 31,
        "identificacion": 830010101,
        "correo_electronico": "aaaaa@prueba.com",
        "numero_movil": "3111111111",
        "nombre": {
          "razon_social": "Pruebas S.A.S",
          "primer_nombre": "",
          "segundo_nombre": "",
          "apellido": ""
        },
        "departamento": "Bogota",
        "zona": "Engativa",
        "ciudad": "Bogota",
        "direccion": "Cra 01",
        "pais": "CO",
        "RUT": {
          "resp_calidades_atributos": [
            "O-01",
            "O-03"
          ],
          "usuario_aduanero": [
            "A-99"
          ]
        }
      },
      "detalle_factura": [
        {
          "numero_linea": 1,
          "cantidad": 10,
          "valor_unitario": "1500.00",
          "descripcion": "Producto uno",
          "descuento": {
            "porcentaje_descuento": "0.00",
            "valor_descuento": "5000.00"
          },
          "impuestos_detalle": {
            "codigo_impuesto": 1,
            "porcentaje_impuesto": "19.00",
            "valor_base_impuesto": "10000.00",
            "valor_impuesto": "1900.00"
          },
          "valor_total_detalle": "15000.00",
          "valores_unitarios": {
            "valor_descuento": "500.00",
            "valor_impuesto": "190.00",
            "valor_con_descuento": "1000.00",
            "valor_a_pagar": "1190.00"
          },
          "valor_total_a_pagar": "11900.00"
        },
        {
          "numero_linea": 2,
          "cantidad": 5,
          "valor_unitario": "45000.00",
          "descripcion": "Producto dos",
          "descuento": {
            "porcentaje_descuento": "0.00",
            "valor_descuento": "0.00"
          },
          "impuestos_detalle": {
            "codigo_impuesto": 1,
            "porcentaje_impuesto": "5.00",
            "valor_base_impuesto": "225000.00",
            "valor_impuesto": "11250.00"
          },
          "valor_total_detalle": "225000.00",
          "valores_unitarios": {
            "valor_descuento": "0.00",
            "valor_impuesto": "2250.00",
            "valor_con_descuento": "45000.00",
            "valor_a_pagar": "47250.00"
          },
          "valor_total_a_pagar": "236250.00"
        },
        {
          "numero_linea": 3,
          "cantidad": 2,
          "valor_unitario": "18000.00",
          "descripcion": "Producto 3",
          "descuento": {
            "porcentaje_descuento": "0",
            "valor_descuento": "0.00"
          },
          "impuestos_detalle": {
            "codigo_impuesto": 1,
            "porcentaje_impuesto": "19.00",
            "valor_base_impuesto": "36000.00",
            "valor_impuesto": "0.00"
          },
          "valor_total_detalle": "36000.00",
          "valores_unitarios": {
            "valor_descuento": "0.00",
            "valor_impuesto": "0.00",
            "valor_con_descuento": "18000.00",
            "valor_a_pagar": "18000.00"
          },
          "valor_total_a_pagar": "36000.00"
        }
      ],
      "impuestos": [
        {
          "codigo_impuesto": 1,
          "valor_base_calculo_impuesto": "10000.00",
          "valor_total_impuesto": "1900.00",
          "porcentaje_impuesto": "19.00"
        },
        {
          "codigo_impuesto": 1,
          "valor_base_calculo_impuesto": "225000.30",
          "valor_total_impuesto": "11250.30",
          "porcentaje_impuesto": "5.00"
        }
      ],
      "valor_factura": {
        "valor_base": "276000.00",
        "valor_base_calculo_impuestos": "271000.00",
        "valor_anticipo": "0.00",
        "valor_descuento_total": "5000.00",
        "valor_total_impuesto_1": "13150.00",
        "valor_total_impuesto_2": "0.00",
        "valor_total_impuesto_3": "0.00",
        "valor_total_impuesto_4": "0.00",
        "total_factura": "284150.00"
      }
    }
  ],
  "generalidades": {
    "version": 2,
    "identificador_transmision": "Prueba_xwsr1234",
    "rg_tipo": "",
    "rg_base_64": "",
    "rg_px_qr": {
      "x": "",
      "y": "",
      "size": ""
    },
    "rg_px_cufe": {
      "x": "",
      "y": "",
      "size": ""
    },
    "notificacion": {
      "es_automatico": "",
      "correo_obligado": "",
      "asunto": "",
      "con_copia": ""
    }
  }
}' \
  -F documento_obligado=830020470
 

Especificación detallada para recibir información de la nota crédito para ser procesadas en la plataforma


Histórico de cambios

Versión Cambios Fecha
1.3 Adicionar nuevas variables al Json, estas no son obligatorias.
facturas[0].detalle_factura[i].valores_unitarios, este grupo de variables es utilizada la para representación grafica
facturas[0].detalle_factura[i].valor_total_a_pagar, esta variable es utilizada la para representación grafica
generalidades.rg_tipo, generalidades.rg_base_64, generalidades.rg_px_qr, generalidades.rg_px_cufe, estas variables se utilizan cuando el integrador envia la representación grafica en formato PDF encriptado en base 64 y SOFE se encarga de insertar el CUFE y el QR, en la posición dada en loas variables. El tamaño del QR siempre es de 3X3 cm.
generalidades.notificacion, este grupo de variables se utilizan para el envio de la notificación al adquiriente, en una de ellas se determina si es envio autmatico o no. Si es automatico es necesario llenar la información del correo electronico del obligado.
05 de Marzo de 2019
1.2 Formato json para notas crédito.
Nuevos campos de acuerdo a la resolución 000001 del 5 de enero del 2018
Nueva información para cumplir politica de firma, anexo 2.
2018-04-23
1.3 Adicionar el tipo de petición de cada recurso
19 de Julio de 2018
1.4 Adicionar en valor_nota_credito el valor_total_impuesto_1
Adicionar en valor_nota_credito el valor_total_impuesto_2
Adicionar en valor_nota_credito el valor_total_impuesto_3
Adicionar en valor_nota_credito el valor_total_impuesto_4
27 de Agosto de 2018

POST /nota_credito


documento_obligado:
	000000000

data:
{
"nota_credito":{
	"encabezado":{
		"id_nota_credito":"",
		"fecha":"",
		"hora":"",
		"nota":["{'':'','':'','':'','':'','':'','':''}"]
		"moneda":"",
		"tipo_nota_credito":""
	},
	"informacion_factura":{
		"id_factura":"",
		"codigo_unico_factura":"",
		"fecha":"",
		"hora":""
	},
	"informacion_adquiriente":{
		"tipo_contribuyente":"",
		"tipo_regimen":"",
		"tipo_identificacion":"",
		"identificacion":"",
		"correo_electronico":"",
		"numero_movil":"",
		"nombre":{
			"razon_social":"",
			"primer_nombre":"",
			"segundo_nombre":"",
			"apellido":""
		},
		"departamento":"",
		"zona":"",
		"ciudad":"",
		"direccion":"",
		"pais":"",
		"RUT":{
			"resp_calidades_atributos":[{}],
			"usuario_aduanero":[{}]
		}
	},
	"detalle_factura":[{
		"numero_linea":"",
		"cantidad":"",
		"valor_unitario":"",
		"descripcion":"",
		"impuestos_detalle":{
			"codigo_impuesto":"",
			"porcentaje_impuesto":"",
			"valor_base_impuesto":"",
			"valor_impuesto":""
		},
		"valor_total_detalle":"",
		"valores_unitarios":{
			"valor_impuesto":"",
			"valor_a_pagar":""
		},
		"valor_total_a_pagar":""
	}],
	"impuestos":[{
		"codigo_impuesto":"",
		"porcentaje_impuesto":"",
		"valor_base_calculo_impuesto":"",
		"valor_total_impuesto":""
	}],
	"valor_nota_credito":{
		"valor_base":"",
		"valor_base_calculo_impuestos":"",
		"valor_total_impuesto_1":"",
		"valor_total_impuesto_2":"",
		"valor_total_impuesto_3":"",
		"valor_total_impuesto_4":"",
		"total_nota_credito":""
	}
},
"generalidades":{
	"version":"2",
	"identificador_transmision":"",
	"rg_tipo":"",
	"rg_base_64":"",
	"rg_px_qr":	{
			"x":"",
			"y":"",
			"size":""
	},
	"rg_px_cufe":	{
			"x":"",
			"y":"",
			"size":""
	},
	"notificacion":	{
			"es_automatico":"",
			"correo_obligado":"",
			"asunto":"",
			"con_copia":""
	}
}
}
						

URI Parameters

documento_obligadoIdentificación del obligado
dataLa tabla siguiente muestra la explicación de data
Nombre Descripcion
nota_credito
Nombre Descripcion
encabezado
Nombre Tipo Especificaciones Obligatorio Descripcion
id_nota_credito String Mínimo 1 caracteres Si Identificador del documento: Número de la nota crédito. Incluye prefijo + consecutivo de factura. No se permiten caracteres adicionales como espacios o guiones.
fecha Fecha AAAA-MM-DD Si Fecha de emisión de la nota crédito.
hora Hora HH24:MM:SS Si Hora de emisión de la nota crédito
nota array El listado de la estandarización de las variables se puede ver aqui SI

Las notas se van a distribuir en un formato similar a JSON, en el cual se cambia la comilla doble por sencilla, tanto en el nombre de la variable, como en su valor, esto debido a la restricción de algunos caracteres especiales que no son soportados en este campo.

Este JSON termina siendo un STRING que se debe enviar dividido en las posiciones del array de nota, de acuerdo con las restricciones que defina la DIAN:

A la fecha (2019-01-11) existe una restricción de enviar como mínimo 15 caracteres(*)

La estructura a utilizar es:

{'variable_1': 'valor_1', 'variable_2':'valor_2'}

Ejemplos:

Enviar valores nulos o vacíos

nota[0] = “{‘variable_1': 'null', 'variable_2':'valor_2', 'variable_3':''}”

División del STRING en varias posiciones del array

nota[0] = “{‘variable_1': 'null', 'variab”

nota[1] = “le_2':'valor_2', 'variable_3':''}”

El API genera la concatenación del STRING y lo convierte a formato JSON y realiza la respectiva validación.

Hay que tener en cuenta que los caracteres (',\', \,) no se deben enviar, porque no son soportados en el API.

Si alguna variable es diferente a las del listado de especificaciones, se debe consultar con el personal de operación de Teleinte S.A.S, para realizar la respectiva validación, y en caso que no exista una variable, se estudiará el caso para determinar la adición o no de la variable que cumpla con la descripción requerida.

(*) Estas restricciones pueden cambiar en cualquier momento por parte de la DIAN, de acuerdo al nuevo proceso que estandarización y validación que están estableciendo.

moneda Parametrizado COP- Colombia, USD - dolares. Inf adicional Ver Si Divisa consolidada aplicable a toda la factura
tipo_nota_credito Parametrizado 1=Devolución de parte de los bienes; no aceptación de partes del servicio
2=Anulación de factura electrónica
3=Rebaja total aplicada
4=Descuento total aplicado
5=Otros
Si Código de tipo de nota de crédito
informacion_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
id_factura String Mínimo 1 caracteres Si Identificador del documento: Número de la factura.
fecha Fecha AAAA-MM-DD Si Fecha de emisión de la nota crédito.
hora Hora HH24:MM:SS Si Hora de emisión de la nota crédito
codigo_unico_factura String Si CUFE- Codigo unico de la factura electronica
informacion_adquiriente
Nombre Tipo Especificaciones Obligatorio Descripcion
tipo_contribuyente Parametrizado 1= Persona juridica
2= Persona natural
Si Tipo de documento de identificación de persona
tipo_regimen Parametrizado 0= Simplificado
2= Común
Si Régimen al que pertenece
tipo_identificacion Parametrizado 11= Registro civil
12= Tarjeta de identidad
13= Cedula ciudadania
21= Tarjeta de extranjería
22= Cedula de extranjería
31= NIT
41= Pasaporte
42= Documento de identificación extranjero
Si Tipo de identificación Tributaria o similar
identificacion Numérico 1...n Si Número completo de Identificación Tributaria o similar
correo_electronico Email xxxx@xx.xx Si Dirección de correo electronico, uilizado para el envio de notificaciones
numero_movil String 3111111111 No Número de móvil para el envio de notificaciones
nombre array Depende del tipo de contribuyenteDepende del tipo de contribuyente.
Persona juridica {razon_social}.
Persona natural {primer_nombre, segundo_nombre, apellidos}.
Si
Nombre Tipo Especificaciones Obligatorio Descripcion
razon_social Alfanumérico Mínimo 3 caracteres Opcional dependiendo el tipo de contribuyente. Si es NIT es obligatorio Nombre comercial
primer_nombre Alfabético Mínimo 3 caracteres Si
segundo_nombre Alfabético No
apellido Alfabético Mínimo 3 caracteres Si
departamento Alfabético Mínimo 3 caracteres Si
zona Alfabético Mínimo 3 caracteres Si Localidad, barrio, entre otros
ciudad Alfabético Mínimo 3 caracteres Si
direccion Alfabético Mínimo 2 caracteres Si Texto libre para establecer la dirección. No se recomienda detallar en otros campos más detallados conceptos como número de edificio, letra, escalera, etc.
pais Parametrizado Estandar ISO 3166-1, formato Alpha-2 code. Inf adicional Ver Si
RUT array Información del RUT - Registro Unico Tributario. Responsabilidades, Calidades y Atributos, numeral 53 y Usuarios aduaneros, numeral 54. Si
Nombre Tipo Especificaciones Obligatorio Descripcion
resp_calidades_atributos array Parametrizado.Inf adicional Ver Si Lista de codigos de las responsabilidades, calidades y atributos registrados en el RUT, numeral 53
usuario_aduanero array Parametrizado.Inf adicional Ver No Lista de codigos usuarios aduaneros registrados en el RUT, numeral 54
detalle_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
numero_linea Numerico 1...n Si Número de Línea
cantidad Numerico 1...n Si Cantidad del artículo solicitado. Número de unidades servidas/prestadas.
valor_unitario String patron decimal Separador con punto, dos decimales Si Precio unitario de la unidad de bien o servicio servido/prestado,en la moneda indicada en la Cabecera de la Factura. Siempre sin valor_impuestos
descripcion Alfanumérico Mínimo de 2 caracteres Si Descripción del artículo que pertenece a la línea de la factura
impuestos_detalle array Información de impuesto por detalle Si
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto del detalle
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido a la linea de la factura
valor_base_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
valor_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
valor_total_detalle String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
valores_unitarios array Información de valores unitarios Si
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_impuesto
VImp = (VU * %Imp)
String patron decimal Separador con punto, dos decimales No Importe del impuesto retenido por producto o servicio
valor_a_pagar
(VU-VD)+VImp
String patron decimal Separador con punto, dos decimales No Valor a pagar por producto o servicio
valor_total_a_pagar
((VU-VD)*Cant)+VImp
String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
impuestos
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Número de importe del impuesto retenido
valor_base_calculo_impuesto String patron decimal Separador con punto, dos decimales Si Base Imponible sobre la que se calcula la retención de impuesto
valor_total_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_nota_credito
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_base String patron decimal Separador con punto, dos decimales Si Total Importe bruto antes de valor_impuestos
valor_base_calculo_impuestos String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_total_impuesto_1 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de IVA
valor_total_impuesto_2 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto al consumo
valor_total_impuesto_3 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de ICA
valor_total_impuesto_4 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto nacional al consumo
total_nota_credito String patron decimal Separador con punto, dos decimales Si Total importe bruto +Total valor_impuestos
generalidades
Nombre Tipo Obligatorio Descripcion
version Decimal Si Identificación consecutiva de la especificación
identificador_transmision Alfanumerico No Código único para identificar el paquete transmitido
rg_tipo String Si hay información en rg_base_64 Valor determinado "", HTML O PDF
rg_px_qr array Información de configuración de QR en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x dentro del documento electronico
y numerico Pixeles Posicionamiento en y dentro del documento electronico
size numerico Pixeles Tamaño del qr
rg_px_cufe array Información de configuración de CUFE en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x(abscisas) en el plano cartesiano en el cuarto cuadrante, es decir las columnas empezando de 0.
y numerico Pixeles Posicionamiento en y(ordenadas) en el plano cartesiano en el cuarto cuadrante, es decir las filas empezando de 0.
size numerico Pixeles Tamaño de la letra
notificacion array Información de configuración de envio de notificaciones No
Nombre Tipo Especificaciones Descripcion
es_automatico String Determinado SI o NO
correo_obligado String Correo electronico Dirección de correo del obligado
asunto String Minimo 80 caracteres Texto para el envio de las notificaciones
con_copia String Minimo 5 caracteres Dirección(s) de correo electronico, separadas por coma
Ejemplo de entrada una factura
								
documento_obligado: 830000000
data:{
{
  "nota_credito": [
    {
      "encabezado": {
        "id_nota_credito": "120",
        "fecha": "2019-03-05",
        "hora": "08:42:52",
        "nota": [
          "{'son':'XXXXXX','vr_rte_ica':'1500.00','pct_rte_ica':'0.00','vr_rte_iva':'500.00','pct_rte_iva':'0.00','vr_rte_fte':'0.00','pct_rte_fte':'0.00'}"
        ],
        "moneda": "COP",
        "tipo_nota_credito": 2
      },
      "informacion_factura": {
        "id_factura": "1141",
        "codigo_unico_factura": "e5f94a7710016d7096f158ad0be7ad849d694fee",
        "fecha": "2018-07-05",
        "hora": "09:55:15"
      },
      "informacion_adquiriente": {
        "tipo_contribuyente": 1,
        "tipo_regimen": 2,
        "tipo_identificacion": 1,
        "identificacion": 900730299,
        "correo_electronico": "acanon@teleinte.com",
        "numero_movil": "",
        "nombre": {
          "razon_social": "Pixelpro SAS",
          "primer_nombre": "",
          "segundo_nombre": "",
          "apellido": ""
        },
        "departamento": "Bogota D.C.",
        "zona": "Usaquen",
        "ciudad": "Bogota",
        "direccion": "Carrera 10 No. 96 - 29 Oficina 211",
        "pais": "CO",
        "RUT": {
          "resp_calidades_atributos": [
            "22"
          ],
          "usuario_aduanero": [
            "23"
          ]
        }
      },
      "detalle_factura": [
        {
          "numero_linea": 1,
          "cantidad": 1,
          "valor_unitario": "11000.00",
          "descripcion": "producto uno",
          "impuestos_detalle": {
            "codigo_impuesto": 1,
            "porcentaje_impuesto": "19.00",
            "valor_base_impuesto": "0.00",
            "valor_impuesto": "0.00"
          },
          "valor_total_detalle": "11000.00",
          "valores_unitarios": {
            "valor_impuesto": "11000.00",
            "valor_a_pagar": "11000.00"
          },
          "valor_total_a_pagar": "11000.00"
        }
      ],
      "impuestos": [
        {
          "codigo_impuesto": 1,
          "porcentaje_impuesto": "19.00",
          "valor_base_calculo_impuesto": "0.00",
          "valor_total_impuesto": "0.00"
        }
      ],
      "valor_nota_credito": {
        "valor_base": "11000.00",
        "valor_base_calculo_impuestos": "11000.00",
        "valor_total_impuesto_1": "0.00",
        "valor_total_impuesto_2": "0.00",
        "valor_total_impuesto_3": "0.00",
        "valor_total_impuesto_4": "0.00",
        "total_nota_credito": "11000.00"
      }
    }
  ],
  "generalidades": {
    "version": 2,
    "identificador_transmision": "Prueba",
    "rg_tipo": "",
    "rg_base_64": "",
    "rg_px_qr": {
      "x": "",
      "y": "",
      "size": ""
    },
    "rg_px_cufe": {
      "x": "",
      "y": "",
      "size": ""
    },
    "notificacion": {
      "es_automatico": "",
      "correo_obligado": "",
      "asunto": "",
      "con_copia": ""
    }
  }
}
}
								
							  
Salida Exitosa
	
{
    "codigo_error": 0,
    "descripcion_error": "OK",
    "tiempo_ejecucion": 0.0052449703216552734,
    "transaccion": "5b563aa703738",
    "resultado": {
        "id_nota_credito": "13",
        "id_factura": "1141",
        "codigo_unico_factura": "e5f94a7710016d7096f158ad0be7ad849d694fee",
        "url_representacion_xml": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xml",
        "url_representacion_grafica": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf"
    }
}
							  								  

Salida con errores de semantica
	
{
    "codigo_error": 400,
    "descripcion_error": "Hay un problema con su solicitud",
    "tiempo_ejecucion": 0.0046150684356689453,
    "transaccion": "5b563ad57d17a",
    "resultado": [
        {
            "propiedad": "nota_credito[0].encabezado.tipo_nota_credito",
            "descripcion": "Does not have a value in the enumeration [1,2,3,4,5]"
        },
        {
            "propiedad": "nota_credito[0].informacion_factura.fecha",
            "descripcion": "Invalid date \"20180705\", expected format YYYY-MM-DD"
        }
    ]
}
							  								  

Salida con errores HTTP
	
{
    "codigo_error": 401,
    "descripcion_error": "Unauthenticated."
}
								
							  

curl -X POST \
  https://api-pruebas.afacturar.com/api/v2/nota_credito \
  -H 'accept: application/json' \
  -H 'authorization: Bearer token_obligado' \
  -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
  -F 'data={
  "nota_credito": [
    {
      "encabezado": {
        "id_nota_credito": "120",
        "fecha": "2019-03-05",
        "hora": "08:42:52",
        "nota": [
          "{'\''son'\'':'\''XXXXXX'\'','\''vr_rte_ica'\'':'\''1500.00'\'','\''pct_rte_ica'\'':'\''0.00'\'','\''vr_rte_iva'\'':'\''500.00'\'','\''pct_rte_iva'\'':'\''0.00'\'','\''vr_rte_fte'\'':'\''0.00'\'','\''pct_rte_fte'\'':'\''0.00'\''}"
        ],
        "moneda": "COP",
        "tipo_nota_credito": 2
      },
      "informacion_factura": {
        "id_factura": "1141",
        "codigo_unico_factura": "e5f94a7710016d7096f158ad0be7ad849d694fee",
        "fecha": "2018-07-05",
        "hora": "09:55:15"
      },
      "informacion_adquiriente": {
        "tipo_contribuyente": 1,
        "tipo_regimen": 2,
        "tipo_identificacion": 1,
        "identificacion": 900730299,
        "correo_electronico": "acanon@teleinte.com",
        "numero_movil": "",
        "nombre": {
          "razon_social": "Pixelpro SAS",
          "primer_nombre": "",
          "segundo_nombre": "",
          "apellido": ""
        },
        "departamento": "Bogota D.C.",
        "zona": "Usaquen",
        "ciudad": "Bogota",
        "direccion": "Carrera 10 No. 96 - 29 Oficina 211",
        "pais": "CO",
        "RUT": {
          "resp_calidades_atributos": [
            "22"
          ],
          "usuario_aduanero": [
            "23"
          ]
        }
      },
      "detalle_factura": [
        {
          "numero_linea": 1,
          "cantidad": 1,
          "valor_unitario": "11000.00",
          "descripcion": "producto uno",
          "impuestos_detalle": {
            "codigo_impuesto": 1,
            "porcentaje_impuesto": "19.00",
            "valor_base_impuesto": "0.00",
            "valor_impuesto": "0.00"
          },
          "valor_total_detalle": "11000.00",
          "valores_unitarios": {
            "valor_impuesto": "11000.00",
            "valor_a_pagar": "11000.00"
          },
          "valor_total_a_pagar": "11000.00"
        }
      ],
      "impuestos": [
        {
          "codigo_impuesto": 1,
          "porcentaje_impuesto": "19.00",
          "valor_base_calculo_impuesto": "0.00",
          "valor_total_impuesto": "0.00"
        }
      ],
      "valor_nota_credito": {
        "valor_base": "11000.00",
        "valor_base_calculo_impuestos": "11000.00",
        "valor_total_impuesto_1": "0.00",
        "valor_total_impuesto_2": "0.00",
        "valor_total_impuesto_3": "0.00",
        "valor_total_impuesto_4": "0.00",
        "total_nota_credito": "11000.00"
      }
    }
  ],
  "generalidades": {
    "version": 2,
    "identificador_transmision": "Prueba",
    "rg_tipo": "",
    "rg_base_64": "",
    "rg_px_qr": {
      "x": "",
      "y": "",
      "size": ""
    },
    "rg_px_cufe": {
      "x": "",
      "y": "",
      "size": ""
    },
    "notificacion": {
      "es_automatico": "",
      "correo_obligado": "",
      "asunto": "",
      "con_copia": ""
    }
  }
}' \
-F documento_obligado=830020470

							  

Especificación detallada para recibir información de la nota debito para ser procesadas en la plataforma


Histórico de cambios

Versión Cambios Fecha
1.3 Adicionar nuevas variables al Json, estas no son obligatorias.
facturas[0].detalle_factura[i].valores_unitarios, este grupo de variables es utilizada la para representación grafica
facturas[0].detalle_factura[i].valor_total_a_pagar, esta variable es utilizada la para representación grafica
generalidades.rg_tipo, generalidades.rg_base_64, generalidades.rg_px_qr, generalidades.rg_px_cufe, estas variables se utilizan cuando el integrador envia la representación grafica en formato PDF encriptado en base 64 y SOFE se encarga de insertar el CUFE y el QR, en la posición dada en loas variables. El tamaño del QR siempre es de 3X3 cm.
generalidades.notificacion, este grupo de variables se utilizan para el envio de la notificación al adquiriente, en una de ellas se determina si es envio autmatico o no. Si es automatico es necesario llenar la información del correo electronico del obligado.
05 de Marzo de 2019
1.2 Formato JSON para notas debito.
Nuevos campos de acuerdo a la resolución 000001 del 5 de enero del 2018
Nueva información para cumplir politica de firma, anexo 2.
2018-04-23
1.3 Adicionar en valor_nota_debito el valor_total_impuesto_1
Adicionar en valor_nota_debito el valor_total_impuesto_2
Adicionar en valor_nota_debito el valor_total_impuesto_3
Adicionar en valor_nota_debito el valor_total_impuesto_4
27 de Agosto de 2018

POST /nota_debito

{
"nota_debito":[{
	"encabezado":{
		"id_nota_debito":"",
		"fecha":"",
		"hora":"",
		"nota":["{'':'','':'','':'','':'','':'','':''}"],
		"moneda":"",
		"tipo_nota_debito":""
	},
	"informacion_factura":{
		"id_factura":"",
		"codigo_unico_factura":"",
		"fecha":"",
		"hora":""
	},
	"informacion_adquiriente":{
		"tipo_contribuyente":"",
		"tipo_regimen":"",
		"tipo_identificacion":"",
		"identificacion":"",
		"correo_electronico":"",
		"numero_movil":"",
		"nombre":{
		"razon_social":"",
		"primer_nombre":"",
		"segundo_nombre":"",
		"apellido":""
		},
		"departamento":"",
		"zona":"",
		"ciudad":"",
		"direccion":"",
		"pais":"",
		"RUT":{
		"resp_calidades_atributos":[{}],
		"usuario_aduanero":[{}]
		}
	},
	"detalle_factura":[{
		"numero_linea":"",
		"cantidad":"",
		"valor_unitario":"",
		"descripcion":"",
		"impuestos_detalle":{
		"codigo_impuesto":"",
		"porcentaje_impuesto":"",
		"valor_base_impuesto":"",
		"valor_impuesto":""
		},
		"valor_total_detalle":"",
		"valores_unitarios":{
			"valor_impuesto":"",
			"valor_a_pagar":""
		},
		"valor_total_a_pagar":""
	}],
	"impuestos":[{
		"codigo_impuesto":"",
		"porcentaje_impuesto":"",
		"valor_base_calculo_impuesto":"",
		"valor_total_impuesto":""
	}],
	"valor_nota_debito":{
		"valor_base":"",
		"valor_base_calculo_impuestos":"",
		"valor_total_impuesto_1":"0.00",
		"valor_total_impuesto_2":"0.00",
		"valor_total_impuesto_3":"0.00",
		"valor_total_impuesto_4":"0.00",
		"total_nota_debito":""
	}
}],
"generalidades":{
	"version":"2",
	"identificador_transmision":"",
	"rg_tipo":"",
	"rg_base_64":"",
	"rg_px_qr":	{
			"x":"",
			"y":"",
			"size":""
	},
	"rg_px_cufe":	{
			"x":"",
			"y":"",
			"size":""
	},
	"notificacion":	{
			"es_automatico":"",
			"correo_obligado":"",
			"asunto":"",
			"con_copia":""
	}
}
}

						

URI Parameters

dataLa tabla siguiente muestra la explicación de data
Nombre Descripcion
documento_obligado Identificación del obligado
nota_debito
Nombre Descripcion
encabezado
Nombre Tipo Especificaciones Obligatorio Descripcion
id_nota_debito String Mínimo 1 caracteres Si Identificador único asignado a la nota de abono por parte del Acreedor.
fecha Fecha AAAA-MM-DD Si Fecha de emisión de la nota crédito.
hora Hora HH24:MM:SS Si Hora de emisión de la nota crédito
nota array El listado de la estandarización de las variables se puede ver aqui SI

Las notas se van a distribuir en un formato similar a JSON, en el cual se cambia la comilla doble por sencilla, tanto en el nombre de la variable, como en su valor, esto debido a la restricción de algunos caracteres especiales que no son soportados en este campo.

Este JSON termina siendo un STRING que se debe enviar dividido en las posiciones del array de nota, de acuerdo con las restricciones que defina la DIAN:

A la fecha (2019-01-11) existe una restricción de enviar como mínimo 15 caracteres(*)

La estructura a utilizar es:

{'variable_1': 'valor_1', 'variable_2':'valor_2'}

Ejemplos:

Enviar valores nulos o vacíos

nota[0] = “{‘variable_1': 'null', 'variable_2':'valor_2', 'variable_3':''}”

División del en varias posiciones del array

nota[0] = “{‘variable_1': 'null', 'variab”

nota[1] = “le_2':'valor_2', 'variable_3':''}”

El API genera la concatenación del STRING y lo convierte a formato JSON y realiza la respectiva validación.

Hay que tener en cuenta que los caracteres (',\', \,) no se deben enviar, porque no son soportados en el API.

Si alguna variable es diferente a las del listado de especificaciones, se debe consultar con el personal de operación de Teleinte S.A.S, para realizar la respectiva validación, y en caso que no exista una variable, se estudiará el caso para determinar la adición o no de la variable que cumpla con la descripción requerida.

(*) Estas restricciones pueden cambiar en cualquier momento por parte de la DIAN, de acuerdo al nuevo proceso que estandarización y validación que están estableciendo.

moneda Parametrizado COP- Colombia, USD - dolares. Inf adicional Ver Si Divisa consolidada aplicable a toda la factura
tipo_nota_debito Parametrizado 1 = Intereses
2 = Gastos por cobrar
3 = Cambio del valor
Si Código de tipo de nota debito
informacion_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
id_factura String Mínimo 1 caracteres Si Identificador del documento: Número de la factura.
fecha Fecha AAAA-MM-DD Si Fecha de emisión de la nota crédito.
hora Hora HH24:MM:SS Si Hora de emisión de la nota crédito
codigo_unico_factura String Si CUFE- Codigo unico de la factura electronica
informacion_adquiriente
Nombre Tipo Especificaciones Obligatorio Descripcion
tipo_contribuyente Parametrizado 1= Persona juridica
2= Persona natural
Si Tipo de documento de identificación de persona
tipo_regimen Parametrizado 0= Simplificado
2= Común
Si Régimen al que pertenece
tipo_identificacion Parametrizado 11= Registro civil
12= Tarjeta de identidad
13= Cedula ciudadania
21= Tarjeta de extranjería
22= Cedula de extranjería
31= NIT
41= Pasaporte
42= Documento de identificación extranjero
Si Tipo de identificación Tributaria o similar
identificacion Numérico 1...n Si Número completo de Identificación Tributaria o similar
correo_electronico Email xxxx@xx.xx Si Dirección de correo electronico, uilizado para el envio de notificaciones
numero_movil String 3111111111 No Número de móvil para el envio de notificaciones
nombre array Depende del tipo de contribuyenteDepende del tipo de contribuyente.
Persona juridica {razon_social}.
Persona natural {primer_nombre, segundo_nombre, apellidos}.
Si
Nombre Tipo Especificaciones Obligatorio Descripcion
razon_social Alfanumérico Mínimo 3 caracteres Opcional dependiendo el tipo de contribuyente. Si es NIT es obligatorio Nombre comercial
primer_nombre Alfabético Mínimo 3 caracteres Si
segundo_nombre Alfabético No
apellido Alfabético Mínimo 3 caracteres Si
departamento Alfabético Mínimo 3 caracteres Si
zona Alfabético Mínimo 3 caracteres Si Localidad, barrio, entre otros
ciudad Alfabético Mínimo 3 caracteres Si
direccion Alfabético Mínimo 2 caracteres Si Texto libre para establecer la dirección. No se recomienda detallar en otros campos más detallados conceptos como número de edificio, letra, escalera, etc.
pais Parametrizado Estandar ISO 3166-1, formato Alpha-2 code. Inf adicional Ver Si
RUT array Información del RUT - Registro Unico Tributario. Responsabilidades, Calidades y Atributos, numeral 53 y Usuarios aduaneros, numeral 54. Si
Nombre Tipo Especificaciones Obligatorio Descripcion
resp_calidades_atributos array Parametrizado.Inf adicional Ver Si Lista de codigos de las responsabilidades, calidades y atributos registrados en el RUT, numeral 53
usuario_aduanero array Parametrizado.Inf adicional Ver No Lista de codigos usuarios aduaneros registrados en el RUT, numeral 54
detalle_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
numero_linea Numerico 1...n Si Número de Línea
cantidad Numerico 1...n Si Cantidad del artículo solicitado. Número de unidades servidas/prestadas.
valor_unitario String patron decimal Separador con punto, dos decimales Si Precio unitario de la unidad de bien o servicio servido/prestado,en la moneda indicada en la Cabecera de la Factura. Siempre sin valor_impuestos
descripcion Alfanumérico Mínimo de 2 caracteres Si Descripción del artículo que pertenece a la línea de la factura
impuestos_detalle array Información de impuesto por detalle Si
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto del detalle
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido a la linea de la factura
valor_base_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
valor_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
valor_total_detalle String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
valores_unitarios array Información de valores unitarios Si
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_descuento
(VD)
String patron decimal Separador con punto, dos decimales No Valor del descuento por producto o servicio
valor_impuesto
VImp = (VU * %Imp)
String patron decimal Separador con punto, dos decimales No Importe del impuesto retenido por producto o servicio
valor_con_descuento
(VU-CVD)
String patron decimal Separador con punto, dos decimales No Valor unitario del producto o servicio menos el descuento
valor_a_pagar
(VU-VD)+VImp
String patron decimal Separador con punto, dos decimales No Valor a pagar por producto o servicio
valor_total_a_pagar
((VU-VD)*Cant)+VImp
String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
impuestos
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Número de importe del impuesto retenido
valor_base_calculo_impuesto String patron decimal Separador con punto, dos decimales Si Base Imponible sobre la que se calcula la retención de impuesto
valor_total_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_nota_debito
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_base String patron decimal Separador con punto, dos decimales Si Total Importe bruto antes de valor_impuestos
valor_base_calculo_impuestos String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_total_impuesto_1 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de IVA
valor_total_impuesto_2 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto al consumo
valor_total_impuesto_3 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de ICA
valor_total_impuesto_4 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto nacional al consumo
total_nota_debito String patron decimal Separador con punto, dos decimales Si Total importe bruto +Total valor_impuestos
generalidades
Nombre Tipo Obligatorio Descripcion
version Decimal Si Identificación consecutiva de la especificación
identificador_transmision Alfanumerico No Código único para identificar el paquete transmitido
rg_base_64 Alfanumerico No Representación grafica del documento en base 64
rg_tipo String Si hay información en rg_base_64 Valor determinado HTML O PDF
rg_px_qr array Información de configuración de QR en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x dentro del documento electronico
y numerico Pixeles Posicionamiento en y dentro del documento electronico
size numerico Pixeles Tamaño del qr
rg_px_cufe array Información de configuración de CUFE en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x(abscisas) en el plano cartesiano en el cuarto cuadrante, es decir las columnas empezando de 0.
y numerico Pixeles Posicionamiento en y(ordenadas) en el plano cartesiano en el cuarto cuadrante, es decir las filas empezando de 0.
size numerico Pixeles Tamaño de la letra
notificacion array Información de configuración de envio de notificaciones No
Nombre Tipo Especificaciones Descripcion
es_automatico String Determinado SI o NO
correo_obligado String Correo electronico Dirección de correo del obligado
asunto String Minimo 80 caracteres Texto para el envio de las notificaciones
con_copia String Minimo 5 caracteres Dirección(s) de correo electronico, separadas por coma
Ejemplo de entrada una nota debito
								
{
  "nota_debito": [
    {
      "encabezado": {
        "id_nota_debito": "14030",
        "fecha": "2019-03-05",
        "hora": "10:28:00",
        "nota": [
          "{'son':'XXXXXX'}"
        ],
        "moneda": "COP",
        "tipo_nota_debito": 3
      },
      "informacion_factura": {
        "id_factura": "990001076",
        "codigo_unico_factura": "7ffd8ff81950fb237e60ec5633d8bd10623de4ea",
        "fecha": "2019-02-18",
        "hora": "10:28:00"
      },
      "informacion_adquiriente": {
        "tipo_contribuyente": 1,
        "tipo_regimen": 0,
        "tipo_identificacion": 13,
        "identificacion": 95000001,
        "correo_electronico": "bb@disenamos.com",
        "numero_movil": "2010101",
        "nombre": {
          "razon_social": "Diseñamos",
          "primer_nombre": "",
          "segundo_nombre": "",
          "apellido": ""
        },
        "departamento": "Amazonas",
        "zona": "",
        "ciudad": "LETICIA",
        "direccion": "Calle 567 89-00",
        "pais": "CO",
        "RUT": {
          "resp_calidades_atributos": [
            "O-03",
            "O-07",
            "O-11",
            "O-13",
            "O-17"
          ],
          "usuario_aduanero": [
            ""
          ]
        }
      },
      "detalle_factura": [
       {
          "numero_linea": 1,
          "cantidad": 1,
          "valor_unitario": "11000.00",
          "descripcion": "producto uno",
          "impuestos_detalle": {
            "codigo_impuesto": 1,
            "porcentaje_impuesto": "19.00",
            "valor_base_impuesto": "0.00",
            "valor_impuesto": "0.00"
          },
          "valor_total_detalle": "11000.00",
          "valores_unitarios": {
            "valor_impuesto": "11000.00",
            "valor_a_pagar": "11000.00"
          },
          "valor_total_a_pagar": "11000.00"
        }
      ],
      "impuestos": [
         {
          "codigo_impuesto": 1,
          "porcentaje_impuesto": "19.00",
          "valor_base_calculo_impuesto": "0.00",
          "valor_total_impuesto": "0.00"
        }
      ],
      "valor_nota_debito": {
        "valor_base": "11000.00",
        "valor_base_calculo_impuestos": "11000.00",
        "valor_total_impuesto_1": "0.00",
        "valor_total_impuesto_2": "0.00",
        "valor_total_impuesto_3": "0.00",
        "valor_total_impuesto_4": "0.00",
        "total_nota_debito": "11000.00"
      }
    }
  ],
  "generalidades": {
    "version": 2,
    "identificador_transmision": "95000001_20190220170822",
    "rg_tipo": "",
    "rg_base_64": "",
    "rg_px_qr": {
      "x": "",
      "y": "",
      "size": ""
    },
    "rg_px_cufe": {
      "x": "",
      "y": "",
      "size": ""
    },
    "notificacion": {
      "es_automatico": "",
      "correo_obligado": "",
      "asunto": "",
      "con_copia": ""
    }
  }
}								
							  
Salida Exitosa
	
{
    "codigo_error": 0,
    "descripcion_error": "OK",
    "tiempo_ejecucion": 0.0050101280212402344,
    "transaccion": "5b577cb3614b0",
    "resultado": {
        "id_nota_debito": "1012",
        "id_factura": "FA125689",
        "codigo_unico_factura": "12036fc4932f2ba503e9bb7fa607900fc98c3c954",
        "url_representacion_xml": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xml",
        "url_representacion_grafica": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf"
    }
}
							  								  

Salida con errores de semantica
	
{
    "codigo_error": 400,
    "descripcion_error": "Hay un problema con su solicitud",
    "tiempo_ejecucion": 0.0048849582672119141,
    "transaccion": "5b577dc21904a",
    "resultado": [
        {
            "propiedad": "nota_debito[0].encabezado.tipo_nota_debito",
            "descripcion": "Does not have a value in the enumeration [1,2,3]"
        },
        {
            "propiedad": "nota_debito[0].informacion_adquiriente.tipo_identificacion",
            "descripcion": "Does not have a value in the enumeration [11,12,13,21,22,31,41,42,1]"
        }
    ]
}
							  								  

Salida con errores HTTP
	


								
							  
curl -X POST \
  https://api-pruebas.afacturar.com/api/v2/nota_debito \
  -H 'accept: application/json' \
  -H 'authorization: Bearer token_obligado' \
  -H 'cache-control: no-cache' \
  -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
  -H 'postman-token: c304c2f7-b4fb-a1c6-5e20-6892a5444495' \
  -F 'data={
  "nota_debito": [
    {
      "encabezado": {
        "id_nota_debito": "14030",
        "fecha": "2019-03-05",
        "hora": "10:28:00",
        "nota": [
          "{'\''son'\'':'\''XXXXXX'\''}"
        ],
        "moneda": "COP",
        "tipo_nota_debito": 3
      },
      "informacion_factura": {
        "id_factura": "990001076",
        "codigo_unico_factura": "7ffd8ff81950fb237e60ec5633d8bd10623de4ea",
        "fecha": "2019-02-18",
        "hora": "10:28:00"
      },
      "informacion_adquiriente": {
        "tipo_contribuyente": 1,
        "tipo_regimen": 0,
        "tipo_identificacion": 13,
        "identificacion": 95000001,
        "correo_electronico": "bb@disenamos.com",
        "numero_movil": "2010101",
        "nombre": {
          "razon_social": "Diseñamos",
          "primer_nombre": "",
          "segundo_nombre": "",
          "apellido": ""
        },
        "departamento": "Amazonas",
        "zona": "",
        "ciudad": "LETICIA",
        "direccion": "Calle 567 89-00",
        "pais": "CO",
        "RUT": {
          "resp_calidades_atributos": [
            "O-03",
            "O-07",
            "O-11",
            "O-13",
            "O-17"
          ],
          "usuario_aduanero": [
            ""
          ]
        }
      },
      "detalle_factura": [
       {
          "numero_linea": 1,
          "cantidad": 1,
          "valor_unitario": "11000.00",
          "descripcion": "producto uno",
          "impuestos_detalle": {
            "codigo_impuesto": 1,
            "porcentaje_impuesto": "19.00",
            "valor_base_impuesto": "0.00",
            "valor_impuesto": "0.00"
          },
          "valor_total_detalle": "11000.00",
          "valores_unitarios": {
            "valor_impuesto": "11000.00",
            "valor_a_pagar": "11000.00"
          },
          "valor_total_a_pagar": "11000.00"
        }
      ],
      "impuestos": [
         {
          "codigo_impuesto": 1,
          "porcentaje_impuesto": "19.00",
          "valor_base_calculo_impuesto": "0.00",
          "valor_total_impuesto": "0.00"
        }
      ],
      "valor_nota_debito": {
        "valor_base": "11000.00",
        "valor_base_calculo_impuestos": "11000.00",
        "valor_total_impuesto_1": "0.00",
        "valor_total_impuesto_2": "0.00",
        "valor_total_impuesto_3": "0.00",
        "valor_total_impuesto_4": "0.00",
        "total_nota_debito": "11000.00"
      }
    }
  ],
  "generalidades": {
    "version": 2,
    "identificador_transmision": "95000001_20190220170822",
    "rg_tipo": "",
    "rg_base_64": "",
    "rg_px_qr": {
      "x": "",
      "y": "",
      "size": ""
    },
    "rg_px_cufe": {
      "x": "",
      "y": "",
      "size": ""
    },
    "notificacion": {
      "es_automatico": "",
      "correo_obligado": "",
      "asunto": "",
      "con_copia": ""
    }
  }
}' \
  -F documento_obligado=830020470
  

Especificación detallada para recibir información de factura para ser procesadas en la plataforma


Histórico de cambios

Versión Cambios Fecha de liberación
1.3 Adicionar nuevas variables al Json, estas no son obligatorias.
facturas[0].detalle_factura[i].valores_unitarios, este grupo de variables es utilizada la para representación grafica
facturas[0].detalle_factura[i].valor_total_a_pagar, esta variable es utilizada la para representación grafica
generalidades.rg_tipo, generalidades.rg_base_64, generalidades.rg_px_qr, generalidades.rg_px_cufe, estas variables se utilizan cuando el integrador envia la representación grafica en formato PDF encriptado en base 64 y SOFE se encarga de insertar el CUFE y el QR, en la posición dada en loas variables. El tamaño del QR siempre es de 3X3 cm.
generalidades.notificacion, este grupo de variables se utilizan para el envio de la notificación al adquiriente, en una de ellas se determina si es envio autmatico o no. Si es automatico es necesario llenar la información del correo electronico del obligado.
05 de Marzo de 2019
1.2 Adicionar en encabezado el fecha_vencimiento
Adicionar en encabezado el numero_orden
Adicionar en encabezado el prefijo
Adicionar en valor_factura el valor_total_impuesto_1
Adicionar en valor_factura el valor_total_impuesto_2
Adicionar en valor_factura el valor_total_impuesto_3
Adicionar en valor_factura el valor_total_impuesto_4
27 de Agosto de 2018
1.1 Generar documentación de la factura de contingencia 24 de Julio de 2018

POST /factura_contingencia


documento_obligado:
	000000000

data:
	{
	"facturas":[{
		"encabezado":{
			"id_factura":"",
			"fecha":"",
			"hora":"",
			"nota":["{'':'','':'','':'','':'','':'','':''}"],
			"moneda":"",
			"tipo_factura":"",
			"tipo_de_pago":"",
			"numero_resolucion_facturacion":"",
			"fecha_vencimiento":"",
			"numero_orden":"",
			"prefijo":""
		},
		"informacion_factura_contingencia":{
			"id_factura_contingencia":"",
			"copia_factura":"",
			"fecha_contingencia":""
		},
		"informacion_adquiriente":{
			"tipo_contribuyente":"",
			"tipo_regimen":"",
			"tipo_identificacion":"",
			"identificacion":"",
			"correo_electronico":"",
			"numero_movil":"",
			"nombre":{
				"razon_social":"",
				"primer_nombre":"",
				"segundo_nombre":"",
				"apellido":""
			},
			"departamento":"",
			"zona":"",
			"ciudad":"",
			"direccion":"",
			"pais":"",
			"RUT":{
				"resp_calidades_atributos":[{}],
				"usuario_aduanero":[{}]
			}
		},
		"detalle_factura":[{
			"numero_linea":"",
			"cantidad":"",
			"valor_unitario":"",
			"descripcion":"",
			"descuento":{
				"porcentaje_descuento":"",
				"valor_descuento":""
			},
			"impuestos_detalle":{
				"codigo_impuesto":"",
				"porcentaje_impuesto":"",
				"valor_base_impuesto":"",
				"valor_impuesto":""
			},
			"valor_total_detalle":"",
			"valores_unitarios":{
				"valor_descuento":"",
				"valor_impuesto":"",
				"valor_con_descuento":"",
				"valor_a_pagar":""
			},
			"valor_total_a_pagar":""
		}],
		"impuestos":[{
			"codigo_impuesto":"",
			"porcentaje_impuesto":"",
			"valor_base_calculo_impuesto":"",
			"valor_total_impuesto":""
		}],
		"valor_factura":{
			"valor_base":"",
			"valor_base_calculo_impuestos":"",
			"valor_anticipo":"",
			"valor_descuento_total":"",
			"valor_total_impuesto_1":"0.00",
			"valor_total_impuesto_2":"0.00",
			"valor_total_impuesto_3":"0.00",
			"valor_total_impuesto_4":"0.00",
			"total_factura":""
		}
		}
	],
	"generalidades":{
		"version":"2",
		"identificador_transmision":"",
		"rg_tipo":"",
		"rg_base_64":"",
		"rg_px_qr":	{
				"x":"",
				"y":"",
				"size":""
		},
		"rg_px_cufe":	{
				"x":"",
				"y":"",
				"size":""
		},
		"notificacion":	{
				"es_automatico":"",
				"correo_obligado":"",
				"asunto":"",
				"con_copia":""
		}
	}
}

						

URI Parameters

documento_obligadoIdentificación del obligado
dataLa tabla siguiente muestra la explicación de data
Nombre Descripcion
facturas
Nombre Descripcion
encabezado
Nombre Tipo Especificaciones Obligatorio Descripcion
id_factura String Mínimo 1 caracteres Si Identificador del documento: Número de factura de venta. Incluye prefijo + consecutivo de factura. No se permiten caracteres adicionales como espacios o guiones.
fecha Fecha AAAA-MM-DD Si Fecha de emisión de la factura a efectos fiscales.
hora Hora HH24:MM:SS Si Hora de emisión de la factura
nota array El listado de la estandarización de las variables se puede ver aqui SI

Las notas se van a distribuir en un formato similar a JSON, en el cual se cambia la comilla doble por sencilla, tanto en el nombre de la variable, como en su valor, esto debido a la restricción de algunos caracteres especiales que no son soportados en este campo.

Este JSON termina siendo un STRING que se debe enviar dividido en las posiciones del array de nota, de acuerdo con las restricciones que defina la DIAN:

A la fecha (2019-01-11) existe una restricción de enviar como mínimo 15 caracteres(*)

La estructura a utilizar es:

{'variable_1': 'valor_1', 'variable_2':'valor_2'}

Ejemplos:

Enviar valores nulos o vacíos

nota[0] = “{‘variable_1': 'null', 'variable_2':'valor_2', 'variable_3':''}”

División del en varias posiciones del array

nota[0] = “{‘variable_1': 'null', 'variab”

nota[1] = “le_2':'valor_2', 'variable_3':''}”

El API genera la concatenación del STRING y lo convierte a formato JSON y realiza la respectiva validación.

Hay que tener en cuenta que los caracteres (',\', \,) no se deben enviar, porque no son soportados en el API.

Si alguna variable es diferente a las del listado de especificaciones, se debe consultar con el personal de operación de Teleinte S.A.S, para realizar la respectiva validación, y en caso que no exista una variable, se estudiará el caso para determinar la adición o no de la variable que cumpla con la descripción requerida.

(*) Estas restricciones pueden cambiar en cualquier momento por parte de la DIAN, de acuerdo al nuevo proceso que estandarización y validación que están estableciendo.

moneda Parametrizado COP- Colombia, USD - dolares. Inf adicional Ver Si Divisa consolidada aplicable a toda la factura
tipo_factura Parametrizado 1= Factura de venta
2= Factura de exportación
3= Factura de contingencia
Si Código de tipo de documento autorizado para efectos tributarios
tipo_de_pago Parametrizado 10 = Efectivo
20 = Cheque
41 = Transferencia bancaría
42 = Consignación bancaría
Si Medios de pago
numero_resolucion_facturacion String Minimo 5 caracteres Si Número de resolución entregado por la DIAN, para la facturación electronica
fecha_vencimiento Date AAAA-MM-DD No Fecha de vencimiento
numero_orden String Minimo 3 caracteres No Número de orden
prefijo String Minimo 3 caracteres No Prefijo de facturación
informacion_factura_contingencia
Nombre Tipo Especificaciones Obligatorio Descripcion
id_factura_contingencia String Minimo de 3 caracteres Si Identificador manual factura contingencia.
copia_factura Boleano 1 ó 0 Si Indicar si la factura ha sido transcrita de manera manual
fecha_contingencia Si Fecha en la que fue realizada la factura de contingencia (manual)
informacion_adquiriente
Nombre Tipo Especificaciones Obligatorio Descripcion
tipo_contribuyente Parametrizado 1= Persona juridica
2= Persona natural
Si Tipo de documento de identificación de persona
tipo_regimen Parametrizado 0= Simplificado
2= Común
Si Régimen al que pertenece
tipo_identificacion Parametrizado 11= Registro civil
12= Tarjeta de identidad
13= Cedula ciudadania
21= Tarjeta de extranjería
22= Cedula de extranjería
31= NIT
41= Pasaporte
42= Documento de identificación extranjero
Si Tipo de identificación Tributaria o similar
identificacion Numérico 1...n Si Número completo de Identificación Tributaria o similar
correo_electronico Email xxxx@xx.xx Si Dirección de correo electronico, uilizado para el envio de notificaciones
numero_movil String 3111111111 No Número de móvil para el envio de notificaciones
nombre array Depende del tipo de contribuyenteDepende del tipo de contribuyente.
Persona juridica {razon_social}.
Persona natural {primer_nombre, segundo_nombre, apellidos}.
Si
Nombre Tipo Especificaciones Obligatorio Descripcion
razon_social Alfanumérico Mínimo 3 caracteres Opcional dependiendo el tipo de contribuyente. Si es NIT es obligatorio Nombre comercial
primer_nombre Alfabético Mínimo 3 caracteres Si
segundo_nombre Alfabético No
apellido Alfabético Mínimo 3 caracteres Si
departamento Alfabético Mínimo 3 caracteres Si
zona Alfabético Mínimo 3 caracteres Si Localidad, barrio, entre otros
ciudad Alfabético Mínimo 3 caracteres Si
direccion Alfabético Mínimo 2 caracteres Si Texto libre para establecer la dirección. No se recomienda detallar en otros campos más detallados conceptos como número de edificio, letra, escalera, etc.
pais Parametrizado Estandar ISO 3166-1, formato Alpha-2 code. Inf adicional Ver Si
RUT array Información del RUT - Registro Unico Tributario. Responsabilidades, Calidades y Atributos, numeral 53 y Usuarios aduaneros, numeral 54. Si
Nombre Tipo Especificaciones Obligatorio Descripcion
resp_calidades_atributos array Parametrizado.Inf adicional Ver Si Lista de codigos de las responsabilidades, calidades y atributos registrados en el RUT, numeral 53
usuario_aduanero array Parametrizado.Inf adicional Ver No Lista de codigos usuarios aduaneros registrados en el RUT, numeral 54
detalle_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
numero_linea Numerico 1...n Si Número de Línea
cantidad Numerico 1...n Si Cantidad del artículo solicitado. Número de unidades servidas/prestadas.
valor_unitario String patron decimal Separador con punto, dos decimales Si Precio unitario de la unidad de bien o servicio servido/prestado,en la moneda indicada en la Cabecera de la Factura. Siempre sin valor_impuestos
descripcion Alfanumérico Mínimo de 2 caracteres Si Descripción del artículo que pertenece a la línea de la factura
descuento array Información de descuento No
Nombre Tipo Especificaciones Obligatorio Descripcion
porcentaje_descuento String patron decimal Separador con punto, dos decimales No Porcentaje de descuento del detalle
valor_descuento String patron decimal Separador con punto, dos decimales No Valor de descuento efectuado al detalle
impuestos_detalle array Información de impuesto por detalle Si
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto del detalle
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido a la linea de la factura
valor_base_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
valor_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
valor_total_detalle String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
valores_unitarios array Información de valores unitarios Si
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_descuento
(VD)
String patron decimal Separador con punto, dos decimales No Valor del descuento por producto o servicio
valor_impuesto
VImp = (VU * %Imp)
String patron decimal Separador con punto, dos decimales No Importe del impuesto retenido por producto o servicio
valor_con_descuento
(VU-CVD)
String patron decimal Separador con punto, dos decimales No Valor unitario del producto o servicio menos el descuento
valor_a_pagar
(VU-VD)+VImp
String patron decimal Separador con punto, dos decimales No Valor a pagar por producto o servicio
valor_total_a_pagar
((VU-VD)*Cant)+VImp
String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
impuestos
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Número de importe del impuesto retenido
valor_base_calculo_impuesto String patron decimal Separador con punto, dos decimales Si Base Imponible sobre la que se calcula la retención de impuesto
valor_total_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_base String patron decimal Separador con punto, dos decimales Si Total Importe bruto antes de valor_impuestos
valor_base_calculo_impuestos String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_anticipo String patron decimal Separador con punto, dos decimales No Valor de los anticipos efectuados a la factura
valor_descuento_total String patron decimal Separador con punto, dos decimales No Valor de descuento aplicado a la factura
valor_total_impuesto_1 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de IVA
valor_total_impuesto_2 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto al consumo
valor_total_impuesto_3 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de ICA
valor_total_impuesto_4 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto nacional al consumo
total_factura String patron decimal Separador con punto, dos decimales Si Total importe bruto +Total valor_impuestos
generalidades
Nombre Tipo Obligatorio Descripcion
version Decimal Si Identificación consecutiva de la especificación
identificador_transmision Alfanumerico No Código único para identificar el paquete transmitido
rg_base_64 Alfanumerico No Representación grafica del documento en base 64
rg_tipo String Si hay información en rg_base_64 Valor determinado HTML O PDF
rg_px_qr array Información de configuración de QR en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x dentro del documento electronico
y numerico Pixeles Posicionamiento en y dentro del documento electronico
size numerico Pixeles Tamaño del qr
rg_px_cufe array Información de configuración de CUFE en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x(abscisas) en el plano cartesiano en el cuarto cuadrante, es decir las columnas empezando de 0.
y numerico Pixeles Posicionamiento en y(ordenadas) en el plano cartesiano en el cuarto cuadrante, es decir las filas empezando de 0.
size numerico Pixeles Tamaño de la letra
notificacion array Información de configuración de envio de notificaciones No
Nombre Tipo Especificaciones Descripcion
es_automatico String Determinado SI o NO
correo_obligado String Correo electronico Dirección de correo del obligado
asunto String Minimo 80 caracteres Texto para el envio de las notificaciones
con_copia String Minimo 5 caracteres Dirección(s) de correo electronico, separadas por coma
Ejemplo de entrada una factura
								
documento_obligado: 830000000
data:{
"facturas":[{
    "encabezado":{
        "id_factura":"990005011",
        "fecha":"2019-03-05",
        "hora":"09:00:47",
        "nota": [
          "'son':'XXXXXX','vr_rte_ica':'1500.00','pct_rte_ica':'0.00','vr_rte_iva':'500.00','pct_rte_iva':'0.00','vr_rte_fte':'0.00','pct_rte_fte':'0.00'}"
        ],
        "moneda":"COP",
        "tipo_factura":3,
		"tipo_de_pago":10,
		"numero_resolucion_facturacion":"9000000032882632",
		"fecha_vencimiento":"",
		"numero_orden":"",
		"prefijo":""
    },
    "informacion_factura_contingencia":{
        "id_factura_contingencia":"1010",
        "copia_factura":"true",
        "fecha_contingencia":"2018-04-04"
	},
    "informacion_adquiriente":{
        "tipo_contribuyente":1,
        "tipo_regimen":2,
        "tipo_identificacion":31,
        "identificacion":831017049,
	    "correo_electronico":"info@pruebas.co",
        "numero_movil":"3015663266",
        "nombre":{
            "razon_social":"telefonia S.A.S",
            "primer_nombre":"",
            "segundo_nombre":"",
            "apellido":""
            },
        "departamento":"Bogota",
        "zona":"Engativa",
        "ciudad":"Bogota",
        "direccion":"Trv. 71 bis 74 a 07",
        "pais":"CO",
        "RUT":{
            "resp_calidades_atributos":[
              "O-03","O-05","O-07","O-10","O-13"
            ],
            "usuario_aduanero":[
              "A-22","A-23"
            ]
        }
        },
    "detalle_factura":[
	{
			"numero_linea":1,
			"cantidad":10,
			"valor_unitario":"1500.00",
			"descripcion":"Producto uno",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"5000.00"
			},
			"impuestos_detalle":{
				"codigo_impuesto":1,
				"porcentaje_impuesto":"19.00",
				"valor_base_impuesto":"10000.00",
				"valor_impuesto":"1900.00"
			},
			"valor_total_detalle":"15000.00",
			"valores_unitarios":{
				"valor_descuento":"500.00",
				"valor_impuesto":"190.00",
				"valor_con_descuento":"1000.00",
				"valor_a_pagar":"1190.00"
			},
			"valor_total_a_pagar":"11900.00"
		},
		{
			"numero_linea":2,
			"cantidad":5,
			"valor_unitario":"45000.00",
			"descripcion":"Producto dos",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"0.00"
			},
			"impuestos_detalle":{
				"codigo_impuesto":1,
				"porcentaje_impuesto":"5.00",
				"valor_base_impuesto":"225000.00",
				"valor_impuesto":"11250.00"
			},
			"valor_total_detalle":"225000.00",
			"valores_unitarios":{
				"valor_descuento":"0.00",
				"valor_impuesto":"2250.00",
				"valor_con_descuento":"45000.00",
				"valor_a_pagar":"47250.00"
			},
			"valor_total_a_pagar":"236250.00"
		},
		{
			"numero_linea":3,
			"cantidad":2,
			"valor_unitario":"18000.00",
			"descripcion":"Producto 3",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"0.00"
			},
			"impuestos_detalle":{
			"codigo_impuesto":1,
				"porcentaje_impuesto":"19.00",
				"valor_base_impuesto":"36000.00",
				"valor_impuesto":"0.00"
			},
			"valor_total_detalle":"36000.00",
			"valores_unitarios":{
				"valor_descuento":"0.00",
				"valor_impuesto":"0.00",
				"valor_con_descuento":"18000.00",
				"valor_a_pagar":"18000.00"
			},
			"valor_total_a_pagar":"36000.00"
		}
    ],
    "impuestos":[{
		"codigo_impuesto":1,
		"valor_base_calculo_impuesto":"10000.00",
		"valor_total_impuesto":"1900.00",
		"porcentaje_impuesto":"19.00"
	},
	{
		"codigo_impuesto":1,
		"valor_base_calculo_impuesto":"225000.30",
		"valor_total_impuesto":"11250.30",
		"porcentaje_impuesto":"5.00"
	}
    ],
    "valor_factura":{
	"valor_base":"276000.00",
		"valor_base_calculo_impuestos":"271000.00",
		"valor_anticipo":"0.00",
		"valor_descuento_total":"5000.00",
		"valor_total_impuesto_1":"13150.00",
		"valor_total_impuesto_2":"0.00",
		"valor_total_impuesto_3":"0.00",
		"valor_total_impuesto_4":"0.00",
		"total_factura":"284150.00"
        }
    }],
	"generalidades":{
		"version":2,
		"identificador_transmision":"FC_001",
		"rg_tipo":"",
		"rg_base_64":"",
		"rg_px_qr":	{
				"x":"",
				"y":"",
				"size":""
		},
		"rg_px_cufe":	{
				"x":"",
				"y":"",
				"size":""
		},
		"notificacion":	{
				"es_automatico":"",
				"correo_obligado":"",
				"asunto":"",
				"con_copia":""
		}
    }
}								
							  
Salida Exitosa
	
{
    "codigo_error": 0,
    "descripcion_error": "OK",
    "tiempo_ejecucion": 0.0073328018188476562,
    "transaccion": "5b57918594a19",
    "resultado": {
        "cufe": "31dfb2f342c428636a197a96eaa3088a997048fe",
        "id_factura": "1104",
        "id_factura_contingencia": "1010",
        "url_representacion_xml": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xml",
        "url_representacion_grafica": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf"
    }
}
							  								  

Salida con errores de semantica
	
{
    "codigo_error": 400,
    "descripcion_error": "Hay un problema con su solicitud",
    "tiempo_ejecucion": 0.0059170722961425781,
    "transaccion": "5b579208898f7",
    "resultado": [
        {
            "propiedad": "facturas[0].encabezado.tipo_de_pago",
            "descripcion": "Does not have a value in the enumeration [10,20,41,42]"
        },
        {
            "propiedad": "facturas[0].informacion_adquiriente.tipo_contribuyente",
            "descripcion": "String value found, but a number is required"
        },
        {
            "propiedad": "facturas[0].informacion_adquiriente.tipo_contribuyente",
            "descripcion": "Does not have a value in the enumeration [1,2]"
        }
    ]
}
							  								  

Salida con errores HTTP
	
{
    "codigo_error": 500,
    "descripcion_error": "Unauthenticated."
}
								
							  
cULR

Si usted usa cURL para consumir el API, usted debe incluir la URI con doble comilla para enviar los multiples parametros a transmitir.

Si requiere ejemplos en otras tecnologías (HTTP, C(LibCurl, C#, GO, Java, JavaScript, NodeJS, ObjectiveC, OCaml, PHP, Python, Ruby, Shell, Swift) envienos la solicitud a info@afacturar.com

curl -X POST \
  https://api-pruebas.afacturar.com/api/v2/factura_contingencia \
  -H 'accept: application/json' \
  -H 'authorization: Bearer token_obligado' \
  -H 'cache-control: no-cache' \
  -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
  -H 'postman-token: 04048a90-e629-f94c-fb56-d7a767201288' \
  -F 'data={
"facturas":[{
    "encabezado":{
        "id_factura":"990005011",
        "fecha":"2019-03-05",
        "hora":"09:00:47",
        "nota": [
          "'\''son'\'':'\''XXXXXX'\'','\''vr_rte_ica'\'':'\''1500.00'\'','\''pct_rte_ica'\'':'\''0.00'\'','\''vr_rte_iva'\'':'\''500.00'\'','\''pct_rte_iva'\'':'\''0.00'\'','\''vr_rte_fte'\'':'\''0.00'\'','\''pct_rte_fte'\'':'\''0.00'\''}"
        ],
        "moneda":"COP",
        "tipo_factura":3,
		"tipo_de_pago":10,
		"numero_resolucion_facturacion":"9000000032882632",
		"fecha_vencimiento":"",
		"numero_orden":"",
		"prefijo":""
    },
    "informacion_factura_contingencia":{
        "id_factura_contingencia":"1010",
        "copia_factura":"true",
        "fecha_contingencia":"2018-04-04"
	},
    "informacion_adquiriente":{
        "tipo_contribuyente":1,
        "tipo_regimen":2,
        "tipo_identificacion":31,
        "identificacion":831017049,
	    "correo_electronico":"info@pruebas.co",
        "numero_movil":"3015663266",
        "nombre":{
            "razon_social":"telefonia S.A.S",
            "primer_nombre":"",
            "segundo_nombre":"",
            "apellido":""
            },
        "departamento":"Bogota",
        "zona":"Engativa",
        "ciudad":"Bogota",
        "direccion":"Trv. 71 bis 74 a 07",
        "pais":"CO",
        "RUT":{
            "resp_calidades_atributos":[
              "O-03","O-05","O-07","O-10","O-13"
            ],
            "usuario_aduanero":[
              "A-22","A-23"
            ]
        }
        },
    "detalle_factura":[
	{
			"numero_linea":1,
			"cantidad":10,
			"valor_unitario":"1500.00",
			"descripcion":"Producto uno",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"5000.00"
			},
			"impuestos_detalle":{
				"codigo_impuesto":1,
				"porcentaje_impuesto":"19.00",
				"valor_base_impuesto":"10000.00",
				"valor_impuesto":"1900.00"
			},
			"valor_total_detalle":"15000.00",
			"valores_unitarios":{
				"valor_descuento":"500.00",
				"valor_impuesto":"190.00",
				"valor_con_descuento":"1000.00",
				"valor_a_pagar":"1190.00"
			},
			"valor_total_a_pagar":"11900.00"
		},
		{
			"numero_linea":2,
			"cantidad":5,
			"valor_unitario":"45000.00",
			"descripcion":"Producto dos",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"0.00"
			},
			"impuestos_detalle":{
				"codigo_impuesto":1,
				"porcentaje_impuesto":"5.00",
				"valor_base_impuesto":"225000.00",
				"valor_impuesto":"11250.00"
			},
			"valor_total_detalle":"225000.00",
			"valores_unitarios":{
				"valor_descuento":"0.00",
				"valor_impuesto":"2250.00",
				"valor_con_descuento":"45000.00",
				"valor_a_pagar":"47250.00"
			},
			"valor_total_a_pagar":"236250.00"
		},
		{
			"numero_linea":3,
			"cantidad":2,
			"valor_unitario":"18000.00",
			"descripcion":"Producto 3",
			"descuento":{
				"porcentaje_descuento":"0",
				"valor_descuento":"0.00"
			},
			"impuestos_detalle":{
			"codigo_impuesto":1,
				"porcentaje_impuesto":"19.00",
				"valor_base_impuesto":"36000.00",
				"valor_impuesto":"0.00"
			},
			"valor_total_detalle":"36000.00",
			"valores_unitarios":{
				"valor_descuento":"0.00",
				"valor_impuesto":"0.00",
				"valor_con_descuento":"18000.00",
				"valor_a_pagar":"18000.00"
			},
			"valor_total_a_pagar":"36000.00"
		}
    ],
    "impuestos":[{
		"codigo_impuesto":1,
		"valor_base_calculo_impuesto":"10000.00",
		"valor_total_impuesto":"1900.00",
		"porcentaje_impuesto":"19.00"
	},
	{
		"codigo_impuesto":1,
		"valor_base_calculo_impuesto":"225000.30",
		"valor_total_impuesto":"11250.30",
		"porcentaje_impuesto":"5.00"
	}
    ],
    "valor_factura":{
	"valor_base":"276000.00",
		"valor_base_calculo_impuestos":"271000.00",
		"valor_anticipo":"0.00",
		"valor_descuento_total":"5000.00",
		"valor_total_impuesto_1":"13150.00",
		"valor_total_impuesto_2":"0.00",
		"valor_total_impuesto_3":"0.00",
		"valor_total_impuesto_4":"0.00",
		"total_factura":"284150.00"
        }
    }],
	"generalidades":{
		"version":2,
		"identificador_transmision":"FC_001",
		"rg_tipo":"",
		"rg_base_64":"",
		"rg_px_qr":	{
				"x":"",
				"y":"",
				"size":""
		},
		"rg_px_cufe":	{
				"x":"",
				"y":"",
				"size":""
		},
		"notificacion":	{
				"es_automatico":"",
				"correo_obligado":"",
				"asunto":"",
				"con_copia":""
		}
    }
}' \
  -F documento_obligado=830020470							  

Especificación detallada para recibir información de factura para ser procesadas en la plataforma


Histórico de cambios

Versión Cambios Fecha de liberación
1 Generar documentación de la factura de mandato 21 de Febrero de 2019

POST /factura_mandato

documento_obligado:
	000000000

data:
{
	"facturas":[{
		"encabezado":{
			"id_factura":"",
			"fecha":"",
			"hora":"",
			"nota":["{'':'','':'','':'','':'','':'','':''}"],
			"moneda":"",
			"tipo_factura":"",
			"tipo_de_pago":"",
			"numero_resolucion_facturacion":"",
			"fecha_vencimiento":"",
			"numero_orden":"",
			"prefijo":""
		},
		"informacion_mandantes":[{
			"tipo_contribuyente":"",
			"tipo_regimen":"",
			"tipo_identificacion":"",
			"identificacion":"",
			"correo_electronico":"",
			"numero_movil":"",
			"nombre":{
				"razon_social":"",
				"primer_nombre":"",
				"segundo_nombre":"",
				"apellido":""
			},
			"departamento":"",
			"zona":"",
			"ciudad":"",
			"direccion":"",
			"pais":"",
			"RUT":{
				"resp_calidades_atributos":[{}],
				"usuario_aduanero":[{}]
			},
			"contratos":[{
		           "numero":"",
		           "fecha":"",
		           "tipo":""
			}],
		}],
		"informacion_adquiriente":{
			"tipo_contribuyente":"",
			"tipo_regimen":"",
			"tipo_identificacion":"",
			"identificacion":"",
			"correo_electronico":"",
			"numero_movil":"",
			"nombre":{
				"razon_social":"",
				"primer_nombre":"",
				"segundo_nombre":"",
				"apellido":""
				},
			"departamento":"",
			"zona":"",
			"ciudad":"",
			"direccion":"",
			"pais":"",
			"RUT":{
				"resp_calidades_atributos":[{}],
				"usuario_aduanero":[{}]
			}
		},
		"detalle_factura":[{
			"numero_linea":"",
			"cantidad":"",
			"valor_unitario":"",
			"descripcion":"",
			"descuento":{
				"porcentaje_descuento":"",
				"valor_descuento":""
			},
			"impuestos_detalle":{
				"codigo_impuesto":"",
				"porcentaje_impuesto":"",
				"valor_base_impuesto":"",
				"valor_impuesto":""
			},
			"datos_mandante":{
				"numero_contrato":"",
				"identificacion_mandante":"",
				"nombre_mandante":""
			},
			"valor_total_detalle":"",
			"valores_unitarios":{
				"valor_descuento":"",
				"valor_impuesto":"",
				"valor_con_descuento":"",
				"valor_a_pagar":""
			},
			"valor_total_a_pagar":""
		}],
		"impuestos":[{
			"codigo_impuesto":"",
			"porcentaje_impuesto":"",
			"valor_base_calculo_impuesto":"",
			"valor_total_impuesto":""
		}],
		"valor_factura":{
			"valor_base":"",
			"valor_base_calculo_impuestos":"",
			"valor_anticipo":"",
			"valor_descuento_total":"",
			"valor_total_impuesto_1":"0.00",
			"valor_total_impuesto_2":"0.00",
			"valor_total_impuesto_3":"0.00",
			"valor_total_impuesto_4":"0.00",
			"total_factura":""
		}
	}]
	,
	"generalidades":{
		"version":"2",
		"identificador_transmision":"",
		"rg_tipo":"",
		"rg_base_64":"",
		"rg_px_qr":	{
			"x":"",
			"y":"",
			"size":""
		},
		"rg_px_cufe":	{
			"x":"",
			"y":"",
			"size":""
		},
		"notificacion":	{
			"es_automatico":"",
			"correo_obligado":"",
			"asunto":"",
			"con_copia":""
		}
	}
}

						

URI Parameters

documento_obligadoIdentificación del obligado
dataLa tabla siguiente muestra la explicación de data
Nombre Descripcion
facturas
Nombre Descripcion
encabezado
Nombre Tipo Especificaciones Obligatorio Descripcion
id_factura String Mínimo 1 caracteres Si Identificador del documento: Número de factura de venta. Incluye prefijo + consecutivo de factura. No se permiten caracteres adicionales como espacios o guiones.
fecha Fecha AAAA-MM-DD Si Fecha de emisión de la factura a efectos fiscales.
hora Hora HH24:MM:SS Si Hora de emisión de la factura
nota array El listado de la estandarización de las variables se puede ver aqui SI

Las notas se van a distribuir en un formato similar a JSON, en el cual se cambia la comilla doble por sencilla, tanto en el nombre de la variable, como en su valor, esto debido a la restricción de algunos caracteres especiales que no son soportados en este campo.

Este JSON termina siendo un STRING que se debe enviar dividido en las posiciones del array de nota, de acuerdo con las restricciones que defina la DIAN:

A la fecha (2019-01-11) existe una restricción de enviar como mínimo 15 caracteres(*)

La estructura a utilizar es:

{'variable_1': 'valor_1', 'variable_2':'valor_2'}

Ejemplos:

Enviar valores nulos o vacíos

nota[0] = “{‘variable_1': 'null', 'variable_2':'valor_2', 'variable_3':''}”

División del en varias posiciones del array

nota[0] = “{‘variable_1': 'null', 'variab”

nota[1] = “le_2':'valor_2', 'variable_3':''}”

El API genera la concatenación del STRING y lo convierte a formato JSON y realiza la respectiva validación.

Hay que tener en cuenta que los caracteres (',\', \,) no se deben enviar, porque no son soportados en el API.

Si alguna variable es diferente a las del listado de especificaciones, se debe consultar con el personal de operación de Teleinte S.A.S, para realizar la respectiva validación, y en caso que no exista una variable, se estudiará el caso para determinar la adición o no de la variable que cumpla con la descripción requerida.

(*) Estas restricciones pueden cambiar en cualquier momento por parte de la DIAN, de acuerdo al nuevo proceso que estandarización y validación que están estableciendo.

moneda Parametrizado COP- Colombia, USD - dolares. Inf adicional Ver Si Divisa consolidada aplicable a toda la factura
tipo_factura Parametrizado 1= Factura de venta
2= Factura de exportación
3= Factura de contingencia
Si Código de tipo de documento autorizado para efectos tributarios
tipo_de_pago Parametrizado 10 = Efectivo
20 = Cheque
41 = Transferencia bancaría
42 = Consignación bancaría
Si Medios de pago
numero_resolucion_facturacion String Minimo 5 caracteres Si Número de resolución entregado por la DIAN, para la facturación electronica
fecha_vencimiento Date AAAA-MM-DD No Fecha de vencimiento
numero_orden String Minimo 3 caracteres No Número de orden
prefijo String Minimo 3 caracteres No Prefijo de facturación
contratos
Nombre Tipo Especificaciones Obligatorio Descripcion
numero String Mínimo 2 caracteres Si Identificador del contrato de mandato o su equivalente firmado por el vendedor
fecha Fecha AAAA-MM-DD Si Fecha de suscripción del contrato
tipo String Valor definido "Contrato Mandato" Si Tipo o clase el Contrato: de Mandato, en Colombia el Contrato de Consorcio es equivalente al de Unión Temporal y otros similares
informacion_mandantes
Nombre Tipo Especificaciones Obligatorio Descripcion
tipo_contribuyente Parametrizado 1= Persona juridica
2= Persona natural
Si Tipo de documento de identificación de persona
tipo_regimen Parametrizado 0= Simplificado
2= Común
Si Régimen al que pertenece
tipo_identificacion Parametrizado 11= Registro civil
12= Tarjeta de identidad
13= Cedula ciudadania
21= Tarjeta de extranjería
22= Cedula de extranjería
31= NIT
41= Pasaporte
42= Documento de identificación extranjero
Si Tipo de identificación Tributaria o similar
identificacion Numérico 1...n Si Número completo de Identificación Tributaria o similar
correo_electronico Email xxxx@xx.xx Si Dirección de correo electronico, uilizado para el envio de notificaciones
numero_movil String 3111111111 No Número de móvil para el envio de notificaciones
nombre array Depende del tipo de contribuyenteDepende del tipo de contribuyente.
Persona juridica {razon_social}.
Persona natural {primer_nombre, segundo_nombre, apellidos}.
Si
Nombre Tipo Especificaciones Obligatorio Descripcion
razon_social Alfanumérico Mínimo 3 caracteres Opcional dependiendo el tipo de contribuyente. Si es NIT es obligatorio Nombre comercial
primer_nombre Alfabético Mínimo 3 caracteres Si
segundo_nombre Alfabético No
apellido Alfabético Mínimo 3 caracteres Si
departamento Alfabético Mínimo 3 caracteres Si
zona Alfabético Mínimo 3 caracteres Si Localidad, barrio, entre otros
ciudad Alfabético Mínimo 3 caracteres Si
direccion Alfabético Mínimo 2 caracteres Si Texto libre para establecer la dirección. No se recomienda detallar en otros campos más detallados conceptos como número de edificio, letra, escalera, etc.
pais Parametrizado Estandar ISO 3166-1, formato Alpha-2 code. Inf adicional Ver Si
RUT array Información del RUT - Registro Unico Tributario. Responsabilidades, Calidades y Atributos, numeral 53 y Usuarios aduaneros, numeral 54. Si
Nombre Tipo Especificaciones Obligatorio Descripcion
resp_calidades_atributos array Parametrizado.Inf adicional Ver Si Lista de codigos de las responsabilidades, calidades y atributos registrados en el RUT, numeral 53
usuario_aduanero array Parametrizado.Inf adicional Ver No Lista de codigos usuarios aduaneros registrados en el RUT, numeral 54
informacion_adquiriente
Nombre Tipo Especificaciones Obligatorio Descripcion
tipo_contribuyente Parametrizado 1= Persona juridica
2= Persona natural
Si Tipo de documento de identificación de persona
tipo_regimen Parametrizado 0= Simplificado
2= Común
Si Régimen al que pertenece
tipo_identificacion Parametrizado 11= Registro civil
12= Tarjeta de identidad
13= Cedula ciudadania
21= Tarjeta de extranjería
22= Cedula de extranjería
31= NIT
41= Pasaporte
42= Documento de identificación extranjero
Si Tipo de identificación Tributaria o similar
identificacion Numérico 1...n Si Número completo de Identificación Tributaria o similar
correo_electronico Email xxxx@xx.xx Si Dirección de correo electronico, uilizado para el envio de notificaciones
numero_movil String 3111111111 No Número de móvil para el envio de notificaciones
nombre array Depende del tipo de contribuyenteDepende del tipo de contribuyente.
Persona juridica {razon_social}.
Persona natural {primer_nombre, segundo_nombre, apellidos}.
Si
Nombre Tipo Especificaciones Obligatorio Descripcion
razon_social Alfanumérico Mínimo 3 caracteres Opcional dependiendo el tipo de contribuyente. Si es NIT es obligatorio Nombre comercial
primer_nombre Alfabético Mínimo 3 caracteres Si
segundo_nombre Alfabético No
apellido Alfabético Mínimo 3 caracteres Si
departamento Alfabético Mínimo 3 caracteres Si
zona Alfabético Mínimo 3 caracteres Si Localidad, barrio, entre otros
ciudad Alfabético Mínimo 3 caracteres Si
direccion Alfabético Mínimo 2 caracteres Si Texto libre para establecer la dirección. No se recomienda detallar en otros campos más detallados conceptos como número de edificio, letra, escalera, etc.
pais Parametrizado Estandar ISO 3166-1, formato Alpha-2 code. Inf adicional Ver Si
RUT array Información del RUT - Registro Unico Tributario. Responsabilidades, Calidades y Atributos, numeral 53 y Usuarios aduaneros, numeral 54. Si
Nombre Tipo Especificaciones Obligatorio Descripcion
resp_calidades_atributos array Parametrizado.Inf adicional Ver Si Lista de codigos de las responsabilidades, calidades y atributos registrados en el RUT, numeral 53
usuario_aduanero array Parametrizado.Inf adicional Ver No Lista de codigos usuarios aduaneros registrados en el RUT, numeral 54
detalle_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
numero_linea Numerico 1...n Si Número de Línea
cantidad Numerico 1...n Si Cantidad del artículo solicitado. Número de unidades servidas/prestadas.
valor_unitario String patron decimal Separador con punto, dos decimales Si Precio unitario de la unidad de bien o servicio servido/prestado,en la moneda indicada en la Cabecera de la Factura. Siempre sin valor_impuestos
descripcion Alfanumérico Mínimo de 2 caracteres Si Descripción del artículo que pertenece a la línea de la factura
descuento array Información de descuento No
Nombre Tipo Especificaciones Obligatorio Descripcion
porcentaje_descuento String patron decimal Separador con punto, dos decimales No Porcentaje de descuento del detalle
valor_descuento String patron decimal Separador con punto, dos decimales No Valor de descuento efectuado al detalle
impuestos_detalle array Información de impuesto por detalle Si
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto del detalle
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido a la linea de la factura
valor_base_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
valor_impuesto String patron decimal Separador con punto, dos decimales Si Valor del descuento del detalle
datos_mandante array Información del mandante Si
Nombre Tipo Especificaciones Obligatorio Descripcion
numero_contrato String Mínimo 2 caracteres Si Información del identificador del contrato
identificacion_mandante Numérico 1...n Si Identificación del mandante
nombre_mandante String Mínimo 2 caracteres Si Nombre del mandante
valor_total_detalle String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
valores_unitarios array Información de valores unitarios Si
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_descuento
(VD)
String patron decimal Separador con punto, dos decimales No Valor del descuento por producto o servicio
valor_impuesto
VImp = (VU * %Imp)
String patron decimal Separador con punto, dos decimales No Importe del impuesto retenido por producto o servicio
valor_con_descuento
(VU-CVD)
String patron decimal Separador con punto, dos decimales No Valor unitario del producto o servicio menos el descuento
valor_a_pagar
(VU-VD)+VImp
String patron decimal Separador con punto, dos decimales No Valor a pagar por producto o servicio
valor_total_a_pagar
((VU-VD)*Cant)+VImp
String patron decimal Separador con punto, dos decimales Si Coste Total. Resultado: Unidad de Medida x Precio Unidad
impuestos
Nombre Tipo Especificaciones Obligatorio Descripcion
codigo_impuesto Parametrizado 01= IVA
02= Impuesto al consumo
03= ICA
04= Impuesto nacional al consumo
Si Es la clase que se utiliza para describir el esquema del impuesto
porcentaje_impuesto String patron decimal Separador con punto, dos decimales Si Número de importe del impuesto retenido
valor_base_calculo_impuesto String patron decimal Separador con punto, dos decimales Si Base Imponible sobre la que se calcula la retención de impuesto
valor_total_impuesto String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_factura
Nombre Tipo Especificaciones Obligatorio Descripcion
valor_base String patron decimal Separador con punto, dos decimales Si Total Importe bruto antes de valor_impuestos
valor_base_calculo_impuestos String patron decimal Separador con punto, dos decimales Si Importe del impuesto retenido
valor_anticipo String patron decimal Separador con punto, dos decimales No Valor de los anticipos efectuados a la factura
valor_descuento_total String patron decimal Separador con punto, dos decimales No Valor de descuento aplicado a la factura
valor_total_impuesto_1 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de IVA
valor_total_impuesto_2 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto al consumo
valor_total_impuesto_3 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto de ICA
valor_total_impuesto_4 String patron decimal Separador con punto, dos decimales Si Valor total del impuesto nacional al consumo
total_factura String patron decimal Separador con punto, dos decimales Si Total importe bruto +Total valor_impuestos
generalidades
Nombre Tipo Obligatorio Descripcion
version Decimal Si Identificación consecutiva de la especificación
identificador_transmision Alfanumerico No Código único para identificar el paquete transmitido
rg_base_64 Alfanumerico No Representación grafica del documento en base 64
rg_tipo String Si hay información en rg_base_64 Valor determinado HTML O PDF
rg_px_qr array Información de configuración de QR en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x dentro del documento electronico
y numerico Pixeles Posicionamiento en y dentro del documento electronico
size numerico Pixeles Tamaño del qr
rg_px_cufe array Información de configuración de CUFE en la representación grafica Si hay información en rg_base_64
Nombre Tipo Especificaciones Descripcion
x numerico Pixeles Posicionamiento en x(abscisas) en el plano cartesiano en el cuarto cuadrante, es decir las columnas empezando de 0.
y numerico Pixeles Posicionamiento en y(ordenadas) en el plano cartesiano en el cuarto cuadrante, es decir las filas empezando de 0.
size numerico Pixeles Tamaño de la letra
notificacion array Información de configuración de envio de notificaciones No
Nombre Tipo Especificaciones Descripcion
es_automatico String Determinado SI o NO
correo_obligado String Correo electronico Dirección de correo del obligado
asunto String Minimo 80 caracteres Texto para el envio de las notificaciones
con_copia String Minimo 5 caracteres Dirección(s) de correo electronico, separadas por coma
Ejemplo de entrada una factura
								
documento_obligado: 830000000
data:{
"facturas":[{
    "encabezado":{
        "id_factura":"1104",
        "fecha":"2018-04-05",
        "hora":"09:00:47",
        "nota":[
            "Factura prueba",
            "Factura prueba Json varias notas",
            "pruebas teleinte-construccion MAFI"
            ],
        "moneda":"COP",
        "tipo_factura":3,
		"tipo_de_pago":10,
		"numero_resolucion_facturacion":"547356756778678",
		"fecha_vencimiento":"",
		"numero_orden":"",
		"prefijo":""
    },
	"contratos":[{
           "numero":"123456",
           "fecha":"2019-01-01",
           "tipo":"mandato"
	}],
	"informacion_mandantes":[{
		"tipo_contribuyente":1,
		"tipo_regimen":2,
		"tipo_identificacion":31,
		"identificacion":"123456789",
		"correo_electronico":"email@pruebas.com",
		"numero_movil":"3111111111",
		"nombre":{
			"razon_social":"Mandante Uno",
			"primer_nombre":"",
			"segundo_nombre":"",
			"apellido":""
			},
		"departamento":"Cundinamarca",
		"zona":"Centro",
		"ciudad":"Bogota",
		"direccion":"Carrera 10 N. 10-10",
		"pais":"",
		"RUT":{
			"resp_calidades_atributos":["O-03","O-05","O-07","O-10","O-13"],
			"usuario_aduanero":["A-22","A-23"]
		}
	}],
    "informacion_adquiriente":{
        "tipo_contribuyente":1,
        "tipo_regimen":2,
        "tipo_identificacion":31,
        "identificacion":831017049,
	      "correo_electronico":"telefonia123.info@pruebas.co",
        "numero_movil":"3015663266",
        "nombre":{
            "razon_social":"telefonia S.A.S",
            "primer_nombre":"",
            "segundo_nombre":"",
            "apellido":""
            },
        "departamento":"Bogota",
        "zona":"Engativa",
        "ciudad":"Bogota",
        "direccion":"Trv. 71 bis 74 a 07",
        "pais":"CO",
        "RUT":{
            "resp_calidades_atributos":[
              "O-03","O-05","O-07","O-10","O-13"
            ],
            "usuario_aduanero":[
              "A-22","A-23"
            ]
        }
        },
    "detalle_factura":[{
        "numero_linea":1,
        "cantidad":560,
        "valor_unitario":"3975.00",
        "descripcion":"SERVICIO DE SOPORTE, ADMINISTRACION MARZO",
        "descuento":{
            "porcentaje_descuento":"10.00",
            "valor_descuento":"222600.00"
            },
        "impuestos_detalle":{
            "codigo_impuesto":1,
            "porcentaje_impuesto":"19.00",
            "valor_base_impuesto":"2003400.00",
            "valor_impuesto":"380646.00"
            },
			"valor_total_detalle":"2384046.00",
			"datos_mandante":{
				"numero_contrato":"123456",
				"identificacion_mandante":"123456789",
				"nombre_mandante":"Mandante Uno"
			}
	},
	{
        "numero_linea":2,
        "cantidad":250,
        "valor_unitario":"1500.00",
        "descripcion":"SERVICIO DE SOPORTE Junio",
        "descuento":{
            "porcentaje_descuento":"25.00",
            "valor_descuento":"93750.00"
            },
        "impuestos_detalle":{
            "codigo_impuesto":1,
            "porcentaje_impuesto":"19.00",
            "valor_base_impuesto":"281250.00",
            "valor_impuesto":"53437.50"
            },
		"valor_total_detalle":"334687.50",
		"datos_mandante":{
				"numero_contrato":"123456",
				"identificacion_mandante":"123456789",
				"nombre_mandante":"Mandante Uno"
			}
	}
    ],
    "impuestos":[{
        "codigo_impuesto":1,
        "porcentaje_impuesto":"19.00",
        "valor_base_calculo_impuesto":"2284650.00",
        "valor_total_impuesto":"434083.50"
        }
    ],
    "valor_factura":{
	"valor_base":"2601000.00",
	"valor_base_calculo_impuestos":"2601000.00",
	"valor_anticipo":"0.00",
	"valor_descuento_total":"316350.00",
	"valor_total_impuesto_1":"2284650.00",
	"valor_total_impuesto_2":"0.00",
	"valor_total_impuesto_3":"0.00",
	"valor_total_impuesto_4":"0.00",
	"total_factura":"2718733.50"
        }
    }],
	"generalidades":{
		"version":2,
		"identificador_transmision":"FC_001"
    }
}								
							  
Salida Exitosa
	
{
    "codigo_error": 0,
    "descripcion_error": "OK",
    "tiempo_ejecucion": 0.0073328018188476562,
    "transaccion": "5b57918594a19",
    "resultado": {
        "cufe": "31dfb2f342c428636a197a96eaa3088a997048fe",
        "id_factura": "1104",
        "url_representacion_xml": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xml",
        "url_representacion_grafica": "http://xxxxx/files/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf"
    }
}
							  								  

Salida con errores de semantica
	
{
    "codigo_error": 400,
    "descripcion_error": "Hay un problema con su solicitud",
    "tiempo_ejecucion": 0.0059170722961425781,
    "transaccion": "5b579208898f7",
    "resultado": [
        {
            "propiedad": "facturas[0].encabezado.tipo_de_pago",
            "descripcion": "Does not have a value in the enumeration [10,20,41,42]"
        },
        {
            "propiedad": "facturas[0].informacion_adquiriente.tipo_contribuyente",
            "descripcion": "String value found, but a number is required"
        },
        {
            "propiedad": "facturas[0].informacion_adquiriente.tipo_contribuyente",
            "descripcion": "Does not have a value in the enumeration [1,2]"
        }
    ]
}
							  								  

Salida con errores HTTP
	
{
    "codigo_error": 500,
    "descripcion_error": "Unauthenticated."
}
								
							  
cULR

Si usted usa cURL para consumir el API, usted debe incluir la URI con doble comilla para enviar los multiples parametros a transmitir.

Si requiere ejemplos en otras tecnologías (HTTP, C(LibCurl, C#, GO, Java, JavaScript, NodeJS, ObjectiveC, OCaml, PHP, Python, Ruby, Shell, Swift) envienos la solicitud a info@afacturar.com

curl -X POST \
  http://afapi.sinfo.co/api/v2/factura_contingencia \
  -H 'accept: application/json' \
  -H 'authorization: Bearer su-token-asignado-para-pruebas-1071-caracteres' \
  -H 'cache-control: no-cache' \
  -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
  -F documento_obligado=830067814
  -F 'data={
"facturas":[{
    "encabezado":{
        "id_factura":"1104",
        "fecha":"2018-04-05",
        "hora":"09:00:47",
        "nota":[
            "Factura prueba",
            "Factura prueba Json varias notas",
            "pruebas teleinte-construccion MAFI"
            ],
        "moneda":"COP",
        "tipo_factura":3,
	"tipo_de_pago":10,
	"numero_resolucion_facturacion":"547356756778678",
	"fecha_vencimiento":"",
	"numero_orden":"",
	"prefijo":""

    },
    "informacion_factura_contingencia":{
        "id_factura_contingencia":"1010",
        "copia_factura":"true",
        "fecha_contingencia":"2018-04-04"
	},
    "informacion_adquiriente":{
        "tipo_contribuyente":1,
        "tipo_regimen":2,
        "tipo_identificacion":31,
        "identificacion":831017049,
	      "correo_electronico":"telefonia123.info@pruebas.co",
        "numero_movil":"3015663266",
        "nombre":{
            "razon_social":"telefonia S.A.S",
            "primer_nombre":"",
            "segundo_nombre":"",
            "apellido":""
            },
        "departamento":"Bogota",
        "zona":"Engativa",
        "ciudad":"Bogota",
        "direccion":"Trv. 71 bis 74 a 07",
        "pais":"CO",
        "RUT":{
            "resp_calidades_atributos":[
              "O-03","O-05","O-07","O-10","O-13"
            ],
            "usuario_aduanero":[
              "A-22","A-23"
            ]
        }
        },
    "detalle_factura":[{
        "numero_linea":1,
        "cantidad":560,
        "valor_unitario":"3975.00",
        "descripcion":"SERVICIO DE SOPORTE, ADMINISTRACION MARZO",
        "descuento":{
            "porcentaje_descuento":"10.00",
            "valor_descuento":"222600.00"
            },
        "impuestos_detalle":{
            "codigo_impuesto":1,
            "porcentaje_impuesto":"19.00",
            "valor_base_impuesto":"2003400.00",
            "valor_impuesto":"380646.00"
            },
	"valor_total_detalle":"2384046.00"
	},
	{
        "numero_linea":2,
        "cantidad":250,
        "valor_unitario":"1500.00",
        "descripcion":"SERVICIO DE SOPORTE Junio",
        "descuento":{
            "porcentaje_descuento":"25.00",
            "valor_descuento":"93750.00"
            },
        "impuestos_detalle":{
            "codigo_impuesto":1,
            "porcentaje_impuesto":"19.00",
            "valor_base_impuesto":"281250.00",
            "valor_impuesto":"53437.50"
            },
	"valor_total_detalle":"334687.50"
	}
    ],
    "impuestos":[{
        "codigo_impuesto":1,
        "porcentaje_impuesto":"19.00",
        "valor_base_calculo_impuesto":"2284650.00",
        "valor_total_impuesto":"434083.50"
        }
    ],
    "valor_factura":{
	"valor_base":"2601000.00",
	"valor_base_calculo_impuestos":"2284650.00",
	"valor_anticipo":"0.00",
	"valor_descuento_total":"316350.00",
	"valor_total_impuesto_1":"2284650.00",
	"valor_total_impuesto_2":"0.00",
	"valor_total_impuesto_3":"0.00",
	"valor_total_impuesto_4":"0.00",
	"total_factura":"2718733.50"
        }
    }],
	"generalidades":{
		"version":2,
		"identificador_transmision":"FC_001"
    }
}	' \
							  

Lista las trasacciones recibidas para ser procesadas en la DIAN


Histórico de cambios

Versión Cambios Fecha de liberación
1 Generar documentación de transacciones 25 de Febrero de 2019

POST /transacciones_emitidas

documento_obligado:
	000000000

uniqid:
	XXXXXXXXX
						

URI Parameters

documento_obligadoIdentificación del obligado
uniqidIdentificador de la transacción
Ejemplo de entrada una factura
								
documento_obligado: 830000000
uniqid: XXXXXXXXX
								
							  
Salida Exitosa
	
{
    "codigo_error": 0,
    "descripcion_error": "OK",
    "tiempo_ejecucion": 0.0073328018188476562,
    "transaccion": "5b57918594a19",
    "resultado": {
            "fc": "YYYY-MM-DD HH:MI:SE",
            "ip": "255.255.255.255",
            "milseg_ejecucion": "0.0",
            "tipo_documento": "xxxxx",
            "uniqid": "xxxxxxxxx",
            "prefijo": "",
            "numero_documento": "xx",
            "adquiriente_nombre": "xxxxxxx",
            "adquiriente_documento": "xxxxxxxx",
            "fecha_documento": "YYYY-MM-DD HH:MI:SE",
            "url_representacion_xml": "https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xml",
            "url_representacion_pdf": "https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf",
            "correo_adquiriente": "xxxxxx@xxx.xxx",
            "cufe": "xxxxxxxxxxxxxxxxxxxxx",
            "url_rta_envio_dian": null,
            "consulta_doc_dian_estado": null,
            "consulta_doc_dian_url_rta": null,
            "aceptacion_rechazo_fecha": null,
            "aceptacion_rechazo_ip": null,
            "aceptacion_rechazo_estado": null,
            "aceptacion_rechazo_observaciones": null,
            "aceptacion_rechazo_causal": null,
            "acuse_recibo": "N",
            "acuse_recibo_fecha": null,
            "acuse_recibo_ip": null,
            "correos_enviados": 0
    }
}
							  								  

Salida con errores de semantica
	
{
    "codigo_error": 11,
    "descripcion_error": [
        "The documento obligado field is required."
    ],
    "tiempo_ejecucion": 0.0013968944549560547,
    "transaccion": "5c743d8744af1"
}
							  								  

Salida con errores HTTP
	
{
    "codigo_error": 500,
    "descripcion_error": "Unauthenticated."
}
								
							  
CURL

Si usted usa cURL para consumir el API, usted debe incluir la URI con doble comilla para enviar los multiples parametros a transmitir.

Si requiere ejemplos en otras tecnologías (HTTP, C(LibCurl, C#, GO, Java, JavaScript, NodeJS, ObjectiveC, OCaml, PHP, Python, Ruby, Shell, Swift) envienos la solicitud a info@afacturar.com

curl -X POST \
  https://api-pruebas.afacturar.com/api/v2/transacciones_emitidas \
  -H 'accept: application/json' \
  -H 'authorization: Bearer xxxxxxxxxxxxx' \
  -H 'cache-control: no-cache' \
  -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
  -F documento_obligado=XXXXXXXXX
  

Cuando usted hace un llamado a la API, puede recibir los siguientes mensajes de error en la respuesta. Puede que haya algo mal con su solicitud o puede que algo esté mal de nuestra parte. Los errores responden con un código de error y JSON que contiene un mensaje, una descripción y un código API más preciso.

Códigos de ERROR


Tabla de Errores
Código Estado Descripción Acción sugerida
400 Solicitud incorrecta Hay un problema con su solicitud Compruebe que su solicitud sigue la documentación de la API y utiliza la sintaxis correcta.
401 No autorizado No tiene la autorización necesaria para realizar la solicitud. Asegúrese de estar utilizando una clave API válida con los permisos necesarios para su solicitud.
403 Prohibido El servidor entendió la solicitud, pero se negó a cumplirla. Vea si su plan en Afacturar.com incluye el recurso que está solicitando y su clave API tiene las autorizaciones necesarias.
404 No encontrado El servidor no pudo encontrar el recurso solicitado. Cambie su URL de solicitud para que coincida con un punto final API válido.
405 Método no permitido El recurso no tiene el método especificado. (por ejemplo, PUT en las transmisiones) Cambie el método para seguir la documentación del recurso.
409 Conflicto Un conflicto surgió de su solicitud. (por ejemplo, el OFE no esta asociado al código de autorización) Modificar la carga útil para eliminar el conflicto..
415 Tipo de medio no admitido La solicitud no está en un formato compatible. Verifique que su encabezado Content-Type sea compatible y que su solicitud cumpla con la documentación.
422 Entidad no procesable La solicitud fue sintácticamente correcta pero falló debido a errores semánticos. Asegúrese de que su solicitud incluya todos los campos obligatorios y que sus datos sean válidos.
429 Exceder el límite de envío Se excede el numero de transacciones permitido (120 por minuto). Verifique que se encuentra dentro de los límites acordados con Afacturar.
500 Error de servidor interno Algo salió mal de nuestro lado. Pruebe la solicitud nuevamente más tarde. Si el error no se resuelve, póngase en contacto con el soporte técnico soporte@afacturar.com.
503 Servicio no disponible Estamos experimentando niveles de tráfico más altos de lo normal. Prueba la solicitud nuevamente, ya estamos enterado del problema para aumentar la capacidad.