Padrão INFISC – Santiago

Última atualização em: 30 de junho, 2015

 

O Padrão INFISC – SANTIAGO não segue nenhum modelo ABRASF, porém oferece suporte à tecnologia de Web Services. Seus layouts de XML são semelhantes ao Padrão INFISC (utilizado em Caxias do Sul), no entanto, devido a particularidades do município, existem diferenças entre os dois padrões, segue abaixo as particularidades deste novo padrão.

1. O sistema não permite:

  • Informar o Intermediário do serviço.
  • Substituição de RPS.
  • Inutilização da Nota.
  • Efetivar uma nota sem Tomador;
  • Enviar o caractere & nos dados do RPS.

2. Número e Série do RPS

Para a emissão de NFS-e, a prefeitura deve autorizar o uso de uma série, não sendo possível utilizar uma série diferente da qual está autorizada, o número da NFS-e pode ser utilizado de forma sequencial para cada série.

3. Consulta

É possível também realizar a consulta da NFS-e no sistema da prefeitura, o mesmo também dispõe de downloads de arquivos pertinentes às notas, bem como a impressão da Nota Fiscal em formato de PDF. Para realizar a consulta da NFS-e deve acessar o sistema da prefeitura com as credenciais fornecidas pela mesma, após deve-se acessar “NFS-e => Consultar”, após isso deverá ser informado os valores nos campos de filtros para que o sistema carregue a visualização das NFS-e pretendidas.

4. Cancelamento

O cancelamento dos documentos é realizado através dos Web Services disponibilizados pelo InvoiCy.

5. Canhoto de RPS

Desde setembro de 2015 está disponível no layout de recepção um novo campo RPSCanhoto. Este campo permite que na exportação da nota em PDF no sistema da prefeitura de Santiago seja possível imprimir um canhoto da nota, como mostra a imagem abaixo.

Canhoto de RPS

6. Exemplo de XML

Para visualizar um XML de exemplo enviado ao InvoiCy clique aqui.

7. Optante pelo Simples Nacional

Os valores aceitos para optante simples nacional são:

Optante Simples Nacional

Se for informado que o prestador é optante pelo Simples Nacional, o InvoiCy irá zerar alguns campos (listados abaixo), conforme instrução do manual de integração da INFISC:

  • Base de cálculo
  • Base de cálculo do ISS Retido
  • Valor do ISS
  • Alíquota ISS
  • Base de cálculo do ISS

Padrão INFISC – Santiago – Antigo

Última atualização em: 30 de junho, 2015

O Padrão INFISC – SANTIAGO não segue nenhum modelo ABRASF, porém oferece suporte à tecnologia de Web Services. Seus layouts de XML são semelhantes ao Padrão INFISC (utilizado em Caxias do Sul), no entanto, devido a particularidades do município, existem diferenças entre os dois padrões, segue abaixo as particularidades deste novo padrão.

1. Natureza da Operação

O campo de natureza da operação deverá seguir o padrão do InvoiCy NFS-e abaixo:

2. O sistema não permite:

  • Informar o Intermediário do serviço.
  • Substituição de RPS.
  • Inutilização da Nota.
  • Efetivar uma nota sem Tomador;
  • Enviar o caractere & nos dados do RPS.

3. Número e Série do RPS

Para a emissão de NFS-e, a prefeitura deve autorizar o uso de uma série, não sendo possível utilizar uma série diferente da qual está autorizada, o número da NFS-e pode ser utilizado de forma sequencial para cada série.

4. Consulta

É possível também realizar a consulta da NFS-e no sistema da prefeitura, o mesmo também dispõe de downloads de arquivos pertinentes às notas, bem como a impressão da Nota Fiscal em formato de PDF. Para realizar a consulta da NFS-e deve acessar o sistema da prefeitura com as credenciais fornecidas pela mesma, após deve-se acessar “NFS-e => Consultar”, após isso deverá ser informado os valores nos campos de filtros para que o sistema carregue a visualização das NFS-e pretendidas.

