Consulta da Quantidade de Documentos Emitidos via Web Service
A plataforma InvoiCy disponibiliza um Web Service para efetuar a consulta da quantidade de documentos emitidos pela sua empresa, dentro de um determinado período. Essa funcionalidade pode ser utilizada sem a necessidade de interação com a interface do InvoiCy, pois todo o processo funciona via WS.
O seu ERP deve realizar a integração com o novo Web Service disponibilizado pelo InvoiCy. Trata-se do WS aconsultabilhetagem.aspx. Este Web Service é único e deve ser utilizado apenas para efetuar a consulta da quantidade de documentos emitidos por sua empresa no InvoiCy, independente do tipo de documento que se deseja consultar.
Para prosseguir com o envio desta consulta através do SOAP, é necessário estabelecer uma comunicação com o Web Service apropriado. Primeiramente, visualize a estrutura WSDL do mesmo:
- Homologação:https://homolog.invoicy.com.br/aconsultabilhetagem.aspx?wsdl
- Produção: https://web.invoicy.com.br/aconsultabilhetagem.aspx?wsdl
Em seguida, será necessário realizar o consumo do Web Service para efetuar a integração.
Inicialmente, preencha o XML de envio com as informações necessárias para realizar o envio da consulta. Em seguida, é realizada a geração do hash MD5, conforme orientações do artigo de referência.
Por questões de segurança, ao invés de utilizar a chave de acesso para gerar a chave de comunicação, deverá ser utilizada a chave de acesso do parceiro, que estará disponível na tela de Parceiros, apenas para usuários Administrador ou Parceiro. Confira mais informações sobre esta tela logo abaixo:
Além disso, o XML deve ser linearizado, convertido para texto e enviado dentro da tag <inv:Documento>na estrutura SOAP, conforme demonstrado a seguir:
<soapenv:Envelope xmlns:soapenv="[http://schemas.xmlsoap.org/soap/envelope/](http://schemas.xmlsoap.org/soap/envelope/)" xmlns:inv="InvoiCy">
<soapenv:Header/>
<soapenv:Body>
<inv:recepcao.Execute>
<inv:Invoicyrecepcao>
<inv:Cabecalho>
<inv:EmpPK>ABCabcCBAcbaA+CabcCBAc==</inv:EmpPK>
<inv:EmpCK>c20ad4d76fe97759aa27a0c99bff6710</inv:EmpCK>
<inv:EmpCO></inv:EmpCO>
</inv:Cabecalho>
<inv:Informacoes>
<inv:Texto></inv:Texto>
</inv:Informacoes>
<inv:Dados>
<inv:DadosItem>
<inv:Documento><!-- (1) --></inv:Documento>
<inv:Parametros></inv:Parametros>
</inv:DadosItem>
</inv:Dados>
</inv:Invoicyrecepcao>
</inv:recepcao.Execute>
</soapenv:Body>
</soapenv:Envelope>
- Neste campo, informe o XML de envio. Para visualizar um exemplo de envio, clique aqui.
Na estrutura XML de envio, é possível informar no campo TipoConsulta os valores:
- 1 (Acumulado): ao informar esse tipo de consulta será necessário definir se deseja obter os documentos acumulados apenas do dia anterior ou os documentos acumulados do mês, até o dia anterior;
- 2 (Período): permite informar um intervalo específico para a consulta, respeitando o limite máximo de 3 meses e garantindo que a data final seja menor que a data atual.
Caso opte pelo tipo de consulta "1" (acumulado), também deverá escolher a forma da consulta, através do campo Acumulado. Os valores aceitos são "1" - Do dia anterior: a consulta irá retornar apenas os documentos acumulados do dia anterior; e "2" – Do mês: a consulta irá retornar os documentos acumulados do mês, até o dia anterior.
É importante destacar que ao realizar uma consulta acumulada do mês (até o dia anterior) no dia 01/11, por exemplo, irá retornar os documentos do mês anterior, ou seja, do mês de outubro. Se a consulta for acumulada do dia anterior, no dia 01/12, por exemplo, irá retornar apenas os documentos do dia 30/11. Já ao executar uma consulta acumulada do dia anterior, ou acumulada do mês (até o dia anterior) no dia 02/12, irá retornar apenas os documentos do dia 01/12.
Já ao optar pela tipo de consulta "2" (período), os campos DataInclusaoInicial e DataInclusaoFinal precisam ser informados, respectivamente, com a data inicial da consulta e com a data final da consulta, que deverá ser menor que a data atual e o período não poderá ultrapassar o limite de 3 meses.
Além do mais, ao efetuar a consulta o usuário poderá obter o retorno dos documentos de uma empresa específica ou para mais de uma empresa ao mesmo tempo, basta informar o CNPJ da empresa ou CNPJs correspondentes de cada empresa. Caso nenhum CNPJ seja informado, a consulta será realizada para todas as empresas do parceiro, que possuem licença ativa para o módulo consultado.
Para facilitar seu entendimento disponibilizamos um exemplo do layout de envio em Excel, clique aqui para fazer o download.
Após o envio da consulta de quantidade dos documentos, precisamos realizar a leitura do retorno do processamento dessa requisição. O retorno recebido segue a seguinte estrutura SOAP.
O InvoiCy conta com um controle das requisições recebidas, onde ao receber várias vezes a mesma requisição de consulta, dentro de um determinado período de tempo, irá bloquear essa requisição para prevenir que o ERP do cliente entre em loop e cause lentidão no sistema.
