Esta integração tem o objetivo de permitir a Embarcadora realizar a Pesquisa e Download de faturas (Documentos de Cobrança).
Os documentos serão retornados no Layout PROCEDA descrito neste manual , sendo que o download será realizado em Blocos de até 50 Faturas. Estes blocos serão organizados sequencialmente, cada usuário que realizar consultas terá uma sequência numérica própria. Para realizar o Download deve ser informado o número do bloco a ser baixado, o qual será o número seguinte ao último bloco baixado, por exemplo: Na primeira chamada foi informado o bloco "1", no retorno do download haverá a informação do final do bloco: "1". Para baixar os próximos documentos, deverá ser informado o bloco "2", pois os 50 documentos do bloco "1" já foram baixados. Portanto, o ERP precisará gerenciar essa informação conforme o retorno.
Caso não haja 50 documentos disponíveis para serem baixados na base, será baixado o número de documentos que estiver disponível, sendo no mínimo 1 documento, após o fechamento do bloco, o número de documentos não será mais alterado, permanecendo com o mesmo número de documentos. Os documentos só serão disponibilizados para download pelo Embarcador, após estarem com "Status Aprovado".
Para realizar novamente o download de blocos já baixados, basta informar o número do bloco a ser baixado.
Este processo ocorre de forma assíncrona, ou seja, é necessário enviar uma chamada solicitando o download dos documentos e posteriormente deve ser feita outra chamada para obter os documentos. Ambas as chamadas podem ser realizadas por um dos seguintes métodos:
•Send: Quando solicitado o resultado do processamento através deste método, os dados do rawdata, bem como os documentos, serão retornados descompactados;
•SendWithCompressedResponse: Quando solicitado o resultado do processamento através deste método, os dados do rawdata, bem como os documentos, serão retornados compactados.
As mensagens enviadas para solicitar o download dos documentos e retorno do processamento devem ser feitas conforme o padrão CrosstalkMessage, o qual é composto pelo Header e RawData.
•Header
O Header contém as informações básicas que identificam a Embarcadora e a forma de processamento da mensagem, conforme o schema: CrosstalkHeader, detalhado abaixo:
Exemplo XML Header:
<CrosstalkHeader> <ProcessCode> </ProcessCode> <MessageType> </MessageType> <ExchangePattern> </ExchangePattern> <EnterpriseId> </EnterpriseId> <Guid> </Guid> <Token> </Token> </CrosstalkHeader> |
Detalhamento do Schema do Header.
# |
Pai |
Campo |
Descrição |
Tipo |
Ocorrências |
Tamanho |
Observação |
|---|---|---|---|---|---|---|---|
1 |
|
CrosstalkHeader |
Tag Raiz. |
Grupo |
1-1 |
|
|
2 |
1 |
EnterpriseId |
Identificador da empresa emitente da mensagem. |
GUID |
1-1 |
|
Deve ser informando o Identificador gerado pela Localização. |
3 |
1 |
DestinationId |
Identificador da empresa destinatário da mensagem. |
GUID |
0-1 |
|
Deve ser informando o Identificador gerado pela Localização. Quando não informado será usado o EnterpriseId. |
4 |
1 |
Token |
Identificador do vínculo entre EnterpriseId e DestinationId. |
GUID |
1-1 |
|
Identificador de autorização que da permissão ao Destinatário receber a mensagem da Origem (vínculo entre EnterpriseId e DestinationId). |
5 |
1 |
ProcessCode |
Identificador do processo solicitado. |
Número |
1-1 |
5 |
Identifica o processo que irá processar a mensagem, neste caso: 26003 = Download de Fatura; |
6 |
1 |
MessageType |
Identifica o tipo de mensagem enviada. |
Número |
1-1 |
3 |
Para este processo deve ser utilizado o valor: 103. |
7 |
1 |
ExchangePattern |
Padrão de troca de mensagens. |
Número |
1-1 |
1 |
7 = Requisição Assíncrona: Insere a requisição do download; 8 = Resposta Assíncrona: Pesquisa o resultado do processamento de uma requisição anterior. (para retorno do resultado, é necessário informar o mesmo GUID da mensagem de requisição) |
8 |
1 |
Guid |
Identificador único da mensagem. |
GUID |
0-1 |
|
Deve ser único para cada mensagem enviada. Se não for enviado o sistema gera um automaticamente. para pesquisa de resultado de solicitação anterior, deve usar o mesmo GUID da mensagem de solicitação. |
9 |
1 |
ExecutionTime |
Data e hora de envio e execução da mensagem. |
Data/Hora |
0-1 |
|
Formato: aaaa-mm-ddThh:mm:ss. Exemplo: 2015-12-01T10:32:52. Se não for enviada esta informação, será retornada a data e hora que o Web Service recebeu a requisição. |
10 |
1 |
Encoding |
Identifica o tipo de codificação do documento enviado. |
Caractere |
0-1 |
|
Identifica o tipo de codificação do documento enviado, por exemplo: utf-8, ASCII. Se essa informação não for enviada, será considerado uft-8. |
11 |
1 |
ContentType |
Identifica o tipo de conteúdo. |
Caractere |
0-1 |
|
Identifica o tipo de conteúdo que está sendo enviado. Para o download dos documentos deve ser utilizado: text/plain |
12 |
1 |
ResponseCode |
Código de resposta do processamento, presente apenas nas mensagens de resposta. |
Número |
0-1 |
3 |
Será preenchido pela Localização na resposta da solicitação. Mensagens de Resposta. |
13 |
1 |
ResponseMessage |
Mensagem referente ao ResponseCode. |
Caractere |
0-1 |
|
Será preenchido pela Localização na resposta da solicitação. Mensagens de Resposta. |
•RawData
Dentro do RawData deverá ser filtrado o bloco de documentos que deseja receber, conforme os schemas: Search_InvoiceERPIntegration_Request especificado abaixo:
Exemplo XML de Download Faturas:
<Search_InvoiceERPIntegration_Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="" Version="1.0.0"> <Authentication> <UserName></UserName> <Password></Password> </Authentication> <Filter> <BlockNumber></BlockNumber> </Filter> </Search_InvoiceERPIntegration_Request> |
Detalhamento do Schema de Download de Documentos Fiscais do Transporte.
# |
Pai |
Campo |
Descrição |
Tipo |
Ocorrências |
Tamanho |
Observação |
|---|---|---|---|---|---|---|---|
1 |
|
Search_InvoiceERPIntegration_Request |
TAG Raiz que identifica o tipo de documento que será baixado. |
Grupo |
|
|
No atributo "Version" informar o valor "1.0.0". |
2 |
1 |
Authentication |
Contém os dados de autenticação. |
Grupo |
1-1 |
|
No atributo "IsHash" informar os valores: - "0" = Informar Senha Descriptografada; - "1" = informar Senha Criptografada. |
3 |
2 |
UserName |
Usuário de acesso ao Portal. |
Caractere |
1-1 |
|
Usuário do Portal do Embarcador com permissão à Embarcadora solicitante do Download. |
4 |
2 |
Password |
Senha de acesso ao Portal. |
Caractere |
1-1 |
|
Senha do usuário do Portal do Embarcador. |
5 |
1 |
Filter |
Grupo para informar os filtros da pesquisa. |
Grupo |
1-1 |
|
|
6 |
5 |
BlockNumber |
Número do bloco. |
Caractere |
1-1 |
|
Número do bloco de documentos a serem baixados. |