5. Canhoto de RPS

Desde setembro de 2015 está disponível no layout de recepção um novo campo RPSCanhoto. Este campo permite que na exportação da nota em PDF no sistema da prefeitura de Santiago seja possível imprimir um canhoto da nota, como mostra a imagem abaixo.

Canhoto de RPS

 

6. Cancelamento

O cancelamento dos documentos é realizado através dos Web Services disponibilizados pelo InvoiCy.

7. Exemplo de XML

Para visualizar um XML de exemplo enviado ao InvoiCy NFS-e clique aqui.

8. Optante pelo Simples Nacional

Os valores aceitos para optante simples nacional são:

Optante Simples Nacional

Se for informado que o prestador é optante pelo Simples Nacional, o InvoiCy irá zerar alguns campos (listados abaixo), conforme instrução do manual de integração da INFISC:

  • Base de cálculo
  • Base de cálculo do ISS Retido
  • Valor do ISS
  • Alíquota ISS
  • Base de cálculo do ISS

Padrão Comunix

Para utilizar o Padrão Comunix deve-se atentar para algumas particularidades.

1. Envio

1.1 Configurações para emissão

Este padrão não utiliza certificado digital, então para permitir o envio é necessário informar a senha de acesso ao sistema da prefeitura, esta deve ser informado no InvoiCy em Painel de Controle->Configurações para a emissão de NFS-e->Senha de Autenticação. Para que a mesma possa ser preenchida no envio.

OBS.: Além da senha de autenticação, para fazer o envio via Web Services, é necessário uma liberação diretamente com o suporte da Comunix. Ambos os ambientes necessitam de uma liberação para envio da nota.

Para solicitar essa liberação, deve ser enviado um e-mail com os dados da empresa e o município para os endereços: suporte@ariss.com.br, mauricio.silva@comunix.net

1.2 Numeração

Para conseguir efetivar a nota deve se seguir exatamente a numeração da prefeitura, caso contrário à prefeitura retornara erro de número inválido. Quando a nota é rejeitada, a nota deve ser reenviada ou uma nova nota pode ser enviada, porém deve conter a numeração exata da próxima nota.

1.3 Tomador Estrangeiro

As informações do tomador devem ser preenchidas mesmo se o tomador for estrangeiro.

1.4 Intermediário, itens e substituição.

No padrão Comunix não é possível adicionar informações sobre intermediários, itens e não possui substituição da NFS-e.

1.5 Envio de notas em lote

O padrão Comunix não permite o envio de documentos em lote. Porém, o InvoiCy gerencia essa questão, e você pode enviar um lote para o InvoiCy, que o mesmo vai enviar unitariamente.

1.6 Natureza da Operação

Segue abaixo os códigos aceitos para o Padrão Comunix.

1.7 Deduções
No padrão Comunix, o grupo de dedução (ListaDed) é obrigatório.

1.8 Local de Prestação do Serviço
No padrão Comunix, o grupo do Local de Prestação do Serviço (LocalPrestacao) é obrigatório.

2. Consulta

O padrão Comunix não possui Web Service de consulta de notas, sendo assim as notas emitidas diretamente pelo sistema da prefeitura se efetivadas/canceladas não será possível disponibilizar a mesma no InvoiCy, pois não será possível consultar o XML da NFS-e.

3. Cancelamento

Os municípios que utilizam o padrão Comunix não poderão cancelar a nota através do InvoiCy, nele só será alterado o status da nota para cancelado, este deve ser feito diretamente no sistema da prefeitura.

4. Exemplo XML

Para visualização de um XML de exemplo para envio, clique aqui.

Padrão Comunix – Antigo

Para utilizar o Padrão Comunix deve-se atentar para algumas particularidades.

1. Envio

1.1 Configurações para emissão

