Resolución No. 03847
(Abril 30 de 2008)

Anexo No. 29
Especificaciones Técnicas

 

INFORMACIÓN DE SALDOS DE CUENTAS POR COBRAR  AL 31 DE DICIEMBRE
EN CONTRATOS DE MANDATO O ADMINISTRACIÓN DELEGADA 
Formato 1018 - Versión 8

 

OBJETIVO

 

Definir las características y contenido de los archivos donde se reportan los Información de saldos de cuentas por cobrar  al 31 de diciembre en Contratos de Mandato o Administración Delegada.

 

 

ESPECIFICACIÓN TECNICA

 

El formato de Información de saldos de cuentas por cobrar  al 31 de diciembre en Contratos de Mandato o Administración Delegada, 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 saldos de cuentas por cobrar  al 31 de diciembre en Contratos de Mandato o Administración Delegada = 01018) 

vv                                : Versión del formato (Versión = 08).

aaaa                          : Año de envío.

cccccccc                   : Consecutivo de envío por año.

 

 

2. Formato del Archivo

 

El formato de Información de saldos de cuentas por cobrar  al 31 de diciembre en Contratos de Mandato o Administración Delegada, 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
2 = Reemplazo

Formato

Código del formato

Int

5

 

Información de saldos de cuentas por cobrar  al 31 de diciembre en Contratos de Mandato o Administración Delegada = 1018

Versión

Versión del formato

Int

2

 

Versión = 8

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 “sal (Saldo al 31 de diciembre) de los registros reportados.

 

 

CantReg

Cantidad de registros

Int

4

Se enviarán archivos con máximo 5000 registros (*).

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.

 

 

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 “pagos” y se deben incluir los siguientes datos para cada transacción reportada.

 

 

ATRIBUTO

DENOMINACION CASILLA

TIPO

LONGITUD

CRITERIOS

cpt

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

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

sal

Saldo al 31 de diciembre

double

20

El valor debe ser positivo, entero y no debe incluir ni puntos ni comas.
Siempre debe diligenciarse

tdocm

Tipo de documento del mandante o contratante

int

2

De acuerdo a los definidos por resolución.
Siempre debe diligenciarse

nitm

Número de identificación  del mandante o contratante

string

20

Diligenciar sin guiones, puntos, comas o espacios en blanco.
Siempre debe diligenciarse

dvm

Digito de Verificación

int

1

Si se conoce debe diligenciarse

apl1m

Primer Apellido del mandante o contratante

string

60

En caso de ser una Persona Natural siempre debe diligenciarse.

apl2m

Segundo Apellido del mandante o contratante

string

60

En caso de ser una Persona Natural y si se conoce debe diligenciarse.

nom1m

Primer Nombre del mandante o contratante

string

60

En caso de ser una Persona Natural siempre debe diligenciarse.

nom2m

Otros Nombres del mandante o contratante

string

60

En caso de ser una Persona Natural y si se conoce debe diligenciarse.

razm

Razón Social del mandante o contratante

string

450

En caso de ser una Persona Jurídica siempre debe diligenciarse.

 

Los campos Concepto, Tipo de documento, Número de Identificación, Tipo de documento del mandante o contratante y Número de identificación  del mandante o contratante, 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.

 

  1. La información del contenido del archivo debe corresponder al esquema XSD entregado.

 

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

 

  1. 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 ser un número consecutivo por año para todos los formatos que el remitente envié 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 “sal” (Saldo al 31 de diciembre) 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 encapsula la información del formulario 1018 Información de saldos de cuentas por cobrar  al 31 de diciembre en Contratos de Mandato o Administración Delegada</xs:documentation>

    </xs:annotation>

    <xs:complexType>

      <xs:attribute name="cpt" 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</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="2"/>

            <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: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: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="sal" use="required">

        <xs:annotation>

          <xs:documentation>Saldo al 31 de diciembre</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="tdocm" use="required">

        <xs:annotation>

          <xs:documentation>Tipo de documento del mandante o contratante</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="nitm" use="required">

        <xs:annotation>

          <xs:documentation>Número de identificación del mandante o contratante</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="dvm" 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="apl1m" use="optional">

        <xs:annotation>

          <xs:documentation>Primer Apellido del mandante o contratante</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="apl2m" use="optional">

        <xs:annotation>

          <xs:documentation>Segundo Apellido del mandante o contratante</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="nom1m" use="optional">

        <xs:annotation>

          <xs:documentation>Primer Nombre del mandante o contratante</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="nom2m" use="optional">

        <xs:annotation>

          <xs:documentation>Otros Nombres del mandante o contratante</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="razm" use="optional">

        <xs:annotation>

          <xs:documentation>Razón Social del mandante o contratante</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: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="1018">

        <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="8"/>

      <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:schema>