Minha Integrações

Integre nossas soluções com as principais plataformas de e-commerce

Abrindo a Lista de Serviços

Para abrir a lista de serviços que o integrador irá executar, devemos acessar a rotina 517 – Minhas Integrações e clicar no botão “Consumir serviço”.

Após clicá-lo, irá aparecer a tela com a lista de serviços que irão ser executados.

1 – Adicionar um novo serviço, adicionando simplesmente um nome.

2 – Selecionar um serviço já existente e configurar os parâmetros da execução.

3 – Executar todos os serviços de uma vez só.

Obs: para executar corretamente, os parâmetros já deverão estar configurados na outra tela de edição, que irá ser mostrada abaixo.

Configurando os Parâmetros

Ao selecionarmos um serviço para configurarmos, irá abrir a tela de execução, individual, do item selecionado.
Podemos adicionar uma ou mais integrações, clicando no botão de pesquisa e selecionando um registro.

Ao clicarmos duas vezes em um registro da grid, iremos abrir a grid ao lado, sem nenhuma linha preenchida, no início.
Para adicionarmos um parâmetro na execução, podemos clicar no botão de procura, que irá buscar os parâmetros padrões já preenchidos por padrão.

Mas, se já vêm preenchidos, por que devemos adicioná-los?

Alguns parâmetros variam de acordo com a loja, como os tokens de cada um e o próprio nome.

Parâmetro de data

O parâmetro de data pode ser dinâmico, dependendo de qual período de tempo estamos querendo recuperar as informações.

Mais para frente, vamos explicar na prática, como funciona, na importação da VTex.

Obs 2: O inventório pega da macro um relatório dos últimos 15 dias.

Executar Todos

Para executar todos de uma vez, podemos ir na tela anterior e clicar no botão “Executar Todos”, que irá executar os serviços que estão em cada linha da grid, retornando, na coluna “Retorno”, “Sucesso” caso tenha executado sem nenhum erro, ou “Erro(s)” caso tenha tido erro durante alguma execução.

Com os parâmetros configurados, podemos executar o serviço, que irá consumir a API.

Exemplo Prático - VTEX

Vamos configurar na prática uma integração com a VTEX.

Na lista de serviços, temos um importador do inventário e dos pedidos realizados pela Dalla Bernardina.

Ao clicarmos em cada uma das linhas, vemos que alguns parâmetros são comuns entre os dois serviços.

No caso da VTEX, os parâmetros {{environment}}, X-VTEX-API-AppToken e X-VTEX-API-AppKey devem ser substituídos, para suas respectivas configurações.

A importação dos pedidos (ORDERS LIST) utiliza o parâmetro de data (creationDate). Com ele nós conseguimos pegar os pedidos realizados durante certo período de tempo.

Por exemplo: se quisermos as informações dos pedidos dos últimos 30 dias, podemos colocar o {{creationDate}} como creationDate: [{{ULT_30_DIAS}} TO {{AGORA}}] e o FORMAT como

yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss’.’fff’Z’.

 

Além disso, ela está ligada diretamente com o serviço de importação do item do pedido. Está configurado no template, o nó do objeto que liga os dois serviços, que no caso é o “orderId”.

 

Com o nó carregado, o importador ao ler um pedido já ativa automaticamente a importação dos itens que compõem o próprio pedido.

Resumindo: o pedido e os itens já são importados para o sistema em um único serviço.

Já na importação do inventário (INVENTORY), o serviço está ligado a macro criada, com a query a ser executada que irá listar de quais “sku’s” o serviço irá recuperar a informação do estoque, para não realizar operações repetitivas e desnecessárias.

ATENÇÃO: A importação ORDER LIST DEVE VIR ANTES DA INVENTORY, para que a importação dos inventários venha com os resultados mais atuais.

Na macro, podemos colocar datas dinâmicas também, por exemplo:

Nos últimos 15 dias (ULT_15_DIAS) que, como havia mencionado, é o padrão.

Caso a gente queira recuperar as informações do inventário dos últimos 30 dias, por exemplo, basta trocar o {{ULT_15_DIAS}}.por {{ULT_30_DIAS}}.

Basta manipular o intevalo.

As possíveis datas para substituição são:

  • {{HOJE}} : Retorna o dia de hoje às 00:00:00
  • {{AGORA}} : Retorna o dia de hoje, na exata hora atual
  • {{ONTEM}} : Retorna o dia de ontem às 00:00:00
  • {{ULT_XX_DIAS}} : Substitua o XX por qualquer valor inteiro (independente da quantidade de caractéres) e retornará o dia atual “ – ” o valor de XX. Por exemplo:
  • CreationDate:[{{ULT_3_DIAS}} TO {{HOJE}}] , retornará : creationDate:[2022-01-29T00:00:00.000Z TO 2022-02-01T00:00:00.000Z]

Obs: Estou no dia 01/02/2022  e utilizando o seguinte FORMAT : yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss’.’fff’Z’

