(6b) Projeto para integrar ERP ou CRM ao webservice de consultas

22
Autor: Eduardo Lanna Projeto para integrar ERP/CRM ao KeyConsultas-webservice Sistema KeyConsultas-webservice Plataforma de Automação de Consultas Públicas www.keyconsultasweb.com.br Revisado: 05/julho/2016 Developed by

Transcript of (6b) Projeto para integrar ERP ou CRM ao webservice de consultas

Autor: Eduardo Lanna

Projeto para integrar ERP/CRM aoKeyConsultas-webservice

Sistema KeyConsultas-webservice

Plataforma de Automação de Consultas Públicas

www.keyconsultasweb.com.br Revisado: 05/julho/2016

Developed by

Tecnologia adotada pelo Webservice

REST (Representation State Transfer): É um estilo de arquitetura de software para sistemas distribuídos (não é um protocolo).

Define 4 operações básicas para integração de dados entre programas (CRUD): criar (POST), ler (GET), atualizar (PUT), e deletar (DELETE). Usamos o GET.

Utiliza HTTP ou HTTPS como protocolo de transporte.

JSON (JavaScript Object Notation): É um subconjunto da notação de objetos do JavaScript. É o formato de retorno padrão do nosso Webservice.

É um formato leve para intercâmbio de dados computacionais, de fácil interpretaçãohumana para escrita e leitura;

REST/JSON: mais simples de ser interpretado e gerado por máquinas, com suporte nativoem várias linguagens. Ex.: C# Visual Studio 4.x, ASP.NET.

São modernas e mais simples alternativas que o SOAP/XML para a integração de sistemas via webservices.

Arquivos JSON são em geral bem menores que o correspondente em XML

XML é um formato mais antigo, porém é um opcional para atender a sistemas legados (Webservice SOAP 1.1, ou opcional resposta XML não SOAP).

www.keyconsultasweb.com.br

Arquitetura do Sistema KeyConsultas-webAmbiente Genérico

www.keyconsultasweb.com.br

WS

Webservice

Distribuidor

Pool de Robôs

(VMs ou Cloud)

Sistema em Cloud Server Internet – consultas públicas

https

Conexão

com o ERP

REST e JSON

Ou SOAP/XML

Websites alvo das Consultas

Consultas

Certificados

Exemplo de retorno JSON de consulta CNPJObs.: a cópia do HTML é incluída na resposta

www.keyconsultasweb.com.br