Este padrão não utiliza certificado digital, então para permitir o envio é necessário informar a senha de acesso ao sistema da prefeitura, esta deve ser informado no InvoiCy em Painel de Controle->Configurações para a emissão de NFS-e->Senha de Autenticação. Para que a mesma possa ser preenchida no envio.

OBS.: Além da senha de autenticação, para fazer o envio via Web Services, é necessário uma liberação diretamente com o suporte da Comunix. Ambos os ambientes necessitam de uma liberação para envio da nota.

Para solicitar essa liberação, deve ser enviado um e-mail com os dados da empresa e o município para os endereços: suporte@ariss.com.br, mauricio.silva@comunix.net

1.2 Numeração

Para conseguir efetivar a nota deve se seguir exatamente a numeração da prefeitura, caso contrário à prefeitura retornara erro de número inválido. Quando a nota é rejeitada, a nota deve ser reenviada ou uma nova nota pode ser enviada, porém deve conter a numeração exata da próxima nota.

1.3 Tomador Estrangeiro

As informações do tomador devem ser preenchidas mesmo se o tomador for estrangeiro.

1.4 Intermediário, itens e substituição.

No padrão Comunix não é possível adicionar informações sobre intermediários, itens e não possui substituição da NFS-e.

1.5 Envio de notas em lote

O padrão Comunix não permite o envio de documentos em lote. Porém, o InvoiCy gerencia essa questão, e você pode enviar um lote para o InvoiCy, que o mesmo vai enviar unitariamente.

1.6 Natureza da Operação

Segue abaixo os códigos aceitos para o Padrão Comunix quando não é utilizado tabela unificada:

Para utilização da tabela unificada verificar os códigos aceitos no layout de envio.

1.7 Deduções
No padrão Comunix, o grupo de dedução (ListaDed) é obrigatório.

1.8 Local de Prestação do Serviço
No padrão Comunix, o grupo do Local de Prestação do Serviço (LocalPrestacao) é obrigatório.

2. Consulta

O padrão Comunix não possui Web Service de consulta de notas, sendo assim as notas emitidas diretamente pelo sistema da prefeitura se efetivadas/canceladas não será possível disponibilizar a mesma no InvoiCy, pois não será possível consultar o XML da NFS-e.

3. Cancelamento

Os municípios que utilizam o padrão Comunix não poderão cancelar a nota através do InvoiCy, nele só será alterado o status da nota para cancelado, este deve ser feito diretamente no sistema da prefeitura.

4. Exemplo XML

Para visualização de um XML de exemplo para envio, clique aqui.

Envio de e-mail com informações dos documentos

Última atualização em: 21 de setembro, 2017

 

O layout de envio de documentos no InvoiCy conta com a tag <EmailArquivos>, onde o emissor pode informar um ou vários endereços de e-mail para receber informações sobre os documentos enviados, assim como os arquivos PDF e XML em anexo.

Para fazer uso desta funcionalidade, basta informar a tag <EmailArquivos> no layout de integração contendo um endereço de e-mail válido. Para enviar mais de um endereço de e-mail basta usar o separador “;”, como demonstrado na imagem a seguir.

Observação: Para quem emite documentos utilizando Certificado A3, essa tag <EmailArquivos> não irá existir pois o fluxo de emissão utiliza o modelo de documentos SEFAZ. Desta forma somente será possível informar e-mail na tag  <xEmail_dest>.

Se os endereços informados estiverem incorretos o e-mail não será enviado, e será gravada uma mensagem de log informando sobre a inconformidade. Caso o emissor não receber o e-mail poderá fazer uso da funcionalidade “Enviar e-mail”, disponível na tela de detalhes, para os documentos de tipo NF-e, CT-e, NFS-e e NFC-e.

Ao clicar no ícone de envio de e-mail abrirá uma tela, listando os endereços de e-mail informados na tag EmailArquivos e na tag correspondente ao e-mail do Destinatário. Os endereços podem ser alterados e novos endereços ainda podem ser incluídos.

