OBJETIVO
OBJETIVO
Definir las características y contenido de los archivos donde se reporta la Información de Pagos o Abonos en Cuenta y Retenciones Practicadas en Contratos de Asociación para Explotación y Exploración Minera.
ESPECIFICACIÓN TECNICA
El formato de Información de Pagos o Abonos en Cuenta y Retenciones Practicadas en Contratos de Asociación para Explotación y Exploración Minera, 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 (Pagos o Abonos en Cuenta y Retenciones Practicadas en Contratos de Asociación para Explotación y Exploración Minera = 01046)
vv : Versión del formato (Versión = 09).
aaaa : Año de envío.
cccccccc : Consecutivo de envío por año.
2. Formato del Archivo
El formato de Información de Pagos o Abonos en Cuenta y Retenciones Practicadas en Contratos de Asociación para Explotación y Exploración Minera, contiene un documento XML, que está compuesto por dos elementos complejos: Encabezado y Contenido, los 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 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:
ETIQUET A | DENOMINACIO N CASILLA | TIPO | LONGITUD CAMPO | VALIDACIONES | OBSERVACIONES |
Ano | Año de envío | Int | 4 | Formato AAAA | |
CodCpt | Concepto | Int | 2 | 1 = Inserción 2 = Reemplazo | |
Formato | Código del formato | Int | 5 | Pagos o Abonos en Cuenta y Retenciones Practicadas en Contratos de Asociación para Explotación y Exploración Minera = 1046 | |
Versión | Versión del formato | Int | 2 | Versión = 9 | |
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 final. Formato AAAA-MM-DD |
ValorTotal | Valor Total | double | 20 | Corresponde a la sumatoria de la casilla “pag” (Pago o Abono en cuenta) que se encuentra en el atributo “pagos”. | |
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 “pagos” que contenga el archivo. | Cantidad de registros reportados en el contenido. |
2.2. 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”.
El contenido del archivo viene en el elemento “pagos” y se deben incluir los siguientes datos para cada registro de Pagos o Abonos en Cuenta y Retenciones Practicadas en Contratos de Asociación para Explotación y Exploración Minera.
ATRIBUTO | DENOMINACION CASILLA | TIPO | LONGITUD | CRITERIOS |
con | Concepto | int | 4 | De acuerdo a los definidos por resolución. Siempre debe diligenciarse. |
tdoc | Tipo de Documento | int | 2 | De acuerdo a los definidos por resolución. Siempre debe diligenciarse |
nid | Número de Identificación | string | 20 | Diligenciar sin guiones, puntos, comas o espacios en blanco. Siempre debe diligenciarse |
dv | Digito de Verificación | int | 1 | Para el tipo de documento 31 – Nit, si se conoce debe diligenciarse. |
apl1 | Primer Apellido del informado | string | 60 | En caso de ser una Persona Natural siempre debe diligenciarse. |
apl2 | Segundo Apellido del informado | string | 60 | En caso de ser una Persona Natural y si se conoce debe diligenciarse. |
nom1 | Primer Nombre del informado | string | 60 | En caso de ser una Persona Natural siempre debe diligenciarse. |
nom2 | Otros Nombres del informado | string | 60 | En caso de ser una Persona Natural y si se conoce debe diligenciarse. |
raz | Razón Social del informado | string | 450 | En caso de ser una Persona Jurídica siempre debe diligenciarse. |
dir | Dirección | string | 200 | En caso que el País de residencia sea Colombia siempre debe diligenciarse. |
dpto | Código del Departamento | int | 2 | Código DANE Numérico, debe incluir los ceros a la izquierda. En caso que el País de residencia sea Colombia siempre debe diligenciarse. |
mun | Código del Municipio | int | 3 | Código DANE Numérico, debe incluir los ceros a la izquierda. En caso que el País de residencia sea Colombia siempre debe diligenciarse. |
pais | País de Residencia o domicilio | int | 4 | De acuerdo a los definidos por resolución. Siempre debe diligenciarse. |
pag | Pago o Abono en cuenta | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse |
iva | IVA mayor valor del costo o gasto | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse. |
rpren | Retención en la fuente practicada RENTA | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse |
raren | Retención en la fuente asumida RENTA | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse |
rprc | Retención en la fuente practicada IVA Régimen común | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse |
rars | Retención en la fuente asumida Régimen Simplificado | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse |
rpind | Retención en la fuente practicada IVA no domiciliados | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse |
rcree | Retención en la fuente practicadas CREE | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse. |
rasumc | Retención en la fuente asumidas CREE | double | 20 | El valor debe ser positivo, entero y no debe incluir ni puntos ni comas. Siempre debe diligenciarse. |
tdoc2 | Tipo del documento del asociado | int | 2 | De acuerdo a los definidos por resolución. Siempre debe diligenciarse. |
nid2 | Identificación del asociado | string | 20 | Diligenciar sin guiones, puntos, comas o espacios en blanco. Siempre debe diligenciarse |
Los campos: Concepto, Tipo de documento, Número de Identificación, Tipo de documento del Asociado e Identificación del Asociado; conforman una llave única para este formato, la cual no debe repetirse para los registros de un mismo envío.
3. Validaciones
3.1. Validaciones Generales
1. El archivo debe contener todos los campos definidos para el encabezado y estos campos deben estar correctamente diligenciados.
2. La información del contenido del archivo debe corresponder al esquema XSD entregado.
3. 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).
4. Los campos que corresponden a fechas, deben contener fechas validas en cuanto 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 corresponder al número consecutivo para este formato.
4. Fecha de envío, debe ser la fecha calendario, en formato AAAA-MM- DDTHH:MM:SS.
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="xxxx://xxx.x0.xxx/0000/XXXXxxxxx" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="pagos">
<xs:annotation>
<xs:documentation>Elemento que encapsula la información del formulario 1046v9 INFORMACIÓN DE PAGOS O ABONOS EN CUENTA DE LOS CONTRATOS DE ASOCIACIÓN PARA EXPLORACIÓN Y EXPLOTACIÓN
MINERA</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="con" use="required">
<xs:annotation>
<xs:documentation>Concepto</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="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 del informado</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 informado</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 informado</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 informado</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 informado</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 del informado</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="optional">
<xs:annotation>
<xs:documentation>Dirección</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="optional">
<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:pattern value="[0-9]{2,2}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="mun" use="optional">
<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:pattern value="[0-9]{3,3}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="pais" use="required">
<xs:annotation>
<xs:documentation>País de Residencia o domicilio</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="pag" use="required">
<xs:annotation>
<xs:documentation>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="iva" use="required">
<xs:annotation>
<xs:documentation>IVA mayor valor del costo o gasto</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="rpren" use="required">
<xs:annotation>
<xs:documentation>Retención en la fuente practicada 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="raren" use="required">
<xs:annotation>
<xs:documentation> Retención en la fuente asumida 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="rprc" use="required">
<xs:annotation>
<xs:documentation>Retención en la fuente practicada IVA Régimen común </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="rars" use="required">
<xs:annotation>
<xs:documentation>Retención en la fuente asumida Régimen Simplificado </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="rpind" use="required">
<xs:annotation>
<xs:documentation>Retención en la fuente practicada IVA no domiciliados</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="rcree" use="required">
<xs:annotation>
<xs:documentation>Retención en la fuente practicadas CREE</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="rasumc" use="required">
<xs:annotation>
<xs:documentation> Retención en la fuente asumidas CREE</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="tdoc2" use="required">
<xs:annotation>
<xs:documentation>Tipo del documento del asociado</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="nid2" use="required">
<xs:annotation>
<xs:documentation>Identificación del asociado</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:complexType>
</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="pagos" 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="1046">
<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="9"/>
<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:long">
<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:schema>