Consulta CNPJ na Receita Federal:{

"code": 1,

"data": {

"data_situacao_cadastral": "03/11/2005",

"hora_emissao": "13:24:28",

"municipio_ibge": "RIO DE JANEIRO",

"codigo_ibge": 3304557,

"outras_atividades": [ "N\u00e3o informada" ],

"situacao_cadastral": "ATIVA",

"data_abertura": "28/09/1966",

"razao_social": "PETROLEO BRASILEIRO S A PETROBRAS",

"cnpj": "33000167000101",

"obs_ibge": "OK",

"bairro": "CENTRO",

"matriz_filial": "MATRIZ",

"numero": "65",

"situacao_especial": "********",

"cep": "20031170",

"complemento": "",

"motivo_situacao_cadastral": "",

"municipio": "RIO DE JANEIRO",

"logradouro": "AV REPUBLICA DO CHILE",

"nome_fantasia": "PETROBRAS",

"atividade_economica_principal": "19 21 7 00 FABRICACAO DE

PRODUTOS DO REFINO DE PETROLEO",

"natureza_juridica": "203-8 - SOCIEDADE DE ECONOMIA MISTA",

"data_emissao": “22/09/2014",

"data_situacao_especial": "********",

"uf": "RJ"

Consulta CNPJ no Sintegra RJ:{

"code": 1,

"data": {

"data_situacao_cadastral": "",

"inscricao_estadual": "81281882",

"contingencia": "22/09/2014 11:36:40",

"enquadramento_fiscal": "REGIME NORMAL DESDE

13/10/1989.",

"situacao_cadastral": "HABILITADO",

"complemento": "",

"razao_social": "PETROLEO BRASILEIRO S A",

"telefone": "",

"cnpj": "33000167000101",

"data_consulta": "22/09/2014",

"inscricao_convertida_anterior": "",

"bairro": "CENTRO",

"logradouro": "AVN REPUBLICA DO CHILE",

"observacoes": [ "Documentos Fiscais emitidos podem

gerar cr\u00e9dito de ICMS." ],

"numero": "65",

"numero_consulta": "383194784",

"cep": "20031170",

"municipio": "RIO DE JANEIRO",

"atividade_economica_principal": "FABRICA\u00c7\u00c3O

DE PRODUTOS DO REFINO DE PETR\u00d3LEO",

"data_inclusao": "13/10/1989",

"uf": "RJ"

Consultas disponiveis no SistemaSolicite a documentação atualizada do Webservice

Vide Documentação do Webservice, revisão dez de 2015:

Receita Federal (pelo CNPJ e CPF)

Sintegra Estadual, todos as UF (pelo CNPJ ou IE)

Sintegra de Produtor Rural (pela IE, ou pelo CPF nas 17 UF onde há este cadastro)

Simples Nacional (pelo CNPJ)

Suframa (pelo CNPJ ou pelo N° Inscrição Suframa)

FDC da PMSP (pelo CNPJ ou CCM), e IM no Rio de Janeiro

IBAMA: regularidade no Cadastro Técnico Federal (pelo CNPJ ou CPF)

IBAMA: cadastro em áreas de embargo (pelo CNPJ ou CPF)

Endereço pelo CEP: Logradouro, Bairro, Cidade, UF e Cod.IBGE Municipio;

Consulta Nº do PIS/NIT do empregado na Dataprev (para o e-Social)

Consulta de Pré-Qualificação do eSocial;

CND Federal Div. Ativa (inclui INSS) e Regularidade Fiscal do FGTS

CND Trabalhista do TST (emissão em PDF)

Consulta CEIS no Portal de Transparência.

Consulta completa de CPF para eSocial, incluindo PIS/NIS e endereço.

Veja a lista completa no site: http://www.keyconsultasweb.com.br/tecnologia-e-produtos-key/webservice-sincrono/consultas-disponiveis

www.keysupport.com.br

Grau de risco fiscal na base do cadastroOpções de consultas da situação cadastral

Risco ZERO: consultar todos os registros do cadastro diariamente. Pode ser

inviável técnica ou financeiramente.

Risco Mínimo: consultar a situação cadastral apenas dos registros com

transações do dia (pedidos aprovados em 24hs).

Risco Moderado-1: consultar a situação cadastral apenas partir de um

determinado valor da transação.

Risco Moderado-2: consultar a situação cadastral de todos os registros ativos

periodicamente (semanal ou mensalmente).

Risco Alto: quando o negócio não admitir qualquer janela de verificação

superior à 24hs, clientes e fornecedores flutuantes, ou registros de cadastro

muito antigos/inativos.

www.keysupport.com.br

IMPORTANTE: consultar sempre antes do fato gerador do ICMS.

Arquitetura da infraestrutura com um ERPExemplo com SAP

Interfaces do

Usuário

Data Center Sites Oficiais na Web

Sites Alvo

Sistema Usuário ERP

KeyConsultas-webservice

Data Base

SQL

ERP Suite

Data Base

Consultas

Certificados

http ou https

REST e JSON

ou SOAP XML

Exemplo de uso de BAPI REST/JSON no SAP:

BAPI

http://scn.sap.com/community/java/blog/2012/05/22/expose-a-bapi-using-json-and-rest

www.keyconsultasweb.com.br

Interligação do SAP via PI NetWeaver

www.keyconsultasweb.com.br

Programas que

utilizam o plug-in

de Cadastro

Data Base

ERP Suite

REST e JSON

ou SOAP XML

DataCenter Cliente Sites Oficiais na Web

https

RFC / XML

PIPlug In

SAP ABAP

Webservice

Certificados

Consultas

Exemplo de uso de BAPI REST/JSON no SAP:

http://scn.sap.com/community/java/blog/2012/05/22/expose-a-bapi-using-json-and-rest

Integração com o ERP da SAP

O processo de geração das consultas parte de uma customização ABAP feita

nas telas do SAP (telas do cadastro, comandos, etc)

O SAP comunica-se via Netweaver PI com o Webservice (https) enviando os

parâmetros da consulta;

O resultado da consulta retorna pelo Webservice ao PI para o ERP SAP

Comprovantes HTML das consultas de RFB e Sintegra devem ser armazenados

localmente (por 5 anos);

Não havendo PI, pode ser adotado uma BRIDGE HTTP local, que fica no

ambiente do ERP para fazer a comunicação com o Webservice externo.

Uso da função Web.config File (.Net API) do SAP chamando uma WebRFC que

acessa o Webservice.

www.keyconsultasweb.com.br

Para integrar qualquer ERP recomenda-se um bom planejamento para definir

processos que disparam consultas no webservice de consultas cadastrais.

Planejamento do Projeto de Integração do ERP/CRM ao

KeyConsultas-webservice

Processos do ERP/CRM que disparam consultas

Casos de retorno de consulta a serem previstos

Recursos de contingência em caso de erros

www.keyconsultasweb.com.br

Integração com Sistemas de Gestão (ERP)Caso genérico de uso do Webservice

O Webservice pode ser integrado a qualquer sistema de gestão do mercado

(ERP, CRM, etc), como SAP, Oracle, TOTVS, Dynamics, etc.

O maior grau de integração exige customizar telas no ERP para incluir novas

funcionalidades, e correlação com os seguintes processos:

Gestão de Cadastros: para registros novos ou existentes:

Botão de Consultas de dados para criar novo registro cadastral;

Botão de Consultas para atualização ou revalidação de registro inativo;

Nivel de decisão é operacional: um operador analisa dados da consulta.

Monitoramento de Situação Cadastral: antes de operações mercantis.

Consultar situação cadastral na aprovação do pedido de compras (ou outra etapa do

processo que precede a emissão da NFe);

Importação de dados da consulta: atualização dinâmica da base cadastral, ou

bloqueio de registros alterados para análise de usuário antes de atualizar;

Opcional consultas em batch, em janela operacional, antes do faturamento.

www.keyconsultasweb.com.br

Gestão de CadastrosOperação de Pré-cadastramento

Objetivo: reduzir o risco de erro humano na entrada de cadastros novos, e/ou na manutenção de cadastros existentes:

Consulta essencial: Receita Federal e Sintegra Estadual.

Chave da consulta: CNPJ ou CPF na consultas para pesquisar situações.

Havendo mais de uma IE no Sintegra numa consulta pelo CNPJ, operador deve escolher UMA HABILITADA entre aquelas encontradas.

Processo tem 3 etapas operacionais: usuário operando o cadastro.

CONSULTAR, ANALISAR, e VALIDAR uso dos dados no cadastro do registro.

Operador do cadastro deve definir se aprova ou rejeita o registro após análise de dados obtidos nas consultas e fichas cadastrais.

Etapas podem ser feitas diretamente desde o ERP/CRM, ou em uma plataforma intermediária (portal de serviços) que gera um arquivo de integração para o ERP.

Outras consultas recomendadas:

Clientes: CRT IBAMA, e SUFRAMA – pelo CNPJ ou pela Inscrição;

Fornecedores: Simples Nacional, e I.M. em PMSP e RIO.

Certidões Negativas: CR do FGTS, CND Federal, CND Trabalhista (TST).

www.keyconsultasweb.com.br

Monitoramento da Situação CadastralGovernança dinâmica do cadastro

Objetivo: reduzir o risco fiscal e a Denegação da NFe em operações mercantis com parceiros em situação cadastral alterada (inapta)

Consulta essencial: Receita Federal e Sintegra Estadual.

Chave da consulta: CNPJ/CPF para RFB e a IE cadastrada no Sintegra.

Consultar a informação cadastral disponível na base para validar dinamicamente.

Processo tem 3 etapas dinâmicas automatizadas:

CONSULTAR, COMPARAR, e AUTORIZAR ou BLOQUEAR uso do registro cadastral.

A inteligência de análise do resultado deve ser automatizada na integração do ERP.

Havendo não conformidades identificadas na consulta, alguns dados podem ser atualizados automaticamente, mas há casos que requerem análise e autorização da gestão do cadastro.

Outras consultas recomendadas:

Clientes: CRT IBAMA, e SUFRAMA – pela Inscrição (disponível na base);

Fornecedores: Simples Nacional (periodicamente), CEPOM.

Certidões Negativas: antes de realizar pagamentos a Fornecedor (serviços).

www.keyconsultasweb.com.br

Definir dados que se pretende obterexemplos:

Campos da consulta em uso no pré-cadastramento:

CNPJ, Razão Social, Endereço, CNAE;

Definir uso de IE ou ISENTO;

Optante pelo Simples Nacional;

Inscrição Suframa (validade), CRT do IBAMA, etc.

Situação Cadastral válida:

CNPJ ATIVO na Receita Federal, e sem situação especial (falido, recup. judicial, espólio)

IE HABILITADA no Sintegra;

Cadastro de endereço fiscal da Receita Federal usa CEP válido no Correio.

Razão Social levemente divergente da Receita Federal (admitir abreviações).

Contribuinte do ISS com situação REGULAR.

Situação Cadastral inválida:

Diferente de ATIVO na Receita Federal, ou NÃO HABILITADO no Sintegra;

Mudança de endereço importante: alteração de UF, Município ou CEP.

Cadastro de ISS IRREGULAR, ou CR FGTS IRREGULAR.

www.keyconsultasweb.com.br

Analisar impacto do resultado da consulta e ações a adotar:

Na Gestão de Cadastros de Clientes e Fornecedores:

Obtenção de dados cadastrais é automatizada via websevice;

Análise de dados pode ser parcialmente automatizada no ERP;

Conclusão e Autorização para uso do registro pode ser validada por usuário em

instância superior, operacionalmente.

No Monitoramento de Situação Cadastral antes de operações mercantis:

Monitorar periodicamente (cada 30 dias) e/ou por evento mercantil (pedido, NFe, etc)

Bloquear a operação mercantil antes da emissão da NFe em caso de registro

INAPTO (evitar risco fiscal e de Denegação);

Bloquear o registro cadastral INAPTO automaticamente, ou;

Criar alerta (ou email) para comunicar o usuário responsável;

Atualizar dados cadastrais essenciais dinamicamente: casos especiais retornam para

a Gestão de Cadastros (mudanças de endereço, etc).

Gerar arquivo de Log para auditoria do processo de governança cadastral.

www.keyconsultasweb.com.br

Prever casos especiais: Múltiplas IE, ou IE BAIXADA

Se a consulta pelo CNPJ/CPF retorna múltiplas inscrições no Sintegra Estadual: qual usar? (ocorre em 15 UFs)

Definir regra para seleção manual do usuário para gerar uma consulta pela IE escolhida, ou;

Automatizar a consulta de uma IE da lista múltipla a partir de regras:

Consultar dados da IE HABILITADA;

Havendo mais de uma HABILITADA, consultar a de número maior (supostamente mais recente)

Não havendo HABILITADA, consultar a NÃO HABILITADA mais recente.

Não havendo resposta da situação cadastral na lista, consultar dados daquela com número maior (supostamente a mais recente).

Usuário pode ainda selecionar uma IE específica da lista na tela.

Escolher a IE: recomenda-se uma análise mais detalhada da situação:

Validar o Código da Atividade Econômica (CNAE) principal e secundário.

Escolher a IE com CNAE adequado às operações mercantis a realizar.

IE BAIXADA: pode ser caso de ISENTO, por atividade atual não obrigada ao ICMS.

www.keyconsultasweb.com.br

Prever casos especiais: IE de Produtor Rural

Quando o Sintegra Estadual tem mais de um endereço de consulta da situação cadastral: prever mais de uma consulta.

Sintegra MS tem 4 opções de consulta: em dois formulários distintos

• CNPJ ou IE para Comércio e Industria (CCI),

• CNPJ ou IE para Agropecuária (CAP).

Sintegra MG tem 4 opções de consulta, em dois formulários distintos:

• CNPJ ou IE para Comércio e Industria (CCI);

• CPF ou IE para Produtor Rural.

Sintegra PR tem 5 opções de consultas:

• CNPJ ou IE para Comércio e Indústria em geral (CCI);

• CNPJ, CPF ou IE para Produtor Rural.

Prever consultas de CNPJ na base CCI e na de Prod. Rural nestes estados:

Há a hipótese de uma IE em um cadastro (CCI) e não no outro (prod. Rural), ou uma IE em cada caso.

Em uma base ou em ambas o retorno pode ser hipótese de ISENTO: Contribuinte NÃO CADASTRADO naquele cadastro.

Consultas de Sintegra pelo CPF são sempre na opção de Produtor Rural em qualquer hipótese, e podem retornar mais de um estabelecimento na UF, logo, varias IE.

www.keyconsultasweb.com.br

Casos de FALHA na Consulta On LinePlanos de contingência

Falhas podem ocorrer como resposta da consulta On Line, como:

Indisponibilidade da rede, ou do site alvo da consulta;

Erros no site alvo: fluxo da navegação não funciona nem manualmente.

Troca do tipo de imagem do CAPTCHA quebra a automação.

Atualização no site público afeta o fluxo de navegação (crawling).

Haverá casos de ação de atualização no Sistema de Automação, e casos que

dependem da administração do site alvo consultado.

Definir como proceder em caso de falhas na consulta On Line:

Erros que indicam falha de rede ou indisponibilidade do site alvo.

Outros erros podem ser recuperáveis: gerar Reconsultas.

Alternativamente, ajustar fator de contingência de cache &cont=N (0 =< N <30)

Se o ADMIN desabilitar temporariamente as consultas com falha, manter um log

para reconsultar registros posteriormente em Batch.

www.keyconsultasweb.com.br

Parametrização de ciclo de ReconsultasPlanos de contingência

Sugestão para método de reconsultas automáticas pelo ERP/CRM:

Se o erro é irrecuperável pela reconsulta: listar caso em log e reservar registro para

consulta posterior, conforme o caso;

Se o erro é recuperável, tentar reconsultar algumas vezes:

• Reconsulta-1: em 3seg após a falha, ou até depois de15 min;

• Reconsulta-2: após 30minutos, e

• Reconsulta-3: após 60 minutos;

• Intervalos podem ser outros que atendam ao processo, até obter uma resposta, ou

encerrar o ciclo de tentativas com falha para consultar depois.

Alternativa: reconsultar com fator de Contingência &cont=N

Considerar o risco fiscal e de Denegação da NFe no processo para usar resposta em

cache de consultas anteriores.

Logs de falha em caso de consultas importantes:

Análise do risco assumido na liberação da operação NFe sem a consulta;

Bloquear operações com DANFe em contingência.

www.keyconsultasweb.com.br

Criar painel Gestor do Processo: cockpitSugestão para qualquer ERP

Cockpit para acompanhamento operacional do processo de consultas.

Painel com cenários da evolução do processo como:

Consultas em andamento on line, total e por tipo de consulta;

Consultas bem sucedidas, e consultas com falha;

Casos de falha aguardando ciclo automático de reconsulta;

Casos de registros INAPTOS, com bloqueio do registro e do faturamento;

Associar o registro consultado aos pedidos aprovados, ou novo cadastro.

Casos de automação ou que requerem ação do usuário operacional:

Comparar os campos que permitem automatizar atualizações: campos do endereço e Razão Social, CNAE, ou número da IE;

Ação do usuário requerida: situação cadastral NÃO HABILITADA da IE, caso de ISENTO mesmo com IE BAIXADA no Sintegra, etc.

Campos a serem atualizados excedem limite de caracteres: abreviar manualmente, ou utilizar DLL de um Abreviador (consulte a KeySupport)

Emitir relatórios gerenciais e operacionais.

www.keyconsultasweb.com.br

Recomendações finais para integração

O Webservice trabalha com armazenamento local em Banco de Dados de todas

as respostas das consultas;

Estes dados incluem o HTML de cada consulta realizada, inclusive quando a resposta é

“Contribuinte Não cadastrado”.

O uso de fator de contingência &cont=N permite obter estes dados como resposta da

consulta feita N dias antes (resposta até 2seg);

Procure definir uma janela operacional suficiente para as consultas dinâmicas,

visando não impactar o faturamento e emissão da NFe.

Se desabilitar consultas que apresentem falhas para não impactar a emissão das

NFe, mantenha um LOG para reconsultar posteriormente (batch).

Se liberar a entrada de dados manualmente na tela de novo cadastro por falha ou

indisponibilidade das consultas, planeje revalidar depois:

Mantenha um LOG de casos não consultados por variados motivos.

Em vários processos será possível revalidar o dado posteriormente (batch).

www.keyconsultasweb.com.br

Autor: Eduardo Lanna

Obrigado!Entre em contato conosco.

Provedor do Sistema KeyConsultas

www.keyconsultasweb.com.br

www.keysupport.com.br

Tel: +(11) 3382-1505 Atend. Coml.

Direto: +(11) 2778-8040

[email protected]

Evite riscos fiscais ao enviar seus arquivos do SPED,

mantendo os dados cadastrais atualizados conosco!!!

www.keyconsultasweb.com.br