Destacando que esta funcionalidade estará habilitada apenas para os documentos com status Autorizado, Cancelado e emitidos em contingência EPEC, e todos os endereços informados irão receber o mesmo e-mail, contendo informações sobre o documento.

Ao clicar no botão enviar aparecerá uma mensagem em tela informando sobre o status da operação, ou seja, se o e-mail foi enviado com sucesso ou se ocorreu alguma falha durante o processo de envio.

Também existe a possibilidade de solicitar o envio de e-mails via Web Service, com o objetivo de permitir que o próprio usuário, via ERP por exemplo, solicite o envio de e-mail de determinados documentos, ou de todos os documentos emitidos em determinada data. O envio irá ocorrer na hora, caso a quantidade de documentos for igual a 1. Para quantidades superiores ou para um período de dias o processo será agendado.

É possível solicitar o envio de e-mails via Web Service de 3 formas, destacando que deve-se escolher apenas uma das opções:

– Solicitar o envio do e-mail de apenas um único documento: onde deve-se informar a chave de acesso específica do documento e um endereço de e-mail. Confira um exemplo desse layout de envio na imagem abaixo.

Ao informar um endereço de e-mail, somente este será o destinatário, independentemente do que estiver configurado no documento. Caso nenhum endereço seja informado, o e-mail será enviado para o e-mail do destinatário informado no documento. Caso o destinatário do documento não possua um e-mail informado, o usuário receberá como retorno o código 113 – Documento [Chave de Acesso] não possui e-mail para envio, e nenhum e-mail será enviado.

Caso o envio do e-mail seja executado com sucesso, o retorno será o seguinte: 100 – E-mail enviado com sucesso.

Para facilitar seu entendimento disponibilizamos um exemplo do layout enviado que está representado na imagem acima, clique aqui para fazer o download.

– Solicitar o envio do e-mail de vários documentos: pode-se informar um conjunto de chaves de acesso com seu respectivo e-mail. Por ser uma quantidade de documentos maior que 1, os e-mails não serão enviados na hora, mas será agendado um processo para executar o envio dos e-mails posteriormente. Confira um exemplo desse layout de envio na imagem a seguir.

Da mesma forma, ao informar um endereço de e-mail somente este será o destinatário. Caso nenhum endereço seja informado, o e-mail será enviado para o e-mail do destinatário informado no documento. E caso o destinatário do documento não possua um e-mail configurado, nenhum e-mail será enviado.

Caso o envio do e-mail seja executado com sucesso, o retorno será o seguinte: 100 – Envio de e-mail agendado com sucesso.

Para facilitar seu entendimento disponibilizamos um exemplo do layout enviado que está representado na imagem acima, clique aqui para fazer o download.

– Solicitar o envio do e-mail de documentos emitidos em um determinado período: pode-se informar um conjunto de datas (de emissão do documento) com seu respectivo e-mail. Confira um exemplo desse layout de envio na imagem abaixo.

Seguindo a lógica dos exemplos anteriores, ao informar um e-mail todos os documentos emitidos naquela data serão enviados para o endereço informado. Caso não informar nenhum endereço, os documentos serão enviados para o e-mail do destinatário de cada documento. E caso o destinatário do documento não possua um e-mail configurado, não receberá nenhum e-mail.

Caso o envio do e-mail seja executado com sucesso, o retorno será o seguinte: 100 – Envio de e-mail agendado com sucesso.

Para facilitar seu entendimento disponibilizamos um exemplo do layout enviado que está representado na imagem acima, clique aqui para fazer o download.

Os possíveis retornos para o cliente, ao solicitar o envio de e-mail via Web Service são:

100 – E-mail enviado com sucesso

100 – Envio de e-mail agendado com sucesso

111 – Falha no envio de e-mail [DESCRIÇÃO DA FALHA]

112 – Documento [CHAVE DE ACESSO] não foi localizado na base de dados

