![]() |
RESOLUCIÓN No.12808 (26 OCT./06) Especificaciones Técnicas |
![]() |
Información
de Convenios de Cooperación con Organismos Internacionales
Formato 1159 – Versión 7
Año
gravable 2007
OBJETIVO
Definir las
características y contenido de los archivos, donde se reporta
ESPECIFICACIÓN
TECNICA
El formato de
Información de Convenios de Cooperación con Organismos Internacionales, 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 (Información de
Convenios de Cooperación con Organismos Internacionales = 01159)
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 de
Información de Convenios de Cooperación con Organismos Internacionales,
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-
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 |
|
Información de
Convenios de Cooperación con Organismos Internacionales = 1159 |
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 “pais” (Pais
del Organismo Internacional) de los registros reportados. |
|
CantReg |
Cantidad de registros |
Int |
4 |
Se enviarán archivos
con máximo 5000 registros; si se deben reportar más de 5000 registros se
fraccionara la información en archivos de 5000 registros o menos. La cantidad
de registros esta medida por el número de elementos “convenios” que contenga
el archivo. |
Cantidad de registros
reportados en el contenido. |
(*) Se enviarán archivos con máximo 5000
registros; si es necesario informar más de 5000 registros, se fraccionará la
información en archivos de 5000 registros o menos. La cantidad de registros esta
medida por el número de elementos “convenios” que contenga el archivo.
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 “convenios” y se deben incluir los siguientes
datos para cada transacción reportada.
ATRIBUTO |
DENOMINACION CASILLA |
TIPO |
LONGITUD |
CRITERIOS |
nconv |
Número del Convenio |
string |
20 |
Siempre debe informarse. |
idconv |
Identificación Convenio en ejecución |
string |
450 |
Si aplica debe informase. |
raz |
Nombre o Razón Social del Organismo
Internacional con el cual se celebró el convenio |
string |
450 |
Siempre debe informarse. |
pais |
País del Organismo Internacional |
int |
4 |
Siempre debe informarse. |
El campo Número del
convenio, es la llave única para este formato, la cual no debe repetirse para
los registros de un mismo envió.
Al elemento
“convenios” se pueden agregar elementos secundarios identificados como
“contratos”, los cuales contienen
ATRIBUTO |
DENOMINACION CASILLA |
TIPO |
LONGITUD |
CRITERIOS |
nconv |
Número del Convenio |
string |
20 |
Siempre debe informarse. |
ncont |
Número del contrato |
string |
20 |
Siempre debe informarse. |
val |
Valor total del Contrato |
double |
20 |
Siempre debe informarse. |
fini |
Fecha inicial del Contrato |
date |
10 |
Siempre debe informarse. |
ffin |
Fecha final del Contrato |
date |
10 |
Siempre debe informarse. Formato AAAAA-MM-DD. |
ccon |
Clase de contrato |
int |
4 |
Siempre debe informarse. |
Los campos Número
del convenio, Número de contrato y clase de contrato, forman la llave única
para este formato, la cual no debe repetirse para los registros de un mismo
envió.
Al elemento
“convenios” se pueden agregar elementos secundarios identificados como “pagos”,
los cuales contienen
ATRIBUTO |
DENOMINACION CASILLA |
TIPO |
LONGITUD |
CRITERIOS |
ccon |
Clase de contrato |
int |
4 |
Siempre debe informarse. |
ncont |
Número del contrato |
string |
20 |
Siempre debe informarse. |
per |
Periodo |
int |
2 |
Siempre debe informarse. |
tdoc |
Tipo de Documento |
int |
2 |
Siempre
debe informarse. |
nid |
Número de identificación |
String |
20 |
Siempre debe
informarse. |
dv |
Digito de verificación |
int |
1 |
Si se conoce debe
informarse. |
apl1 |
Primer apellido del contratista |
string |
60 |
En el caso de ser una
Persona Natural siempre debe informarse. |
apl2 |
Segundo apellido del contratista |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
nom1 |
Primer nombre del contratista |
string |
60 |
En el caso de ser una Persona Natural siempre
debe informarse. |
nom2 |
Otros nombres del contratista |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
raz |
Razón social del contratista |
string |
450 |
En el caso de ser una Persona Jurídica
siempre debe informarse. |
dir |
Dirección del contratista |
string |
200 |
Siempre debe informarse. |
dpto |
Código del departamento |
int |
2 |
Siempre debe informarse. |
mun |
Código del municipio |
int |
3 |
Siempre debe informarse. |
val |
Valor pago o abono en cuenta |
double |
20 |
Siempre debe informarse. |
rrenta |
Valor Retenciones practicadas a titulo de
renta |
double |
20 |
El valor debe
ser positivo, entero y no debe incluir ni puntos ni comas. Cuando el valor
sea cero no informar. |
riva |
Valor Retenciones practicadas a titulo de
IVA |
double |
20 |
El valor debe
ser positivo, entero y no debe incluir ni puntos ni comas. Cuando el valor
sea cero no informar. |
obs |
Observaciones |
string |
400 |
Este campo se utiliza para indicar en el
caso que no efectué retención, la norma que lo cobija para no efectuarla. |
Los campos Clase de contrato, Número de
Contrato, Tipo de Documento y
Número de Identificación conforman
una llave única para este formato, la cual no debe repetirse para los registros
de un mismo envió.
3. Validaciones
3.1. Validaciones
Generales
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
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 “pais” (País del
Organismo Internacional) de los registros reportados.
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="pagos">
<xs:annotation>
<xs:documentation>Elemento que contiene contienen
</xs:annotation>
<xs:complexType>
<xs:attribute name="ccon" use="required">
<xs:annotation>
<xs:documentation>Clase de contrato</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ncont" use="required">
<xs:annotation>
<xs:documentation>Número del contrato</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="per" use="required">
<xs:annotation>
<xs:documentation>Periodo</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="tdoc" 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="nid" 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="0"/>
<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="apl1" use="optional">
<xs:annotation>
<xs:documentation>Primer Apellido del
contratista</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="apl2" use="optional">
<xs:annotation>
<xs:documentation>Segundo Apellido del contratista</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 del contratista</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 del contratista</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="raz" use="optional">
<xs:annotation>
<xs:documentation>Razón Social contratista</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="dir" use="required">
<xs:annotation>
<xs:documentation>Dirección del
contratista</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="200"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dpto" use="required">
<xs:annotation>
<xs:documentation>Código del departamento</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="mun" use="required">
<xs:annotation>
<xs:documentation>Código del municipio</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive value="999"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="val" use="required">
<xs:annotation>
<xs:documentation>Valor pago o abono en
cuenta</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:pattern value="[0-9]{1,20}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="rrenta" use="optional">
<xs:annotation>
<xs:documentation>Valor Retenciones practicadas a titulo de
renta</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:pattern value="[0-9]{1,20}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="riva" use="optional">
<xs:annotation>
<xs:documentation>Valor Retenciones practicadas a titulo de
IVA</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:pattern value="[0-9]{1,20}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="obs" use="optional">
<xs:annotation>
<xs:documentation>Observaciones</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="400"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="convenios">
<xs:annotation>
<xs:documentation>Elemento que encapsula la información de
Información del formato 1159:
Convenios</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="contratos" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="nconv" use="required">
<xs:annotation>
<xs:documentation>Número del Convenio</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="idconv" use="optional">
<xs:annotation>
<xs:documentation>Identificación Convenio en ejecución</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="raz" use="required">
<xs:annotation>
<xs:documentation>Nombre o Razón Social del Organismo
Internacional con el cual se celebró el convenio</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="pais" use="required">
<xs:annotation>
<xs:documentation>País del Organismo
Internacional</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:unique name="ContratoUnico">
<xs:selector xpath="contratos"/>
<xs:field xpath="@nconv"/>
<xs:field xpath="@ncont"/>
<xs:field xpath="@ccon"/>
</xs:unique>
</xs:element>
<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="convenios"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:unique name="ConvenioUnico">
<xs:selector xpath="convenios"/>
<xs:field xpath="@nconv"/>
</xs:unique>
</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="1159">
<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="contratos">
<xs:annotation>
<xs:documentation>Elemento que
contienen
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="pagos" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="nconv" use="required">
<xs:annotation>
<xs:documentation>Número del Convenio</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ncont" use="required">
<xs:annotation>
<xs:documentation>Número del contrato</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="val" use="required">
<xs:annotation>
<xs:documentation>Valor total del
Contrato</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:double">
<xs:pattern
value="[0-9]{1,20}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="fini" type="xs:date"
use="required">
<xs:annotation>
<xs:documentation>Fecha inicial del Contrato</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ffin" type="xs:date"
use="required">
<xs:annotation>
<xs:documentation>Fecha final del
Contrato</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ccon" use="required">
<xs:annotation>
<xs:documentation>Clase de contrato</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:unique name="PagoUnico">
<xs:selector xpath="pagos"/>
<xs:field xpath="@ccon"/>
<xs:field xpath="@ncont"/>
<xs:field xpath="@tdoc"/>
<xs:field xpath="@nid"/>
</xs:unique>
</xs:element>
</xs:schema>