Академический Документы
Профессиональный Документы
Культура Документы
Manual de integrao
Histrico de Verses
Data
Junho/2010
Novembro/2012
Verso
1.0
1.1
Maio/2013
Novembro/2014
1.2
1.3
Descrio
Verso inicial
Alterao dos endereos de testes do webservice
Alterao de detalhamento do nome dos campos de valores para novos
segmentos supervisionados
Incluso anexos
SISCOAF
Manual de integrao
O acesso ao sistema dever ser feito por um usurio previamente cadastrado no sistema, utilizando usurio e
senha ou certificado digital de pessoa fsica ICP-Brasil.
O Envio de comunicaes poder ser feito por webservice, envio de arquivo xml ou atravs de formulrio no
site do SISCOAF. O envio utilizando webservice dever assinar o arquivo xml (descrito neste documento) com um
certificado digital de pessoa fsica (usurio do sistema).
O endereo de homologao do webservice, que poder ser utilizado para testes :
http://treina.siscoaf.serpro.gov.br/coafws/service.asmx
O endereo de produo do webservice, que dever ser utilizado :
https://www.fazenda.gov.br/siscoaf/portugues/coafws/service.asmx
Neste endereo esto as funes disponibilizadas para acesso via webservice, todas as rotinas e o
acionamento das rotinas dever utilizar assinatura digital no xml.
Os arquivos enviados para o sistema atravs de upload de arquivo ou webservice devero ter tamanho mximo
de 01MB. A interpretao das tags xml case sensitive, ou seja, as tags devero ser escritas conforme o leiaute
(maisculas e minsculas), caso contrrio podero apresentar erro na validao do formato.
As tabelas de cdigos de tipo de envolvimento e erros de validao esto disponveis no sistema no item
Comunicar em Lote
Webservice
Todas as chamadas do webservice devero ser assinadas por certificado digital de pessoa fsica. Todos os
webservice possuem somente um parmetro
1.1
EnviarLoteComunicacao
Funo para enviar lote de comunicaes
1.2
ReciboLoteComunicacao
Funo para solicitar recibo de lote enviado.
1.3
RetificarLoteComunicacao
Funo para envio de lote de retificao de comunicaes.
1.4
CancelarLoteComunicacao
Funo para cancelamento de comunicaes enviadas.
1.5
A assinatura do comunicante dever ser feita na TAG <Ocorrencias> identificada pelo atributo Id, cujo
contedo dever ser um identificador que est especificado para cada funo do webservice(envio, retificao,
cancelamento e recibo).
Campo
Pai
Ocor.
AS01
Signature
AS02
SignedInfo
AS01
1-1
AS03
CanonicalizationM
AS02
1-1
AS04
Algorithm
AS03
1-1
AS05
SignatureMethod
AS02
1-1
AS06
Algorithm
AS05
1-1
AS07
Reference
AS02
1-1
AS08
URI
AS07
1-1
AS09
Transforms
AS07
1-1
AS10
unique_Transf_Alg
AS09
1-1
AS11
Transform
AS09
1-1
Grupo de Transform
AS11
1-1
AS12
Algorithm
ser nico.
AS13
XPath
AS11
1-1
XPath
AS14
DigestMethod
AS07
1-1
AS15
Algorithm
AS14
1-1
AS16
DigestValue
AS07
1-1
AS17
SignatureValue
AS01
1-1
AS18
KeyInfo
AS01
1-1
Grupo do KeyInfo
AS19
X509Data
AS18
1-1
Grupo X509
AS20
X509Certificate
AS19
1-1
Envio de Comunicaes
Para enviar as comunicaes em lote dever ser utilizado o formato xml descrito abaixo.
2.1
A coluna Obrigao da tabela indica se obrigatrio o preenchimento do campo com um valor, porm todos os
campos (Tags) devem estar presentes no arquivo XML, mesmo que vazios.
#
Campo
C01
Obrig.
NumOcorrencia
Tipo:
Alfanumrico
Tamanho: 70
CPFCNPJCom
Tipo: Numrico
Tamanhos:
CPF = 11
inteiros
CNPJ = 14
inteiros
SIM
DtInicio
Tipo: Data
SIM
DtFim
Tipo: Data
SIM
C02
C03
Tipo
SIM
C04
C05
AgNum
Tipo: Numrico
Tamanho: 10
SIM*
C06
C07
C08
C09
C10
AgNome
Tipo: texto
Tamanho: 100
NO
AgMun
Tipo: texto
Tamanho: 100
SIM
AgUF
Tipo: texto
Tamanho: 2
SIM
Det
Tipo: Texto
Tamanho: 7000
SIM
SIM
CodEnq
Tipo: Numrico
Campo
Tipo
Obrig.
C11
VlCred
Tipo: Numrico
Desprezar os
centavos
SIM*
Campo
Tipo
Obrig.
C12
VlDeb
Tipo: Numrico
Desprezar os
centavos
SIM*
VlProv
Tipo: Numrico
Desprezar os
centavos
SIM*
VlProp
Tipo: Numrico
Desprezar os
centavos
SEAE - Loterias
Valor Pago em espcie
SIM*
Este campo dever ser preenchido com 0(zero) para
os demais segmentos:
Campo
Tipo
Obrig.
C15
Tipo: Numrico
Tamanhos:
CPF = 11
inteiros
CNPJ = 14
inteiros
SIM
NmEnv
Tipo: Texto
Tamanho: 150
SIM
TpEnv
Tipo: Numrico
Tamanho:2
SIM
C18 AgNumEnv
Tipo:Numrico
Tamanho: 4
NO
No ser preenchido
C19 AgNomeEnv
Tipo: texto
Tamanho: 100
NO
No ser preenchido
C20 NumConta
Tipo: texto
Tamanho:20
NO
No ser preenchido
C21 DtAbConta
Tipo: Data
NO
No ser preenchido
C22 DtAtuaCad
Tipo: Data
NO
No ser preenchido
CPFCNPJEnv
C16
C17
C23 PObrigada
Tipo: Binrio
SIM
C24 PEP
Tipo: Binrio
SIM
2.2
Campo
A00 LOTE
A01
A02
Pai
Ocor.
Raiz
1-1
OCORRENCIAS
A00
1-1
OCORRENCIA
A01
1-500
1-1
A03
NumOcorrencia
A02
A04
CPFCNPJCom
A05 DtInicio
A02
A02
1-1
A02
1-1
A02
1-1
A06
DtFim
A07
AgNum
A08 AgNome
A02
1-1
A09
A02
1-1
A02
1-1
A02
1-1
A10
AgMun
AgUF
A11
Det
Campo
Pai
A12
Ocor.
1-1
VlCred
A02
10
Campo
A13
Pai
A02
Ocor.
1-1
VlDeb
A02
1-1
VlProv
A02
1-1
VlProp
Este campo dever ser preenchido com
0(zero) para os demais segmentos
A16 ENQUADRAMENTOS
A02
1-1
11
Campo
Pai
Ocor.
A17
CodEnq
A18 ENVOLVIDOS
A19
ENVOLVIDO
A16
1-10
A02
1-1
A18
1-50
A20
CPFCNPJEnv
A19
1-1
NmEnv
TpEnv
A19
A19
1-1
1-1
A23 AgNumEnv
A19
1-1
No ser preenchido
A24 AgNomeEnv
A19
1-1
No ser preenchido
A25 NumConta
A19
1-1
No ser preenchido
A26 DtAbConta
A19
1-1
No ser preenchido
A27 DtAtuaCad
A19
1-1
No ser preenchido
1-1
1-1
A19
A28 PObrigada
A19
A29 PEP
12
Campo
Pai
Ocor.
A19
A30 ServPub
1-1
13
2.3
2.4
14
<PEP>0</PEP>
<ServPub>0</ServPub>
</ENVOLVIDO>
<ENVOLVIDO>
<CPFCNPJEnv>34567891000112</CPFCNPJEnv>
<NmEnv>Comercial Teste Ltda</NmEnv>
<TpEnv>25</TpEnv >
<AgNumEnv></AgNumEnv>
<AgNomeEnv></AgNomeEnv>
<NumConta></NumConta>
<DtAbConta></DtAbConta>
<DtAtuaCad></DtAtuaCad>
<PObrigada>0</PObrigada>
<PEP>1</PEP>
<ServPub>2</ServPub>
</ENVOLVIDO>
</ENVOLVIDOS>
</OCORRENCIA>
</OCORRENCIAS>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
<Reference URI="# SISCOAF30112008">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<DigestValue>hli0xeO7xxgxm90t5UaAH9ZR4w0=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>Q/XhXmqbs... ...XhXmqbsAz3SutzfNIAvN+k=</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>MIIFCTCCA/ ...w4wB0HCY6auKAucqMpi7nPWoVdHDX4bj</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
</LOTE>
15
2.5
Resposta do envio
Aps o envio da comunicao a mesma ser validada e ser enviado imediatamente um retorno ao
comunicante, disponvel em tela e gerao de arquivo xml, indicando se o envio foi bem sucedido, e em caso
de problemas na validao ser informado o problema encontrado em cada ocorrncia.
Campo
A01 RESPOSTA
Pai
Ocor.
Raiz
1-1
A01
1-1
A02
STATUS
A03
A04
A05
MENSAGENS
A01
Valores possveis: 1 e 2
1: Nenhum problema foi encontrado na validao
2: Problemas foram encontrados na validao
1-1
Poder haver at 500 mensagens em um arquivo de
resposta de validao
MENSAGEM
A03
1-500
COMUNICACAOORIGEM
A04
1-1
A04
1-1
A06
ERRO
16
17
Recibo de envio
No dia seguinte ao envio estar disponvel para o comunicante consulta do recibo de envio das
comunicaes, ser liberado consulta em tela a qual informar o nmero da comunicao do
comunicante, o nmero gerado no SISCOAF, data de envio e um hash. Ser disponibilizado
tambm o recibo em formato xml (para webservices)
#
Campo
Pai
Ocor.
A01 LOTERECIBO
Raiz
1-1
A02
OCORRENCIAS
A03 CPFCNPJCom
A04
DATA
1-1
A02
1-1
CNPJ do comunicante
A02
1-1
A01
18
</Reference>
</SignedInfo>
<SignatureValue>Q/XhXmqbs... ...XhXmqbsAz3SutzfNIAvN+k=</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>MIIFCTCCA/ ...w4wB0HCY6auKAucqMpi7nPWoVdHDX4bj</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
</LOTERECIBO>
3.2
Campo
Pai
Ocor.
A01 RESPOSTA
Raiz
1-1
A02
A01
MENSAGENS
A03 MENSAGEM
1-1
A02
1-500
A03
1-1
A05 NUMEROCOAF
A03
1-1
A06 AUTENTICACAO
A03
1-1
A07 VALOR
A03
1-1
A08
A03
1-1
A04
NUMEROORIGEM
Valores possveis:
Status
- Ativo
- Cancelada
Tag utilizada somente para indicar se uma
comunicao foi cancelada.
19
20
Cancelamento de comunicaes
O cancelamento de comunicaes ser executado on-line.
O Cancelamento de comunicaes s ser possvel aps o processamento da mesma na base, assim no
ser possvel cancelar uma comunicao que acabou de ser enviada, pois a mesma s estar disponvel no
dia seguinte. Para utilizao com webservice o arquivo xml dever ser assinado com certificado na tag
Ocorrncias.
Webservice Tag a ser assinada por certificado digital: <OCORRENCIAS>
4.1
Formato cancelamento
Campo
A01 LOTECANCELAMENTO
Pai
Ocor.
Raiz
1-1
A01
1-1
A02
OCORRENCIAS
Ex: SISCOAFCancelamento01012009
A03
OCORRENCIA
A02
1-100
A04
A03
1-1
A05 NUMEROCOAF
A03
1-1
A06 AUTENTICACAO
A03
1-1
NUMEROORIGEM
21
</LOTECANCELAMENTO>
22
4.2
Resposta do cancelamento
Aps o envio da comunicao a mesma ser validada e ser enviado imediatamente um retorno ao
comunicante, disponvel em tela e gerao de arquivo xml, indicando se o envio foi bem sucedido, e em caso
de problemas na validao ser informado o problema encontrado em cada ocorrncia.
Campo
A01 RESPOSTA
Pai
Ocor.
Raiz
1-1
A02
STATUS
A03
MENSAGENS
A01
A01
A04
1-1
A03
1-500
COMUNICACAOORIGEM
A04
1-1
A04
1-1
A06
Valores possveis: 1 e 2
1: No foi encontrado problema no cancelamento de
nenhuma comunicao
2: Problemas foram encontrados no cancelamento de
pelo menos uma comunicao
1-1
MENSAGEM
A05
ERRO
23
Retificao de comunicaes
A retificao ser executa on-line
A retificao de comunicaes s ser possvel aps o processamento da mesma na base, assim no ser
possvel retificar uma comunicao que acabou de ser enviada, pois a mesma s estar disponvel no dia
seguinte. Para utilizao com webservice o arquivo xml dever ser assinado com certificado na tag
Ocorrncias.
Na retificao todos os dados da comunicao devero ser informados novamente e ser gerado um novo
nmero no SISCOAF. O retorno do envio de um lote de retificao ser o mesmo de um lote normal.
Webservice Tag a ser assinada por certificado digital: <OCORRENCIAS>
5.1
Formato retificao
Campo
A00 LOTERETIFICACAO
A01
A02
Pai
Ocor.
Raiz
1-1
OCORRENCIAS
A00
1-1
OCORRENCIA
A01
1-500
1-1
1-1
A03
NumOcorrencia
A04 NumeroCOAF
A02
A02
A05
CPFCNPJCom
A06 DtInicio
A02
A02
1-1
A02
1-1
A02
1-1
A07
DtFim
A08
AgNum
A09 AgNome
A02
1-1
24
#
A10
A11
Campo
AgMun
AgUF
Pai
Ocor.
A02
1-1
A02
1-1
A02
1-1
A12
Det
25
Campo
Pai
A13
Ocor.
1-1
VlCred
A02
26
Campo
A14
Pai
A02
Ocor.
1-1
VlDeb
A02
1-1
VlProv
A02
1-1
VlProp
Este campo dever ser preenchido com
0(zero) para os demais segmentos
A17 ENQUADRAMENTOS
A02
1-1
27
Campo
Pai
Ocor.
A18
CodEnq
A19 ENVOLVIDOS
A20
ENVOLVIDO
A16
1-10
A02
1-1
A18
1-50
A21
CPFCNPJEnv
A19
1-1
NmEnv
TpEnv
A19
A19
1-1
1-1
A24 AgNumEnv
A19
1-1
No ser preenchido
A25 AgNomeEnv
A19
1-1
No ser preenchido
A26 NumConta
A19
1-1
No ser preenchido
A27 DtAbConta
A19
1-1
No ser preenchido
A28 DtAtuaCad
A19
1-1
No ser preenchido
1-1
1-1
A19
A29 PObrigada
A19
A30 PEP
28
Campo
Pai
Ocor.
A19
A31 ServPub
1-1
29
<PEP>0</PEP>
<ServPub>0</ServPub>
</ENVOLVIDO>
<ENVOLVIDO>
<CPFCNPJEnv>34567891000112</CPFCNPJEnv>
<NmEnv>Comercial Teste Ltda</NmEnv>
<TpEnv>2</TpEnv >
<AgNumEnv></AgNumEnv>
<AgNomeEnv></AgNomeEnv>
<NumConta></NumConta>
<DtAbConta></DtAbConta>
<DtAtuaCad></DtAtuaCad>
<PObrigada>0</PObrigada>
<PEP>1</PEP>
<ServPub>2</ServPub>
</ENVOLVIDO>
</ENVOLVIDOS>
</OCORRENCIA>
</OCORRENCIAS>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
<Reference URI="# SISCOAFRetificacao03052009">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<DigestValue>hli0xeO7xxgxm90t5UaAH9ZR4w0=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>Q/XhXmqbs... ...XhXmqbsAz3SutzfNIAvN+k=</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>MIIFCTCCA/ ...w4wB0HCY6auKAucqMpi7nPWoVdHDX4bj</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
</LOTERETIFICACAO>
30