113 – Documento [CHAVE DE ACESSO] não possui e-mail para envio

114 – Não foi localizado nenhum documento emitido na data [DATA DE EMISS]

115 – O e-mail informado é inválido

116 – Chave de acesso inválida

118 – Solicitação ultrapassou o limite de [LIMITE] dias

118 – Solicitação ultrapassou o limite de [LIMITE] documentos

119 – Data inválida

120 – Documento [CHAVE DE ACESSO] não possui um status final da SEFAZ e não será enviado.

É possível ainda configurar se os e-mails que serão enviados irão anexar os arquivos do documento, enviar apenas o link para download dos mesmos, ou não enviar essa informação. A tela de configurações dos e-mails pode ser acessada através do ‘Painel de Controle’, e no módulo desejado clicar sobre a opção ‘Configurações dos e-mails’, conforme demonstra a imagem a seguir.

Na tela de configurações dos e-mails existem os campos “Enviar PDF” e “Enviar XML”, com as opções: ‘Em anexo’, ‘Link para download’ e ‘Não enviar’. Nessa mesma tela também pode-se configurar o texto dos e-mails que serão enviados pela aplicação.

Ao selecionar a opção ‘Em anexo’ para ambos os campos, os arquivos PDF e XML serão anexados junto ao e-mail. Selecionando a opção ‘Link para download’, um link será enviado junto ao texto do e-mail. E marcando a opção ‘Não enviar’, o destinatário do e-mail não receberá os documentos XML e PDF do documento.

Recuperação de Senha

Última atualização em: 18 de abril, 2016

 

A Plataforma InvoiCy permite que os próprios usuários recuperem sua senha no caso de enfrentarem problemas ao fazer login na aplicação. A seguir iremos descrever o passo a passo para que você usuário efetue a recuperação da sua senha.

1º Acesse a tela de login e clique no link “Esqueci minha senha”.

2º Em seguida, informe o endereço de e-mail do seu usuário que está cadastrado no InvoiCy e clique no botão “Recuperar senha”, para receber as informações para alterar a sua senha. Nessa etapa é efetuado um controle para verificar se o endereço de e-mail informado é válido, e se o mesmo está cadastrado na aplicação, caso contrário ao clicar no botão aparecerá uma mensagem em tela alertando sobre as inconformidades.

3º Se o endereço de e-mail foi informado corretamente, ao clicar no botão “Recuperar senha” é apresentada uma mensagem de sucesso em tela, e enviado um e-mail para o endereço informado contendo as instruções para alteração da senha.

 

4º Ao receber o e-mail que contém um texto padrão, clique no link para acessar a tela para alteração da senha. O link enviado tem uma validade de 15 minutos, após isso não será mais possível acessá-lo.

5º Na tela para alteração da senha, informe e confirme a nova senha que deseja cadastrar para o seu usuário, e clique no botão “Salvar”.

6º Ao finalizar o processo, uma mensagem de sucesso aparecerá em tela, informando que a nova senha foi salva para o seu usuário.

7º Clique no link “Clique aqui” para ser redirecionado para a tela de login, onde poderá efetuar o login na aplicação já utilizando a nova senha cadastrada.

por brunakalschne Postado em InvoiCy

Tela para Inutilização de Documentos

Última atualização em: 24 de abril, 2017

 

Olá! Neste artigo iremos explicar como funciona a tela de inutilização de documentos na Plataforma InvoiCy. A seguir descrevemos o passo a passo para que você usuário possa acessar a tela e efetuar a inutilização de seus documentos.

Através do Menu lateral esquerdo da aplicação acesse a opção Inutilizar. Destacando que essa opção aparecerá apenas se o usuário tiver permissão para inutilizar documentos.

Menu

 