Deve ser utilizado para criar intervalos, ou simplesmente uma data única, como no caso da SICREDI.

Feito isto, conseguimos realizar a importação, clicando em executar e teremos o mesmo resultado que foi mostrado anteriormente.

Exemplo Prático - WooCommerce

O tópico atual tem como propósito demonstrar como se dá a configuração da integração com o e-commerce chamado “WooCommerce”, e será guiado pelas seguintes perguntas:

  • Quais são os serviços possíveis? O que eles fazem?
  • Como configurar os serviços?
  • Como configurar os campos de Ws?

Os serviços são compostos de integrações, ou seja, cada serviço pode fazer mais de uma integração por vez. Por exemplo, um serviço chamado Carga total pode postar os produtos, as categorias e de quebra ainda deparar as informações geradas.

O serviço foi estruturado dessa forma visando maior maleabilidade entre as integrações, para que além de podermos criar conjuntos de serviços que conversem entre si, se for considerado que alguma integração encaixaria melhor em outra situação, a mudança é rapidamente feita, sem gerar contratempos ou dores de cabeças (desnecessárias).

As integrações podem ser de dois tipos: Importação ou exportação.

A principal diferença entre elas é que a IMPORTAÇÃO trabalha com o conceito de função (interna ou externa), ou seja, quando damos um GET em uma fonte de dados (no nosso caso um WEB-SERVICE) esses campos, desde que configurados corretamente, SERÃO utilizados como parâmetros da função.

Já a EXPORTAÇÃO trabalha com o conceito de macro, onde se configura uma série de campos por meio de um select no banco e esses campos serão postados (por meio do método POST) via API do WooCommerce.

Cada integração do tipo WS deve ter uma configuração específica, porém existem alguns campos padrões. Irei usar o exemplo abaixo para explicar melhor.

Como visto acima são 3 campos de configuração para cada WS do WooCommerce. (Vou referenciá-los pelo ID da primeira coluna)

–  ID 142 : é do tipo URL e carrega com ele o tipo de requisição será feita na API, que neste caso é POST, e seu valor deve ser a URL onde será feita a requisição.

– ID 143 :  campo padrão, trata-se do campo que faz a autenticação, é do tipo authorization, parâmetro DEVE ser Basic e,  no caso do WooCommerce, seu valor deve seguir o seguinte padrão:

cs:ck

sendo:

cs = Consumer_secret

ck = Consumer_Key

– ID 144 : campo também padrão, que trata de como o objeto deve ser retornado, e sempre será application/json. DEVE TER COMO REFERÊNCIA O CAMPO  QUE TRAZ A URL, que nesse caso foi o de ID 142.

Dito isto,  das integrações vou falar somente sobre a URL, pois é a única coisa que muda de uma pra outra.

Após essa breve explicação sobre o serviço e as integrações irei mostrar os serviços criados. Na seguinte estrutura:
– Serviço

                – Integração 

                               Breve explicação do que a integração faz.

                Se utilizar MACRO, foto do macro. Ou explicação sobre o                 que sua função (SP) faz.

        Explicação dos campos WS.    

                Explicação geral do serviço

São 4 serviços:

– Carga total: Ele faz o POST de TODOS os produtos ativos e com venda online, faz o POST de todas as categorias e faz um DEPARA dessas informações para controle no banco de dados.

– Pedidos: faz o GET de todos os pedidos com pagamento concluído, e se tudo nos conformes gera o pedido no sistema.

– Estoque: Atualiza o estoque no WooCommerce com base no estoque do ERP.

– Update: Atualiza o estoque, exclui possíveis produtos que foram desativados ou mudou para venda online=0 no ERP e atualiza a tabela depara.

Abaixo uma explicação mais completa sobre cada serviço:

  • Carga total:
    A carga total é um serviço composto de 3 integrações : Categorias, produto e depara.
    • Categorias:

Exporta as categorias da base para o WooCommerce por meio da seguinte macro:

Configuração Ws:

Produto:

Exporta os produtos:

Observação: Nessa macro, existe uma condição que deve ser editada para cada cliente.

‘and ERPMTSTABELAPRECOSITENS.TABELAID = 1’

No caso do nosso teste, foi usada a tabela de preços 1.

Configuração Ws:

Depara:

A integração depara serve para que haja um controle de exportação dos produtos. Por meio dela, sabemos quais produtos estão no site. Pela descrição acima, já é implícito que a integração depara se trata de uma IMPORTAÇÃO.

A SP da integração depara recebe alguns parâmetros e os utiliza para a validação da integridade dos dados por meio de uma tabela no banco.

Pedidos:

O serviço de pedido possui algumas particularidades. Mas em geral ele faz 2 processos (na mesma integração): Traz os pedidos que forem CONCLUÍDOS no WooCommerce, ou seja, somente os com pagamento confirmado. E se tudo certo, gera o pedido no sistema.

