![]() |
RESOLUCIÓN No. 12800 (OCT.26/06) Especificaciones Técnicas |
![]() |
CONSUMOS
CON TARJETAS DE CREDITO
Formato 1023 - Versión 6
Año
gravable 2006
OBJETIVO
Definir las
características y contenido de los archivos donde se reporta el Consumos con
tarjetas de crédito.
ESPECIFICACIÓN
TECNICA
El formato de Consumos
con tarjetas de crédito, 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 ( Consumos con tarjetas de crédito = 01023)
vv : Versión del
formato (Versión = 06).
aaaa : Año de envío.
cccccccc : Consecutivo de envío por
año.
2. Formato del
Archivo
El formato de Consumos
con tarjetas de crédito, 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 |
|
Consumos con tarjetas
de crédito = 1023 |
Versión |
Versión del formato |
Int |
2 |
|
Versión = 6 |
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 “adq” (Adquisiciones,
consumos, avances o gastos con tarjeta de crédito) 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. |
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 “consumos” y se deben incluir los siguientes datos
para cada transacción reportada.
ATRIBUTO |
DENOMINACION CASILLA |
TIPO |
LONGITUD |
CRITERIOS |
ctar |
Clase de Tarjeta |
int |
1 |
Siempre
debe informarse. |
tdoc |
Tipo de Documento |
int |
2 |
Siempre
debe informarse. |
nid |
Número de identificación Tarjetahabiente |
string |
20 |
Siempre debe
informarse. |
dv |
Digito de Verificación |
int |
1 |
Si se conoce debe
informarse. |
apl1 |
Primer Apellido del Tarjeta Habiente |
string |
60 |
En el caso de ser una
Persona Natural siempre debe informarse. |
apl2 |
Segundo Apellido del Tarjeta Habiente |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
nom1 |
Primer Nombre del Tarjeta Habiente |
string |
60 |
En el caso de ser una Persona Natural siempre
debe informarse. |
nom2 |
Segundo Nombre del Tarjeta Habiente |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
raz |
Razón Social Tarjeta Habiente |
string |
450 |
En el caso de ser una Persona Jurídica
siempre debe informarse. |
dir |
Dirección |
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. |
adq |
Adquisiciones, consumos, avances o gastos
con tarjeta de crédito |
double |
20 |
Siempre debe informarse. |
ntar |
Número Tarjeta |
double |
20 |
Siempre debe informarse. |
Los campos Tipo de
Documento, Número de Identificación tarjetahabiente y Número Tarjeta, 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
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
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
reportadas en el contenido, que como máximo puede ser 5000 registros.
6. Valor total, corresponde a la sumatoria de la casilla “adq”
(Adquisiciones, consumos, avances o gastos con tarjeta de crédito) 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="consumos">
<xs:annotation>
<xs:documentation>Elemento que encapsula la información del formulario
1023 CONSUMOS CON TARJETAS DE CREDITO</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="ctar" use="required">
<xs:annotation>
<xs:documentation>Clase de tarjeta</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="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
Tarjetahabiente</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>Dígito 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 Tarjetahabiente</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 Tarjetahabiente</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 Tarjetahabiente</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 Tarjetahabiente </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
Tarjetahabiente</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</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="200"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dpto" use="required">
<xs:annotation>
<xs:documentation>Código Dpto</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 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="adq" use="required">
<xs:annotation>
<xs:documentation>Adquisiciones,consumos, avances o gastos con
tarjeta de crédito</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="ntar" use="required">
<xs:annotation>
<xs:documentation>Número Tarjeta</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: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="consumos"
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="1023">
<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="6"/>
<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>