Na tela de Inutilização de Documentos é possível visualizar os documentos que já foram inutilizados no dia atual, e ainda os documentos que foram rejeitados. Através dos filtros de Modelo, que contém as opções NF-e, NFC-e e CT-e, e Série é possível realizar consultas na tela, clicando no botão Pesquisar. Os documentos serão listados na grid de acordo com os filtros informados.

É importante destacar que no filtro de Modelo aparecerão apenas os módulos para os quais a empresa possui licença ativa.

Para inutilizar os documentos, basta clicar no botão Inutilizar, posicionado ao lado direito da tela. Abrirá então uma nova tela, onde você usuário deverá escolher o modelo de documento que deseja inutilizar, informar a série, faixa de numeração e o motivo da inutilização, e clicar no botão “Confirmar inutilização”, conforme a imagem abaixo.

Nessa tela, na opção Modelo também aparecerão apenas os módulos para os quais a empresa possui licença ativa.

Em seguida será necessário confirmar se você realmente deseja inutilizar essa faixa de documentos informados, através do botão “Confirmar”, como demonstra a imagem a seguir.

Quando a faixa informada ultrapassar mais de 101 documentos a inutilização será agendada, então juntamente com a tela de confirmação o usuário deverá informar um endereço de e-mail para receber uma notificação com os detalhes do processo. Esse campo já virá preenchido com o e-mail do usuário logado na aplicação, mas podem ser informados vários endereços de e-mail, separando os mesmos com um “;”.

Ao confirmar a inutilização, no final do processo será apresentada uma mensagem em tela, informando sobre o status do processo.

Você usuário também tem a possibilidade de inutilizar os documentos rejeitados através do ícone posicionado na grid, onde será aberta a tela de inutilização já com os dados do documento preenchido, sendo necessário apenas realizar a confirmação do processo.

Se ao tentar inutilizar uma faixa onde alguns documentos já foram inutilizados, autorizados ou cancelados, não será possível inutilizar a faixa, e aparecerá uma mensagem informativa para o usuário em tela, conforme a imagem abaixo.

Versão 1.10.0.0 – mais detalhes

Confira todas as alterações realizadas na versão 1.10.0.0 do InvoiCy:

 

Código da solicitação – Descrição
2830 – Desenvolver o controle “Esqueceu a senha”
3103 – Diferença de status entre a tela inicial e tela de detalhes
3884 – Problema com a validação de endereços de e-mail (tag EmailArquivos)

Solicitações do Módulo CT-e:
4218 – Consulta e atualização de documentos entre AC, InvoiCy e SEFAZ
3988 – Número do endereço e bairro não são impressos no DACTE
3994 – Ajustar dados do tomador
3817 – Alterações no DACTE conforme NT 2015/001
3305 – Melhorar o controle do processo do EPEC no CT-e
3543 – Impressão de CC-e
3669 – Reenvio de e-mail
3677 – Botões desalinhados CT-e no IE 9 e Firefox
3747 – Tela de detalhes do CT-e – Aba logs
3816 – Validar schema nas rejeições que apresentam erro 215
3833 – Formatar chave de acesso na tela de detalhes do documento
3780 – Enviar e-mail com os documentos em anexo

Solicitações do Módulo NF-e:
4202 – Alteração da Fonte na impressão do DANFE
2748 – Contingência Formulário de Segurança
2997 – Cancelamento de notas em contingência
3291 – Impressão de CC-e
3689 – Erro ao usar fonte do código de barras no DANFE

Solicitações do Módulo NFC-e:
4216 – Consulta e atualização de documentos entre AC, InvoiCy e SEFAZ
3173 – Apresentar a descrição “Consumidor Final” na tela inicial
4005 – Retorno na consulta de NFC-e Inutilizada via DLL
3444 – Melhoria do processo de Simular Timeout SEFAZ

Solicitações do Módulo NFS-e:
3969 – Adicionar campos no cadastro de Empresas NFS-e

Solicitações do Módulo MDF-e:
4217 – Consulta e atualização de documentos entre AC, InvoiCy e SEFAZ

