|
|
Resolución No 14465 (Noviembre 28 de 2007) Anexo 4 Especificaciones Técnicas |
|
Informe sobre Acuerdos para la expedición y aceptación de facturas
Formato 1299- Versión 7
OBJETIVO
Definir las características y contenido de los archivos con el Informe sobre Acuerdos para la expedición y aceptación de facturas.
ESPECIFICACIÓN TECNICA
El formato “Informe sobre Acuerdos para la expedición y aceptación de facturas” debe enviarse en un archivo XML que cumpla las siguientes especificaciones:
1. Estándar del Nombre de los Archivos
El nombre de cada uno de los archivos, debe especificarse mediante la siguiente secuencia de caracteres:
Dmuisca_ccmmmmmvvaaaacccccccc.xml
cc : Concepto (Inserción = 01 Reemplazo = 02)
mmmmm : Formato (Informe sobre Acuerdos para la expedición y aceptación de facturas =1299)
vv : Versión del formato (Versión = 07).
aaaa : Año de envío.
cccccccc : Consecutivo de envío por año.
2. Formato del Archivo
El formato “Informe sobre Acuerdos para la expedición y aceptación de facturas”, contiene un documento XML, que está compuesto por dos elementos complejos: Encabezado y Contenido, las cuales se deben enviar en el orden enunciado.
| Encabezado |
| Contenido Información 1 |
| Contenido Información 2 |
| ... |
| Contenido Información N |
1. El documento XML debe cumplir con la especificación 1.0 Tercera edición.
2. El conjunto de caracteres utilizado en el documento XML debe ser el alfabeto latino No. 1: “ISO-8859-1”.
3. El archivo debe contener un documento XML bien formado y valido de acuerdo al esquema XSD que incluye en esta especificación técnica.
4. El archivo debe contener un elemento único elemento raíz llamado “mas”, que a su vez contendrá toda la información del archivo, tanto el encabezado como los registros.
2.1. Formato del Encabezado
El encabezado del archivo viene en el elemento “Cab” y contiene los siguientes datos, todos de carácter obligatorio:
|
ETIQUETA |
DENOMINACION CASILLA |
TIPO |
LONGITUD CAMPO |
VALIDACIONES |
OBSERVACIONES |
|
Ano |
Año de envío |
Int |
4 |
|
Formato AAAA |
|
CodCpt |
Concepto |
Int |
2 |
|
1 = Inserción |
|
Formato |
Código del formato |
Int |
5 |
|
Informe sobre Acuerdos para la expedición y aceptación de facturas =1299 |
|
Versión |
Versión del formato |
Int |
2 |
|
Versión = 7 |
|
NumEnvio |
Número de envío |
Int |
8 |
Debe ser un número consecutivo por año para todos los formatos que el remitente envíe a la DIAN |
Consecutivo de envío por año. |
|
FecEnvio |
Fecha de envío |
DateTime |
19 |
Debe ser la fecha calendario. |
Formato AAAA-MM-DDTHH:MM:SS |
|
FecInicial |
Fecha Inicial |
Date |
10 |
Debe ser la fecha calendario. |
Los registros corresponden mínimo ésta fecha inicial. Formato AAAA-MM-DD |
|
FecFinal |
Fecha Final |
Date |
10 |
Debe ser la fecha calendario. |
Los registros corresponden máximo a ésta fecha inicial. Formato AAAA-MM-DD |
|
ValorTotal |
Valor Total |
double |
20 |
Corresponde a la sumatoria de la casilla “cpto” contenida en el elemento “adq”. |
|
|
CantReg |
Cantidad de registros |
Int |
4 |
La cantidad de registros esta medida por el número de elementos “adq” que contenga el archivo. |
Cantidad de registros reportados en el contenido. |
2.3. Formato del Contenido
En el contenido del archivo se deben incluir tantos registros como se informó en la cabecera en el campo “Cantidad de registros”.
Cada registro reportado debe mantener la misma estructura previamente explicada y usada para la cabecera.
El contenido del archivo viene en el elemento “adq” y debe incluir los siguientes datos:
|
ATRIBUTO |
CASILLA |
DENOMINACION CASILLA |
TIPO |
LONGITUD |
OBLIGATORIA |
OBSERVACIONES |
| cpto |
24 |
Concepto |
string |
2 |
S |
01. Realización de convenio. 02. Terminación de convenio. |
|
td |
25 |
Tipo documento |
int |
2 |
S |
12. Tarjeta de identidad 13. Cédula de ciudadanía 21. Tarjeta de extranjería. 22. Cédula de extranjería 31. NIT 41. Pasaporte 42. Documento de identificación extranjero |
|
num |
26 |
Número de identificación |
string |
20 |
S |
Si la casilla 25 – Tipo de documento es 43 debe diligenciar 0 (cero) |
|
apel1 |
27 |
Primer Apellido |
string |
60 |
N |
|
|
apel2 |
28 |
Segundo Apellido |
string |
60 |
N |
|
|
nom1 |
29 |
Primer Nombre |
string |
60 |
N |
|
|
nom2 |
30 |
Otros Nombres |
string |
60 |
N |
|
|
rsocial |
31 |
Razón Social |
string |
450 |
N |
|
|
fec |
32 |
Fecha |
date |
10 |
S |
|
3. Validaciones
3.1. Validaciones Generales
El archivo debe contener todos los campos definidos para el encabezado y estos campos deben estar correctamente diligenciados.
La información del contenido del archivo debe corresponder al esquema XSD entregado.
Los atributos que registran valores numéricos, se reportan con valores numéricos positivos, sin signos ni puntuaciones, según lo reportado por el informante o en su defecto con cero (0).
Los campos que corresponden a fechas, deben contener fechas validas en cuando a año, mes, y día.
3.2. Validaciones del Encabezado
1. Los campos concepto, formato y versión, deben venir diligenciados con los valores estipulados en las especificaciones técnicas,
2. Año de envío, debe ser el año calendario.
3. Numero de envío, debe ser un número consecutivo por año para todos los formatos que el remitente envíe a la DIAN.
4. Fecha de envío, debe ser la fecha calendario, en formato AAAA-MM-DDTHH:MM:SS.
5. Cantidad de registros, debe ser igual a la cantidad de registros reportados en el contenido, que como máximo puede ser 5000 registros.
6. Valor total, corresponde a la sumatoria de la casilla “cpto” de los registros reportados en cada uno de los elementos contenidos en el elemento “adq”.
4. Esquema XSD
A continuación se incluye el esquema XSD para esta especificación técnica.
<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="mas">
<xs:annotation>
<xs:documentation>Elemento raiz del xml de carga masiva</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Cab" type="CabType"/>
<xs:element ref="adq" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="CabType">
<xs:sequence>
<xs:element name="Ano" type="xs:gYear" nillable="false">
<xs:annotation>
<xs:documentation>Año de envio</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="CodCpt" nillable="false">
<xs:annotation>
<xs:documentation>Concepto</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Formato" fixed="1299">
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:totalDigits value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Version" type="xs:positiveInteger" fixed="7"/>
<xs:element name="NumEnvio">
<xs:annotation>
<xs:documentation>Numero de envio</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:totalDigits value="8"/>
<xs:maxInclusive value="99999999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FecEnvio" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Fecha de envio</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="FecInicial" type="xs:date">
<xs:annotation>
<xs:documentation>Fecha inicial</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="FecFinal" type="xs:date">
<xs:annotation>
<xs:documentation>Fecha Final</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ValorTotal" type="xs:double">
<xs:annotation>
<xs:documentation>Valor Total</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="CantReg">
<xs:annotation>
<xs:documentation>Cantidad de registros</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:totalDigits value="4"/>
<xs:maxInclusive value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="adq">
<xs:annotation>
<xs:documentation>Elemento que encapsula la información de Informe sobre establecimientos de convenios Facturación Electrónica
Formato 1299- Versión 7</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="cpto" use="required">
<xs:annotation>
<xs:documentation>Concepto</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="td" use="required">
<xs:annotation>
<xs:documentation>Tipo de Documento</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="num" use="required">
<xs:annotation>
<xs:documentation>Número de Identificación</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dv" use="optional">
<xs:annotation>
<xs:documentation>Digito de verificación</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="9"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="apel1" use="optional">
<xs:annotation>
<xs:documentation>Primer Apellido</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="apel2" use="optional">
<xs:annotation>
<xs:documentation>Segundo Apellido</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="nom1" use="optional">
<xs:annotation>
<xs:documentation>Primer Nombre</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="nom2" use="optional">
<xs:annotation>
<xs:documentation>Otros nombres</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="rsocial" use="optional">
<xs:annotation>
<xs:documentation>Razón Social</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="450"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="fec" type="xs:date" use="required">
<xs:annotation>
<xs:documentation>Fecha</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>