documentaÇÃo para geraÇÃo do xml daje e...

16
DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETO

Upload: ngokhanh

Post on 12-Feb-2019

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE

E BOLETO

Page 2: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

Sumário

1. INTRODUÇÃO E OBJETIVO .................................................................................... 5

2. DOCUMENTO............................................................................................................. 6

2.1. ESTRUTURA DO DOCUMENTO ................................................................ 6

2.2. ELEMENTO DAJES ..................................................................................... 7

2.3. ELEMENTO DAJE ........................................................................................ 7

2.4. ELEMENTO DADOS_DAJE ........................................................................ 7

2.5. ELEMENTO CONTRIBUINTE ..................................................................... 8

2.6. ELEMENTO VALORES ................................................................................ 9

2.7. ELEMENTO BOLETO_INTIMACAO......................................................... 10

3. DEFINIÇÃO DO XSD DE CONFECÇÃO E VALIDAÇÃO ................................... 11

3.1. TIPAGEM DOS ELEMENTOS E ATRIBUTOS ........................................ 14

4. MODELO DO XML ................................................................................................... 16

Page 3: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

LISTA DE TABELAS

Tabela 1 - Explicativo dos Atributos ................................................................... 7

Tabela 2 - Elementos do Elemento DADOS_DAJE ........................................... 8

Tabela 3 - Elementos do Elemento CONTRIBUINTE ........................................ 8

Tabela 4 - Elementos do Elemento VALORES .................................................. 9

Tabela 5 - Elementos do Elemento LINHA_DIGITAVEL .................................... 9

Tabela 6 - Elementos do Elemento BOLETO_INTIMACAO ............................. 10

Tabela 7 - Tipagem dos Elementos e Atributos ................................................ 15

Page 4: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

LISTA DE FIGURAS

Figura 1 - Modelo do XSD Daje .......................................................................... 6

Page 5: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

5

1. INTRODUÇÃO E OBJETIVO

Com a implantação da Central de Remessas de Arquivos (CRA) no estado

da Bahia, tornou-se necessário o desenvolvimento de diversos procedimentos

específicos para o funcionamento em particular no referido estado.

Para tanto, a transmissão dos DAJES gerados pelo tribunal, tanto quanto os

boletos gerados pelos cartórios, deverão ser encaminhados para a CRA, por

um meio de integração de interoperabilidade.

Então, para a CRA-BA, foi gerado um modelo de XML que trafegará os

dados necessários, tanto quanto o PDF dos documentos referidos.

Page 6: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

6

2. DOCUMENTO

O modelo de documento escolhido para a transmissão do DAJE e do boleto

é o formato XML, anexando-se o documento PDF internamente no formato

Base 64.

2.1. ESTRUTURA DO DOCUMENTO

A definição do modelo do documento foi criada no padrão XSD, ou seja, um

validador e gerador de exemplos que segue os padrões da World Wide Web

Consortium, a W3C, que padroniza a escrita internacional de aplicações para a

internet.

A base inicial do documento, é mostrada no exemplo abaixo:

Figura 1 - Modelo do XSD Daje

Page 7: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

7

2.2. ELEMENTO DAJES

Este elemento é a raiz inicial do documento XML que será confeccionado.

Dentro deste elemento poderão existir um ou mais elementos DAJE.

2.3. ELEMENTO DAJE

Este elemento contém atributos pessoais e outros elementos que compõe

um único DAJE, inclusive acoplando, não obrigatóriamente, o boleto. Os

atributos do elemento DAJE são descritos a seguir:

Atributo Descrição

tipo Tipo de Geração do Daje (Apontamento, Distribuição ou

Desistência)

codigo_banco Código do Banco que deverá pagar o Daje (ex: 237 –

Bradesco)

comarca Código da Comarca (Tabela do IBGE) para o cartório

codigo_cartorio_cra Código do Cartório quando Cadastrado no sistema

CRA Tabela 1 - Explicativo dos Atributos

2.4. ELEMENTO DADOS_DAJE

Este elemento é responsável pelas informações principais do daje. Dentro