Release Notes – Versão 1.10.0.0

Versão 1.10.0.0 – 23/06/2015 e 05/07/2015

Contingência Formulário de Segurança

O processo de envio de NF-e foi adequado para permitir também a emissão de documentos em contingência FSDA (Formulário de Segurança). Dessa forma, o emissor de NF-e terá a possibilidade de escolher entre as seguintes opções para envio em contingência: EPEC, SVC ou FSDA.

Funcionalidade “Esqueci minha senha”

Foi implementado também o controle de “Esqueceu a senha” através de um link posicionado na tela inicial do InvoiCy, permitindo que os próprios usuários realizem a recuperação de suas senhas. Ao solicitar a troca da senha o usuário receberá um e-mail contendo um link para acessar e definir sua nova senha.

Impressão de CC-e para NF-e e CT-e

Agora é possível efetuar a impressão do PDF da CC-e pela tela inicial, clicando sobre o ícone de impressão na grid, onde aparecerá uma opção para você usuário escolher se deseja imprimir o PDF do documento ou o PDF da Carta de Correção, ou pela tela de Detalhes do documento, aba Eventos, onde estará habilitado para impressão o PDF da última CC-e autorizada.

Alterações no DACTE

Foram implementadas algumas melhorias no DACTE, em relação a impressão dos dados de endereço dos envolvidos, e também a adequação do bloco de “Informações relativas a impostos”, conforme a NT 2015/001, possibilitando que os campos do DACTE recebam valores de outras tags de acordo com a situação tributária do CT-e.

Melhorias no controle de emissão de CT-e em EPEC

Também foi implementado um controle no InvoiCy para não permitir que um CT-e emitido em EPEC seja emitido novamente com tpEmis 1. Isso irá evitar o bloqueio das empresas para futuras emissões, permitindo que as mesmas efetuem a conciliação dos documentos já emitidos em EPEC.

Melhorias na tela de Detalhes

Também foram efetuadas melhorias na tela de detalhes dos documentos, acrescentando a opção para reenvio de e-mail junto as demais ações da tela (Baixar XML e Imprimir), e formatando o conteúdo da chave de acesso do documento, incluindo ao lado do campo um botão para realizar a cópia da chave de acesso sem a formatação (apenas números).

Detalhamento das versões

Para conhecer todas as modificações realizadas nessa versão, clique aqui.

por brunakalschne Postado em InvoiCy

Integração com o Invoicy via Java

Última atualização em: 09 de maio, 2016

Olá,

Se o seu ERP utiliza a linguagem Java e está integrando com o InvoiCy leia este artigo.

A comunicação com o Web Service do InvoiCy se dá através de uma comunicação segura, dependendo de como a integração foi desenvolvida pode retornar o seguinte erro ao comunicar com o InvoiCy em produção:

Warning: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
Warning: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
Warning: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLHands
hakeException: sun.security.validator.ValidatorException: PKIX path building fai
led: sun.security.provider.certpath.SunCertPathBuilderException: unable to find
valid certification path to requested target
No content received
Exception in thread “main” org.eclipse.swt.SWTException: Failed to execute runna
ble (java.lang.RuntimeException: Connection has been shutdown: javax.net.ssl.SSL
HandshakeException: sun.security.validator.ValidatorException: PKIX path buildin
g failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to
find valid certification path to requested target(-10001))

Alguns parceiros disponibilizaram a solução técnica a seguir para resolver este erro.

Solução para quem desenvolve em Genexus compilando a aplicação em Java:

1. Passo – Criar keystore

Estando na pasta BIN do JRE, digitar o seguinte comando “keytool -genkey -keystore c:\keystore.jks” e pressionar a tecla “enter”, será solicitada a inserção da senha do armazenamento da chave que deve ser: “qualquer_senha”, após pressionar “enter” e confirmar a senha será solicitado para redigitar, é só digitar novamente: “senha_escolhida” e pressionar “enter”, responder as perguntas como informado abaixo:

Após todos os dados informados, será solicitado que você informe a senha de armazenamento novamente “senha_escolhida” e então confirme a senha “senha_escolhida” e pronto, keystore criado.

2. Passo – Assinar keystore com o certificado

Tendo o certificado digital da Migrate salvo em seu computador, assine o keystore com o certificado digital, conforme exemplo abaixo:

keytool -import -trustcacerts -alias <alias> -file <file> -keystore <keystore>

Ex: keytool -import -trustcacerts -alias nfse -file c:\-.invoicy.com.br.crt -keystore c:\keystore.jks

Você terá o keystore assinado com o certificado digital.

3. Passo – Iniciar a aplicação JAVA vinculando ao keystore

Inicialize a aplicação JAVA, adicionando o keystore com o comando:

– Djavax.net.ssl.trustStore=”CAMINHO_CERTIFICADO”

– Djavax.net.ssl.trustStorePassword=SENHA, conforme exemplo abaixo:

Java -Djavax.net.ssl.trustStore=” c:\keystore.jks “

-Djavax.net.ssl.trustStorePassword=senha123 –cp gxclassr.zip;swt.jar;. umain

  • Solução para quem desenvolve em Java:

Segue abaixo passos para assinar digitalmente os jars com o certificado da Migrate.
O comando keytool deve ser usado dentro da pasta “bin” da “jre”.

1. Passo – Criar keystore

Digitar o seguinte comando:

keytool -genkey -keystore <CAMINHO>\<NOME_KEYSTORE>” e pressionar a tecla “enter”, será solicitada a inserção da senha do armazenamento da chave que deve ser: “qualquer_senha”, após pressionar “enter” e confirmar a senha será solicitado para redigitar, é só digitar novamente: “senha_escolhida” e pressionar “enter”, responder as perguntas como informado abaixo:

Ex:keytool -genkey -keystore c:\pastax.gerenciador.keystore
Qual é o seu nome e o seu sobrenome?
Desenvolvimento

Qual é o nome da sua unidade organizacional?
Desenvolvimento

Qual é o nome da sua empresa?
EmpresaX

Qual é o nome da sua cidade ou localidade?
Estado

Qual é o nome do seu estado ou município?
Cidade

Quais são as duas letras do código do país desta unidade?
UF

Após todos os dados informados, será solicitado que você informe a senha de armazenamento novamente “senha_escolhida” e então confirme a senha “senha_escolhida” e pronto, keystore criado.

2. Passo – Assinar keystore com o certificado

keytool -import -trustcacerts -alias <alias> -file <file> -keystore <keystore>

Ex: keytool -import -trustcacerts -alias nfse -file c:\-.invoicy.com.br.crt -keystore c:\pastax.gerenciador.keystore

Você terá o keystore assinado com o certificado digital.

3. Passo – Assinar os jars da aplicação

Assinar todos os Jars até os de dentro da lib com o certificado.

jarsigner -keystore “C:\pastax.gerenciador.keystore”

“C:\pastax.gerenciador_lib\axis.jar” nfse

Será solicitada a senha de armazenamento criada no keystore.

Pronto, arquivo de certificado criado, jars assinados.

4. Passo – Dentro da aplicação

Nas classes de controle, que instância as conexões com os webservices, é necessário setar as seguintes propriedades.

public static final String TRUSTSTORE = “javax.net.ssl.trustStore”;
public static final String TRUSTSTOREPASSWORD = “javax.net.ssl.trustStorePassword”;
public static final String NOMEARQUIVOCHAVE = “pastax.gerenciador.keystore”;
public static final String SENHAARQUIVOCHAVE = “senhaA”;

System.setProperty(TRUSTSTORE, <CAMINHO DO KEYSTORE>);
System.setProperty(TRUSTSTOREPASSWORD, SENHAARQUIVOCHAVE);