Entretanto, visando maior performance no processo, foi criado algo que chamamos de evento. Cada linha da integração pode fazer parte de um grupo de evento. O evento basicamente existe para que o fluxo de execução possa ser modificado sem a necessidade de outra integração e garantir a integridade dos dados. Eles ocorrem em momentos específicos da execução, por exemplo quando terminar de consumir a API antes de fechar a tela, ele vai disparar todos os OnFinish que tiver configurado. Já o OnLoad acontecerá no início de toda integração.
Então basicamente os eventos vêm para quebrar o fluxo de uma forma simples e prática. Caso queira seguir o fluxo normal, não tem problema, toda integração vem com o padrão.

Em seus campos devem ser cadastrados da seguinte forma o código do pda e o código do vendedor que serão utilizados para fazer as vendas do E-Commerce.

Então os pedidos seguem o seguinte fluxo:

No carregamento (OnLoad) pega as informações necessárias para continuar com o fluxo.

Faz a integração normalmente, ou seja, traz todos os dados

No fim (OnFinish) gera todos os pedidos que estão respeitando as validações necessárias.

Estoque:

Também é um serviço com somente 1 integração sendo assim homônimos.

Serve para atualizar o estoque do WooCommerce, bem como outros campos (que forem necessários). O estoque também vai fazer parte da próxima integração (Update), ele existe sozinho para que possa ser atualizado de uma forma mais performática.

  • Update:

Possui 3 integrações: Estoque (segue exatamente as regras do serviço acima), Exclusão da tabela depara (que é criada na carga total) e exclusão no WooCommerce.

    • Exclusão no depara

Atualiza a tabela que usamos como forma de garantia da integridade dos dados, para sabermos qual produto está postado.

Exclusão no WooCommerce

Exclui os produtos no site que foram desmarcados de “Venda online” ou foram desativados.

Exemplo Prático Integração com Sicredi

Para integrar API da sicredi foram feitas 3 integrações:

– ENVIO DE REMESSA

                Envia todos os boletos que ainda não foram enviados e que respeitam as regras da macro 33.

– RETORNO DE REMESSA

                Traz todas as remessas liquidadas do dia anterior.

– ATUALIZA TOKEN

                Gera o token obrigatório para requisições na API.

Foram divididos em 2 serviços:

– RETORNO DE REMESSIA – SICREDI

– ENVIO DE REMESSA – SICREDI

Sendo que ambos contêm a integração para atualizar o token.

As configurações necessárias são:

– USUÁRIO E UNEG nos campos do RETORNO DE REMESSA,

Valores nos campos onde estão os valores 1

Campos referentes ao banco no RETORNO DE REMESSA

Campos referentes ao banco no RETORNO DE REMESSA

Obs. Os campos: dataInicio e dataFim não devem ser alterados. Visto que já vem configurados para trazer tudo do dia anterior.

{{ONTEM}} e {{HOJE}}, como já vimos na explicação da VTEX. Aqui a formatação usada é: dd/MM/yyyy como manda o manual.

– Token para gerar a chave de transação no ATUALIZA TOKEN

MACRO para gerar os itens necessários: na macro 33, deve-se colocar o ID do serviço criado, como no exemplo da linha de código abaixo, onde o serviço criado foi o 32.

ERPMTSFINBANCOSERVICOS.FINBANCOSERVICOSID=32

Então as configurações são (não importa a ordem desde que todos sejam feitos, porém, a ordem abaixo é a mais rápida):

– Mudar ID do serviço na macro 33 (tela de Macros)

– Mudar Valor de constantes dentro dos campos de RETORNO DE REMESSA (na tela da própria integração)

– Mudar TOKEN dentro das configurações do ATUALIZA_TOKEN (na tela da própria integração)

– Configurar Campos referentes ao banco no RETORNO DE REMESSA (na tela de consumir serviço)

 

OBS. Os campos de datas e formatação já devem ir configurados, caso não vá, os exemplos das fotos devem servir

Selo ISO 29110

A MITIS está no mercado nacional desde 2008, alcançando a confiança de grandes parceiros conectados em todo o Brasil com um alto índice de satisfação atendendo empresas em todos os ramos de atividade nos mais diversos segmentos de mercado.

Módulos Mitis

Clique em cada ponto laranja para conhecer a ampla gama de soluções Mitis. São milhares de recursos que serão adaptados à realidade da sua empresa, tornando-a mais eficiente e pronta para crescer de forma exponencial.

Conheça...

Conheça...

Conheça...

Conheça...

Conheça...

Conheça...

Conheça...

Conheça...

Conheça...

Solicite uma Apresentação

Sem compromisso
As melhores soluções para sua empresa serão apresentadas pelos nossos consultores, após estudarem as necessidades da sua empresa.

Um mundo conectado
pede negócios conectados

Orçamento no seu Whatsapp e teste por 30 dias

Seja um representante Mitis!

Preencha seus dados abaixo: