dez
30
2019

Integração Compliance

30 de dezembro de 2019

Índice

-

Olá! Nesse artigo iremos explicar sobre a integração com a API para enviar as conciliações ao InvoiCy.

Para facilitar seu entendimento também criamos uma documentação de integração com o Postman, para acessá-la clique aqui.

Por questões de segurança, é necessário gerar um token para integração com a API.

1. Como gerar o token de segurança para o compliance:

O token a ser utilizado nas requisições do compliance deve ser gerado da seguinte forma:

{{ host-invoicy }} – o host do invoicy
{{ pk }} – chave de parceiro (partner-key)
{{ ck }} – Hash MD5 da chave de acesso com o corpo da requisição md5(chaveAcesso + body)
{{ cnpj  }} – CNPJ da empresa que quer gerar o token
{{ extensao }} – nome da extensão que se deseja o token (nesse caso ‘compliance’)

O tipo da resposta será: Content-Type: application/json

2. Como agendar a conciliação:

O cliente poderá fazer o agendamento da conciliação utilizando o token da seguinte forma:

{{ access-token }} – token gerado no passo 1
{{ pk }} – chave de parceiro (partner key)
{{ cnpj-raiz }} – CNPJ raiz da empresa
{{ data-inicial }} – data inicial do período a ser conciliado (YYYY-MM-DD)
{{ data-final }} – data final do período a ser conciliado (YYYY-MM-DD)
{{ modelo }} – modelo do documento (nfce ou nfe)
{{ fusoHorario }} – Fuso horário de onde está fazendo a requisição, ex: -0300 || -03:00

O tipo da resposta será: Content-Type: application/json

OBSERVAÇÃO: a URL retornada ao fazer o agendamento da conciliação, será utilizada posteriormente para fazer o envio do arquivo compactado com os documentos a serem conciliados.

3. Como enviar documentos para conciliação:

O cliente terá 10 minutos para enviar o documento a ser conciliado, após esses 10 minutos o processo de conciliação será executado para o agendamento, se o cliente não enviar o documento antes dos 10 minutos será necessário repetir o passo 2.

  • O conteúdo do documento deve seguir a seguinte regra:

* Campos obrigatórios

– Para cada empresa:

1                            2

99999999999999|51d19cb4cfba20398cc3ff20b091f243

1 – CNPJ *
2 – hashMD5(cnpj + chaveAcesso) *

– Para cada documento:

1         2     3    4                 5                                                                                       6

99999|999|99|9999-99-99|99999999999999999999999999999999999999999999|S

1 – Número *
2 – Série *
3 – Modelo *
4 – Data de emissão (YYYY-MM-DD) *
5 – Chave de acesso (em caso de inutilização, não é necessário informar)
6 – Documento cancelado/inutilizado (S – sim)

Os dados devem ser separados por | (pipe)

Exemplo do conteúdo:

O documento deve ser um arquivo de texto (.txt) compactado (.zip) e enviado da seguinte forma:

{{ url }} – url recebida no passo 2
documento.zip – arquivo binário

OBSERVAÇÃO: exemplificando o envio através do Postman, ao clicar na url recebida no passo 2, a mesma deverá ser um método PUT, onde no Body será enviado o conteúdo em ‘binary’, possibilitando assim fazer upload do arquivo .zip, como demonstramos na imagem a seguir.

Retorno da requisição com status 200 em caso de sucesso.

4. Como consultar a conciliação:

A conciliação poderá ser consultada da seguinte forma:

{{ protocolo }} – Protocolo recebido no agendamento da conciliação
{{ access-token }} – token gerado no passo 1

Os retornos possíveis na consulta da conciliação seguem:

{{ url-divergencias }} – url contendo um arquivo com todas divergências da conciliação.

O conteúdo do arquivo de divergências será um arquivo de texto (.txt) no seguinte formato:

1                           2         3     4   5 6

99999999999999|99999|999|99|9|9

1 – CNPJ
2 – Número
3 – Série
4 – Modelo
5 – Status do documento InvoiCy
6 – Status do documento Cliente

Exemplo de retorno:

  • Status do documento

1 – INCONSISTENTE
0 – FALTANTE
2 – AUTORIZADO
3 – REJEITADO
5 – CANCELADO
6 – INUTILIZADO

{{ cnpjs-processados }}quantidade de CNPJ’s já processados (integer)

 {{ erro-conciliacao }} – mensagem informando qual o erro que ocorreu (string)

{{ data-processamento }} – data e hora do processamento (YYYY-MM-DDTHH:mm:ss.SSSZ)

https://mostbetsitez.com, https://mostbetaz2.com, https://1xbet-az24.com, https://vulkanvegas-bonus.com, https://mostbetcasinoz.com, https://mostbet-azerbaycanda.com, https://mostbet-az24.com, https://vulkan-vegas-spielen.com, https://1winaz888.com, https://vulkan-vegas-24.com, https://1xbetaz3.com, https://1xbet-azerbaycanda.com, https://1xbetsitez.com, https://mostbet-royxatga-olish24.com, https://mostbet-azerbaycan-24.com, https://mostbet-uzbekistons.com, https://mostbet-azer.xyz, https://pinup-bet-aze.com, https://1xbet-azerbaycanda24.com, https://1xbet-az-casino2.com, https://1xbetaz777.com, https://mostbet-qeydiyyat24.com, https://mostbetuztop.com, https://1win-az-777.com, https://pinup-azerbaycanda24.com, https://1xbet-az-casino.com, https://mostbet-az.xyz, https://vulkanvegaskasino.com, https://mostbet-azerbaycanda24.com, https://pinup-qeydiyyat24.com, https://1win-qeydiyyat24.com, https://vulkan-vegas-888.com, https://mostbetuzbekiston.com, https://1xbetkz2.com, https://mostbet-ozbekistonda.com, https://mostbet-kirish777.com, https://mostbetsportuz.com, https://mostbettopz.com, https://vulkan-vegas-erfahrung.com, https://1xbetaz888.com, https://mostbet-oynash24.com, https://mostbetaz777.com, https://kingdom-con.com, https://1win-azerbaycanda24.com, https://mostbet-uz-24.com, https://vulkan-vegas-kasino.com, https://1x-bet-top.com, https://most-bet-top.com, https://mostbet-azerbaijan2.com, https://1winaz777.com, https://1xbetaz2.com, https://vulkan-vegas-casino2.com, https://vulkanvegasde2.com, https://vulkan-vegas-bonus.com, https://1xbetcasinoz.com, https://pinup-azerbaijan2.com, https://mostbetuzonline.com, https://1win-azerbaijan2.com, https://pinup-az24.com, https://1win-az24.com, https://1xbet-azerbaijan2.com, https://pinup-bet-aze1.com, https://1win-azerbaijan24.com, https://mostbet-az-24.com, https://mostbet-azerbaijan.xyz