deste elemento, estão acoplados os elementos a seguir:

Page 8: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

8

Elemento Descrição

daje_numero Número do DAJE emitido

daje_serie Série do DAJE emitido

emissor Código do Cartório emissor que emitiu (cód. No

Tribunal)

destino Código para o destinatário

codigo_ato Código do Ato do DAJE

quantidade_atos Quantidade de atos que compõe o DAJE

data_emissao Data de emissão do DAJE

data_validade Data de Validade do DAJE

tipo_natureza Tipo de Natureza do DAJE

base64_daje Base 64 do PDF do DAJE (conversão do binário em

PDF). Tabela 2 - Elementos do Elemento DADOS_DAJE

2.5. ELEMENTO CONTRIBUINTE

Este elemento é responsável pelas informações do destinatário do DAJE.

Isto é importante para o controle local da CRA. Os elementos internos são

descritos a seguir:

Elemento Descrição

nome Nome do Contribuínte

endereco Endereço do Contribuínte

municipio Município do Contribuínte

documento Documento (CPF ou CNPJ) do contribuínte Tabela 3 - Elementos do Elemento CONTRIBUINTE

Page 9: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

9

2.6. ELEMENTO VALORES

Este elemento é responsável por indicar os valores, individualizados de

cada item do DAJE. Os elementos disponíveis são:

Elemento Descrição

valor_ato_praticado Valor dos Atos Praticados

valor_daje Valor do DAJE emitido

emolumentos Valor de Emolumentos

taxa_fiscal Valor de Taxa Fiscal

fecom Valor ao Fecom

def_publica Valor para a Defensoria Pública

linha_digitavel Sub-elemento do elemento valores (descrito em tabela) Tabela 4 - Elementos do Elemento VALORES

Abaixo, a descrição dos elementos constantes no elemento

LINHA_DIGITAVEL:

Elemento Descrição

posicao_digito_1 Posição um do código de barras do documento,

contendo o dígito

posicao_digito_2 Posição dois do código de barras do documento,

contendo o dígito

posicao_digito_3 Posição três do código de barras do documento,

contendo o dígito

posicao_digito_4 Posição quatro do código de barras do documento,

contendo o dígito Tabela 5 - Elementos do Elemento LINHA_DIGITAVEL

Page 10: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

10

2.7. ELEMENTO BOLETO_INTIMACAO

Trata-se de um elemento não obrigatório, ou seja, que só deverá ser

incluído no XML quando da emissão do boleto. Este elemento é responsável

por incluir, os dados do boleto de intimação. Os elementos disponíveis são:

Elemento Descrição

boleto_data_emissao Data de emissão do Boleto

boleto_data_vencimento Data de Vencimento do Boleto

boleto_posicao_1 Posição 1 do Código de Barras

boleto_posicao_2 Posição 2 do Código de Barras

boleto_posicao_3 Posição 3 do Código de Barras

boleto_posicao_4 Posição 4 do Código de Barras

boleto_posicao_5 Posição 5 do Código de Barras

boleto_posicao_6 Posição 6 do Código de Barras

boleto_digito Dígito após a posição 6 do Código de Barras

boleto_posicao_7 Posição 7 do Código de Barras

boleto_valor Valor do Boleto

base64_boleto Base 64 do PDF do boleto (conversão do binário

em PDF). Tabela 6 - Elementos do Elemento BOLETO_INTIMACAO

Page 11: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

11

3. DEFINIÇÃO DO XSD DE CONFECÇÃO E VALIDAÇÃO

Acoplamos a este documento a definição do XSD, conforme a seguir:

<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="valores"> <xs:complexType> <xs:sequence> <xs:element ref="valor_ato_praticado"/> <xs:element ref="valor_daje"/> <xs:element ref="emolumentos"/> <xs:element ref="taxa_fiscal"/> <xs:element ref="fecom"/> <xs:element ref="def_publica"/> <xs:element ref="linha_digitavel"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="valor_daje" type="xs:decimal"/> <xs:element name="valor_ato_praticado" type="xs:decimal"/> <xs:element name="tipo_natureza" type="xs:string"/> <xs:element name="taxa_fiscal" type="xs:decimal"/> <xs:element name="quantidade_atos" type="xs:integer"/> <xs:element name="posicao_digito_4"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="12"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="posicao_digito_3"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="12"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="posicao_digito_2"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="12"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="posicao_digito_1"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="12"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="nome" type="xs:string"/> <xs:element name="municipio" type="xs:string"/> <xs:element name="linha_digitavel"> <xs:complexType> <xs:sequence> <xs:element ref="posicao_digito_1"/>

Page 12: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

12

<xs:element ref="posicao_digito_2"/> <xs:element ref="posicao_digito_3"/> <xs:element ref="posicao_digito_4"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="fecom" type="xs:decimal"/> <xs:element name="endereco" type="xs:string"/> <xs:element name="emolumentos" type="xs:decimal"/> <xs:element name="emissor" type="xs:integer"/> <xs:element name="documento" type="xs:string"/> <xs:element name="destino" type="xs:integer"/> <xs:element name="def_publica" type="xs:decimal"/> <xs:element name="data_validade" type="xs:date"/> <xs:element name="data_emissao" type="xs:date"/> <xs:element name="dajes"> <xs:annotation> <xs:documentation>Raiz da Emissão do Daje</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element ref="daje" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="daje"> <xs:complexType> <xs:sequence> <xs:element ref="dados_daje"/> <xs:element ref="contribuinte"/> <xs:element ref="valores"/> <xs:element name="boleto_intimacao" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="boleto_data_emissao" type="xs:date"/> <xs:element name="boleto_data_vencimento" type="xs:date"/> <xs:element name="boleto_posicao_1"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="5"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_posicao_2"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="5"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_posicao_3"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="5"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_posicao_4"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="6"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_posicao_5"> <xs:simpleType>

Page 13: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

13

<xs:restriction base="xs:string"> <xs:length value="5"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_posicao_6"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="6"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_digito"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="1"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_posicao_7"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="14"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="boleto_valor" type="xs:decimal"/> <xs:element name="base64_boleto" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="tipo" type="xs:string" use="required"/> <xs:attribute name="codigo_banco" use="required"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="3"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="comarca" use="required"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="7"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="codigo_cartorio_cra" use="required"/> </xs:complexType> </xs:element> <xs:element name="dados_daje"> <xs:complexType> <xs:sequence> <xs:element name="daje_numero"/> <xs:element name="daje_serie" type="xs:integer"/> <xs:element ref="emissor"/> <xs:element ref="destino"/> <xs:element ref="codigo_ato"/> <xs:element ref="quantidade_atos"/> <xs:element ref="data_emissao"/> <xs:element ref="data_validade"/> <xs:element ref="tipo_natureza"/> <xs:element name="base64_daje" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element>

Page 14: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

14

<xs:element name="contribuinte"> <xs:complexType> <xs:sequence> <xs:element ref="nome"/> <xs:element ref="endereco"/> <xs:element ref="municipio"/> <xs:element ref="documento"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="codigo_ato" type="xs:integer"/> </xs:schema>

3.1. TIPAGEM DOS ELEMENTOS E ATRIBUTOS

Abaixo, tabela com a tipagem de cada atributo e elemento especificado no

XML, definidos no XSD:

Item Tipo Tipagem

tipo Atributo xs:string

codigo_banco Atributo xs:string (3 posições)

comarca Atributo xs:string (7 posições)

codigo_cartorio_cra Atributo xs:string

daje_numero Elemento xs:integer

daje_serie Elemento xs:integer

emissor Elemento xs:integer

destino Elemento xs:integer

codigo_ato Elemento xs:integer

quantidade_atos Elemento xs:integer

data_emissao Elemento xs:date

data_validade Elemento xs:date

tipo_natureza Elemento xs:string

base64_daje Elemento xs:string

nome Elemento xs:string

endereco Elemento xs:string

municipio Elemento xs:string

documento Elemento xs:string

Page 15: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

15

valor_ato_praticado Elemento xs:decimal

valor_daje Elemento xs:decimal

emolumentos Elemento xs:decimal

taxa_fiscal Elemento xs:decimal

fecom Elemento xs:decimal

def_publica Elemento xs:decimal

posicao_digito_1 Elemento xs:string (12 posições)

posicao_digito_2 Elemento xs:string (12 posições)

posicao_digito_3 Elemento xs:string (12 posições)

posicao_digito_4 Elemento xs:string (12 posições)

boleto_data_emissao Elemento xs:date

boleto_data_vencimento Elemento xs:date

boleto_posicao_1 Elemento xs:string (5 posições)

boleto_posicao_2 Elemento xs:string (5 posições)

boleto_posicao_3 Elemento xs:string (5 posições)

boleto_posicao_4 Elemento xs:string (6 posições)

boleto_posicao_5 Elemento xs:string (5 posições)

boleto_posicao_6 Elemento xs:string (6 posições)

boleto_digito Elemento xs:string (1 posição)

boleto_posicao_7 Elemento xs:string (14 posições)

boleto_valor Elemento xs:decimal

base64_boleto Elemento xs:string Tabela 7 - Tipagem dos Elementos e Atributos

Page 16: DOCUMENTAÇÃO PARA GERAÇÃO DO XML DAJE E BOLETOcraba.portaldecartorios.com.br/ArqApoio/XmlDajeBoleto.pdf · ELEMENTO BOLETO_INTIMACAO..... ..... 10 3. DEFINIÇÃO DO XSD DE CONFECÇÃO

16

4. MODELO DO XML

O modelo de documento XML, pode ser visualizado abaixo:

<?xml version="1.0" encoding="UTF-8"?> <dajes> <daje comarca="2903201" codigo_cartorio_cra="1" tipo="apontamento" codigo_banco="237"> <dados_daje> <daje_numero>15</daje_numero> <daje_serie>15</daje_serie> <emissor>15</emissor> <destino>15</destino> <codigo_ato>16039</codigo_ato> <quantidade_atos>10</quantidade_atos> <data_emissao>2013-01-09</data_emissao> <data_validade>2013-01-15</data_validade> <tipo_natureza>NATUREZA</tipo_natureza> <base64_daje>JVBEEgMCBvYmoNCjw8IA0KL... ... ...</base64_daje> </dados_daje> <contribuinte> <nome>FLAVIO GIOVANNI</nome> <endereco>RUA DAS DORES</endereco> <municipio>5</municipio> <documento>27206038808</documento> </contribuinte> <valores> <valor_ato_praticado>122.0</valor_ato_praticado> <valor_daje>122.0</valor_daje> <emolumentos>122.0</emolumentos> <taxa_fiscal>122.0</taxa_fiscal> <fecom>122.0</fecom> <def_publica>122.0</def_publica> <linha_digitavel> <posicao_digito_1>123456789012</posicao_digito_1> <posicao_digito_2>123456789012</posicao_digito_2> <posicao_digito_3>123456789012</posicao_digito_3> <posicao_digito_4>123456789012</posicao_digito_4> </linha_digitavel> </valores> <boleto_intimacao> <boleto_data_emissao>2012-12-18</boleto_data_emissao> <boleto_data_vencimento>2012-12-18</boleto_data_vencimento> <boleto_posicao_1>12345</boleto_posicao_1> <boleto_posicao_2>12345</boleto_posicao_2> <boleto_posicao_3>12345</boleto_posicao_3> <boleto_posicao_4>123456</boleto_posicao_4> <boleto_posicao_5>12345</boleto_posicao_5> <boleto_posicao_6>123456</boleto_posicao_6> <boleto_digito>1</boleto_digito> <boleto_posicao_7>12345678901234</boleto_posicao_7> <boleto_valor>12.5</boleto_valor> <base64_boleto>JVBERi0xLjMNNCjw8IA0... ... ...</base64_boleto> </boleto_intimacao> </daje> </dajes>