Integração com Plataforma de Fretes
Este manual orienta a configuração do para integração com a Plataforma de Fretes, permitindo a troca de informações entre os sistemas.
Importate!
Antes de iniciar as configurações no , é necessário realizar ajustes na Plataforma de Fretes. Consulte o Manual de Integração da Plataforma de Fretes com o .
A conexão API REST (Basic Auth) é utilizada para autenticar o sistema na plataforma de fretes, utilizando os dados do usuário API criados durante o processo de configuração. Esses dados são necessários para acessar o serviço de rastreamento de objetos (SRO) e recuperar o token de autenticação.
Para cadastrar conexão, no acessar o menu Ferramentas > Integrador > Cadastro de Conexão (P0178).
Configuração da Conexão
- Tipo de Conexão: WebService HTTPS/HTTP
- Login: inserir o login fornecido
- Senha: inserir a senha correspondente
- URL Servidor Web: inserir a URL específica da integração
Importante!
- Os dados de Login e Senha cadastrados aqui serão utilizados também no Cadastro de Provedor, pois a API de autenticação da Plataforma de Fretes recebe essas informações no corpo da requisição.
- A conexão utilizada pela API será definida conforme a configuração TPAMBIENTEBASEDADOS. Para testes, a conexão será cadastrada apenas no ambiente de Homologação.
- Não é possível testar a conexão diretamente nesta tela, pois a tentativa resultará em erro.
Acessar o menu Ferramentas > Integrador > Integração API-Ativo > Provedor (P0646). Nesta etapa, é configurado o provedor de serviço responsável pela autenticação da Plataforma de Fretes.
Etapas para Cadastro do Provedor
- Criar um novo provedor
- Acessar o menu indicado e pressione Novo (Ctrl+N) para iniciar o cadastro.
- Preencha os seguintes campos:
- Código: PLT-FRETE
- Nome: PLATAFORMA DE FRETE
- Conexão para Servidor de Homologação: inserir os dados da conexão cadastrada no processo de Cadastro de Conexão para estabelecer a comunicação com o servidor de homologação.
- Configuração de Parâmetros
- Nome do recurso/endpoint da API de login:
- Nome do parâmetro: loginleilao/login
- Valor do parâmetro: vazio
- Tipo de dado: Caracter
- Tipo de parâmetro: Authorization – Endpoint
- Tipo de contexto: application/json
- Palavra-chave adicionada no header das APIs:
- Nome do parâmetro: Authorization
- Valor do parâmetro: vazio
- Tipo de dado: Caracter
- Tipo de parâmetro: Authorization - OAuth 2.0
- Tipo de contexto: application/json
- Conteúdo enviado com os dados de login:
- Nome do parâmetro: deixar em branco para que o conteúdo seja enviado no formato raw. Caso seja preenchido, indica o formato x-www-form-urlencoded.
- Valor do parâmetro: copiar e colar o script abaixo, que utilizará os mesmos dados de login configurados na Conexão:
{
"email": "login@gko.com.br",
"senha": "inserirsenha123@"
}
- Tipo de dado: Caracter
- Tipo de parâmetro: Body
- Tipo de contexto: application/json
Nota
Não é possível testar o funcionamento do Provedor de Serviço individualmente.
- Nome do recurso/endpoint da API de login:
A Visão será responsável pela recuperação dos dados necessários para o envio à Plataforma de Fretes. Para realizar o cadastrado de visão, acessar o menu Ferramentas > Extrator > Cadastro de Visão em Banco de Dados (P0546).
É necessário utilizar o script template fornecido abaixo para criar a visão. Nele já existem parâmetros configurados, basta alterar seus valores para proceder aos testes.
Em Visão em Banco de Dados (VIEWS):
- Pedido: na aba Pesquisa copiar e colar o script abaixo, depois confirme a inclusão:
<VISOES><VISAO><ID>991501</ID><Nome>PEDIDOS_PLATAFORMA</Nome><Observacao></Observacao><Parametros/><Consultas><Consulta><ID>991502</ID><ElementType>etConsulta</ElementType><Tipo>tcScript</Tipo><Name>PEDIDOS</Name><Observacao></Observacao><TabelaBase>MNOTA</TabelaBase><Conexao>0</Conexao><Script><SELECT>[AF]IDNOTA[/AF]@MNOTA.ID[,][AF]CDNOTA[/AF]@MNOTA.CDNOTA[,][AF]NOCGCCPF[/AF]@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.NOCGCCPF[,][AF]NMPARCEIRO_EMITENTE[/AF]@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.NMPARCEIROCOMERCIAL[,][AF]CDUF[/AF]@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.IDUF.@CUF.CDUF[,][AF]NMCIDADE[/AF]@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.NMCIDADE[,][AF]DSBAIRRO[/AF]@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSBAIRRO[,][AF]NOCEP[/AF]@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.NOCEP[,][AF]DSENDERECO[/AF]@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSENDERECO[,][AF]NOCGCCPF_DEST[/AF]@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.NOCGCCPF[,][AF]NMPARCEIRO_DESTINATARIO[/AF]@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.NMPARCEIROCOMERCIAL[,][AF]NMCIDADE_DEST[/AF]@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.NMCIDADE[,][AF]CDUF_DEST[/AF]@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.IDUF.@CUF.CDUF[,][AF]DSBAIRRO_DEST[/AF]@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSBAIRRO[,][AF]NOCEP_DEST[/AF]@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.NOCEP[,][AF]DSENDERECO_DEST[/AF]@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSENDERECO[,][+][AF]DTENTREGACALCULADA[/AF]@MNOTA.@@MNTAEMBARQUE#IDNOTA.DTENTREGACALCULADA[,][AF]CF_PESOBRUTO[/AF]@MNOTA.CF_PESOBRUTO[,][AF]CF_QTPESOCUBADO[/AF]@MNOTA.CF_QTPESOCUBADO[,][AF]CF_QTVOLUME[/AF]@MNOTA.CF_QTVOLUME[,][AF]CF_VALORNOTA[/AF]@MNOTA.CF_VALORNOTA[,][AF]CF_DTPREVENTCALC[/AF]@MNOTA.CF_DTPREVENTCALC[,][AF]CF_OBS1[/AF]@MNOTA.CF_OBS1[,][AF]DTINCLUSAOREG[/AF]@MNOTA.DTINCLUSAOREG[,][AF]HRINCLUSAOREG[/AF]@MNOTA.HRINCLUSAOREG[,]</SELECT></Script><SQL></SQL><Join></Join><Consultas><Consulta><ID>991504</ID><ElementType>etConsulta</ElementType><Tipo>tcScript</Tipo><Name>ITENS</Name><Observacao></Observacao><TabelaBase>MNTAITEM</TabelaBase><Conexao>0</Conexao><Script><SELECT>[AF]QTPESOCUBADO[/AF]@MNTAITEM.QTPESOCUBADO[,][+][AF]DSITEM[/AF]@MNTAITEM.IDITEM.@CITEM.DSITEM[,][+][AF]DSITMCATEGORIA[/AF]@MNTAITEM.IDITEM.@CITEM.IDITMCATEGORIA.@CITMCATEGORIA.DSITMCATEGORIA[,][AF]QTITEM[/AF]@MNTAITEM.QTITEM[,]</SELECT></Script><SQL></SQL><Join><FILTER>{@MNTAITEM.IDNOTA=<":IDNOTA">}</FILTER></Join><Consultas/></Consulta></Consultas></Consulta><layouts/></Consultas></VISAO></VISOES>
- Item do Pedido: na aba Pesquisa copiar e colar o script abaixo, depois confirme a inclusão:
<VISOES><VISAO><ID>991506</ID><Nome>ITENS_PEDIDOS_PLATAFORMA</Nome><Observacao></Observacao><Parametros/><Consultas><Consulta><ID>991507</ID><ElementType>etConsulta</ElementType><Tipo>tcScript</Tipo><Name>ITEM 2_13032024_145313</Name><Observacao></Observacao><TabelaBase>MNTAITEM</TabelaBase><Conexao>0</Conexao><Script><SELECT>[AF]IDNOTA[/AF]@MNTAITEM.IDNOTA[,][AF]CDNOTA[/AF]@MNTAITEM.IDNOTA.@MNOTA.CDNOTA[,][AF]CDSERIE[/AF]@MNTAITEM.IDNOTA.@MNOTA.CDSERIE[,][AF]NOCGCCPF[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.NOCGCCPF[,][AF]NMPARCEIRO_EMITENTE[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.NMPARCEIROCOMERCIAL[,][AF]TPPESSOA[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.TPPESSOA[,][AF]CDUF[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.IDUF.@CUF.CDUF[,][AF]NMCIDADE[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.NMCIDADE[,][AF]DSBAIRRO[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSBAIRRO[,][AF]NOCEP[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.NOCEP[,][AF]DSENDERECO[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPAREMITENTE.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSENDERECO[,][AF]NOCGCCPF_DEST[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.NOCGCCPF[,][AF]NMPARCEIRO_DESTINATARIO[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.NMPARCEIROCOMERCIAL[,][AF]NMCIDADE_DEST[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.NMCIDADE[,][AF]CDUF_DEST[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.IDCIDADE.@CCIDADE.IDUF.@CUF.CDUF[,][AF]DSBAIRRO_DEST[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSBAIRRO[,][AF]NOCEP_DEST[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.NOCEP[,][AF]DSENDERECO_DEST[/AF]@MNTAITEM.IDNOTA.@MNOTA.IDPARDESTREMET.@CPARCEIROCOMERCIAL.IDENDERECO.@CENDERECO.DSENDERECO[,][AF]DTENTREGACALCULADA[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_DTPREVENTCALC[,][AF]CF_PESOBRUTO[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_PESOBRUTO[,][AF]CF_QTPESOCUBADO[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_QTPESOCUBADO[,][AF]CF_QTITEM[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_QTITEM[,][AF]CF_VALORNOTA[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_VALORNOTA[,][AF]CF_PESOLIQUIDO[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_PESOLIQUIDO[,][AF]CF_OBS1[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_OBS1[,][AF]CF_QTVOLUME[/AF]@MNTAITEM.IDNOTA.@MNOTA.CF_QTVOLUME[,]</SELECT></Script><SQL></SQL><Join></Join><Consultas><Consulta><ID>991509</ID><ElementType>etConsulta</ElementType><Tipo>tcScript</Tipo><Name>Consulta_13032024_154152</Name><Observacao></Observacao><TabelaBase>MNTAITEM</TabelaBase><Conexao>0</Conexao><Script><SELECT>[AF]QTPESOCUBADO[/AF]@MNTAITEM.QTPESOCUBADO[,][+][AF]DSITEM[/AF]@MNTAITEM.IDITEM.@CITEM.DSITEM[,][+][AF]DSITMCATEGORIA[/AF]@MNTAITEM.IDITEM.@CITEM.IDITMCATEGORIA.@CITMCATEGORIA.DSITMCATEGORIA[,][AF]QTITEM[/AF]@MNTAITEM.QTITEM[,]</SELECT></Script><SQL></SQL><Join><FILTER>{@MNTAITEM.IDNOTA=<":IDNOTA">}</FILTER></Join><Consultas/></Consulta></Consultas></Consulta><layouts/></Consultas></VISAO></VISOES>
Nota
Essa visão não pode conter filtros, pois os processos de serviço e webhook incluem o parâmetro do Id da tabela dinamicamente.
Acessar o menu Ferramentas > Integrador > Serviço de Provedor (P0647) para configuração do endpoint disponibilizado pela Plataforma de Fretes para enviar os pedidos.
Executar a opção Novo Ctrl+N e preencher os campos abaixo:
- Código: PLPEDIDOS
- Nome: PLATAFORMA DE FRETE - PEDIDOS
- Provedor de Serviço: selecionar o provedor cadastrado para Pedido
- Visão em Banco de Dados (VIEWS): selecionar a visão criada para Pedido
- Tipo do Método de Requisição: POST
- Requisição muda estado no servidor: Não
- ENDPOINT: LEILAO/API/PEDIDO
- Configuração Parâmetros Entrada:
- Nome Parâmetro: vazio, para indicar que conteúdo deverá ser enviado no formato raw
- Tipo dado: Caracter
- Tipo parâmetro: Body
- Tipo contexto: application/json
- Valor do parâmetro:
copiar e colar o script abaixo:
{
"numeroPedido": "@[CDNOTA]",
"valorPedido": "@[CF_VALORNOTA]",
"nomeDestinatario": "@[NMPARCEIRO_DESTINATARIO]",
"documentoDestinatario": "@[NOCGCCPF_DEST]",
"enderecoOrigem": {
"uf": "@[CDUF]",
"cidade": "@[NMCIDADE]",
"bairro": "@[DSBAIRRO]",
"cep": "@[NOCEP]",
"logradouro": "@[DSENDERECO]"
},
"enderecoDestino": {
"uf": "@[CDUF_DEST]",
"cidade": "@[NMCIDADE_DEST]",
"bairro": "@[DSBAIRRO_DEST]",
"cep": "@[NOCEP_DEST]",
"logradouro": "@[DSENDERECO_DEST]"
},
"pesoBruto": "@[CF_PESOBRUTO]",
"unidadePesoBruto": "Kg",
"pesoCubado": "@[CF_QTPESOCUBADO]",
"volume": "@[CF_QTVOLUME]",
"dataPrevisaoEntregaSemHora": "@[CF_DTPREVENTCALC]",
"cnpjEmpresaOrigem": "@[NOCGCCPF]",
"nomeEmpresaOrigem": "@[NMPARCEIRO_EMITENTE]",
"observacao": "@[CF_OBS1]",
"numeroNota": "@[CDNOTA]",
"itens": {
"descricaoDoItem": "@[DSITEM]",
"quantidadeDoItem": "@[QTITEM]",
"cubagem": "@[QTPESOCUBADO]",
"produtos":"@[DSITMCATEGORIA]"
}
}
- Configuração Parâmetros Saída:
- Nome Parâmetro: Response Class
- Tipo dado: Caracter
- Tipo parâmetro: Body
- Tipo contexto: application/json
- Status: 200
- Valor do parâmetro: copiar e colar o script abaixo:
{
"timestamp": "string",
"status": "number"
"error": "string",
"path": "string"
}
- Resultado: copiar e colar o script abaixo:
<Tree2xml>
<item text="timestamp"
imageIndex="0"
stateIndex="-1"
nomecampo="timestamp"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="status"
imageIndex="0"
stateIndex="-1"
nomecampo="status"
tipodado="number"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="error"
imageIndex="0"
stateIndex="-1"
nomecampo="error"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="path"
imageIndex="0"
stateIndex="-1"
nomecampo="path"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
</Tree2xml>
Acessar o menu Ferramentas > Integrador > Serviço de Provedor (P0647) para configuração do endpoint disponibilizado pela Plataforma de Fretes para enviar os itens de pedidos.
- Código: PFITEMPED
- Nome: PLATAFORMA DE FRETES - ITENS PEDIDOS
- Provedor de Serviço: selecionar o Provedor cadastrado como Item de Pedido
- Visão em Banco de Dados (VIEWS): selecionar a visão cadastrada como Item de Pedido
- Tipo do Método de Requisição: POST
- Requisição muda estado no servidor: Não
- ENDPOINT: LEILAO/API/PEDIDO
- Configuração Parâmetros Entrada:
- Nome Parâmetro: vazio, para indicar que conteúdo deverá enviado no formato raw
- Valor do parâmetro: inserir o seguinte comando:
{
"numeroPedido": "@[CDNOTA]",
"valorPedido": "@[CF_VALORNOTA]",
"nomeDestinatario": "@[NMPARCEIRO_DESTINATARIO]",
"documentoDestinatario": "@[NOCGCCPF_DEST]",
"enderecoOrigem": {
"uf": "@[CDUF]",
"cidade": "@[NMCIDADE]",
"bairro": "@[DSBAIRRO]",
"cep": "@[NOCEP]",
"logradouro": "@[DSENDERECO]"
},
"enderecoDestino": {
"uf": "@[CDUF_DEST]",
"cidade": "@[NMCIDADE_DEST]",
"bairro": "@[DSBAIRRO_DEST]",
"cep": "@[NOCEP_DEST]",
"logradouro": "@[DSENDERECO_DEST]"
},
"pesoBruto": "@[CF_PESOBRUTO]",
"unidadePesoBruto": "Kg",
"pesoCubado": "@[CF_QTPESOCUBADO]",
"volume": "@[CF_QTVOLUME]",
"dataPrevisaoEntregaSemHora": "@[CF_DTPREVENTCALC]",
"cnpjEmpresaOrigem": "@[NOCGCCPF]",
"nomeEmpresaOrigem": "@[NMPARCEIRO_EMITENTE]",
"observacao": "@[CF_OBS1]",
"numeroNota": "@[CDNOTA]",
"itens": {
"descricaoDoItem": "@[DSITEM]",
"quantidadeDoItem": "@[QTITEM]",
"cubagem": "@[QTPESOCUBADO]",
"produtos":"@[DSITMCATEGORIA]"
}
}
- Tipo do dado do parâmetro: Caracter
- Tipo parâmetro: Body
- Tipo contexto: application/json
- Configuração Parâmetros Saída:
- Nome Parâmetro: response
- Valor do parâmetro: copiar e colar o script abaixo:
{
"timestamp": "string",
"status": "number"
"error": "string",
"path": "string"
}
- Tipo parâmetro: Body
- Tipo contexto: application/json
- Status: 200
- Resultado: copiar e colar o script abaixo:
{<Tree2xml>
<item text="timestamp"
imageIndex="0"
stateIndex="-1"
nomecampo="timestamp"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="status"
imageIndex="0"
stateIndex="-1"
nomecampo="status"
tipodado="number"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="error"
imageIndex="0"
stateIndex="-1"
nomecampo="error"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="path"
imageIndex="0"
stateIndex="-1"
nomecampo="path"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
</Tree2xml>
Acessar o menu Ferramentas > Integrador > Integrador API-Ativo > Evento WebHook (P0648) para configuração do tipo do Evento a ser disparado.
Executar a opção Novo(Ctrl+N) e preencher os campos abaixo:
- Descrição: informar uma descrição que identifique o objetivo da regra.
- Tipo de disparo: identifica o momento que a regra deve disparar/consumir o serviço.
- Informar = Imediato (Síncrono).
- Tipo operação: identifica o tipo de operação do cadastro em que a regra deve ser aplicada.
- Informar = Inclusão/Alteração.
- Tabela Monitorada e Base: indica a tabela/cadastro que a regra deve ocorrer.
- Informar = [DNE] (MNOTA)
- Serviço de Provedor: indica o serviço que será disparado quando a regra for atendida.
- Informar o serviço cadastrado: PFPEDIDO | PLATAFORMA DE FRETES - PEDIDOS.
- Condição disparo da regra: copiar e colar o script abaixo e/ou adicionar filtros que o sejam necessários para o contexto do Cliente.
- <FILTER>{@PFPEDIDO.ID<><"0">}</FILTER>]
Acessar o menu Ferramentas > Integrador > Integrador API-Ativo > Evento disparados (P0649) para visualizar os registros dos eventos disparados. Nessa tela, o usuário poderá verificar se o pedido ou fatura foi enviado com sucesso. Caso contrário, será possível consultar o log para identificar o erro e realizar o devido tratamento.
A conexão API REST (Basic Auth) é utilizada para autenticar o sistema na plataforma de fretes, utilizando os dados do usuário API criados durante o processo de configuração. Esses dados são necessários para acessar o serviço de rastreamento de objetos (SRO) e recuperar o token de autenticação.
Para cadastrar conexão no , acessar o menu Ferramentas > Integrador > Cadastro de Conexão (P0178).
Configuração da Conexão
- Tipo de Conexão: WebService HTTPS/HTTP
- Login: inserir o login
- Senha: inserir a senha
- URL Servidor Web: inserir a URL
Importante!
- Os dados de Login e Senha cadastrados aqui serão utilizados também no Cadastro de Provedor, pois a API de autenticação da Plataforma de Fretes recebe essas informações no corpo da requisição.
- A conexão utilizada pela API será definida conforme a configuração TPAMBIENTEBASEDADOS. Para testes, a conexão será cadastrada apenas no ambiente de Homologação.
- Não é possível testar a conexão diretamente nesta tela, pois a tentativa resultará em erro.
Acessar o menu Ferramentas > Integrador > Integração API-Ativo > Provedor (P0646).
Nesta etapa, é configurado o provedor de serviço responsável pela autenticação da Plataforma de Fretes.
Etapas para Cadastro do Provedor
- Criar um novo provedor
- Acessar o menu indicado e pressione Novo (Ctrl+N) para iniciar o cadastro.
- Preencha os seguintes campos:
- Código: PLT-FRETE
- Nome: PLATAFORMA DE FRETE
- Conexão para Servidor de Homologação: inserir os dados da conexão cadastrada no processo de Cadastro de Conexão para estabelecer a comunicação com o servidor de homologação.
- Configuração de Parâmetros:
- Nome do recurso/endpoint da API de login
- Nome parâmetro: loginleilao/login
- Valor parâmetro: vazio
- Tipo dado: Caracter
- Tipo parâmetro: Authorization – Endpoint
- Tipo contexto: application/json
- Palavra chave que é adicionada no header das APIs:
- Nome parâmetro: Authorization
- Valor parâmetro: vazio
- Tipo dado: Caracter
- Tipo parâmetro: Authorization - OAuth 2.0
- Tipo contexto: application/json
• Conteúdo enviado com dados do login
- Nome parâmetro: vazio, para indicar que conteúdo deverá enviado no formato raw. Caso preenchido, indica o formato: x-www-form-urlencoded.
- Valor parâmetro: copiar e colar o script abaixo. Este irá utilizar os mesmos dados de login configurados na Conexão.
- Tipo dado: Caracter
- Tipo parâmetro: Body
- Tipo contexto: application/json
{
"email": "email@gko.com.br",
"senha": "senhaGko123@"
}
Nota
Não é possível testar o funcionamento do Provedor de Serviço individualmente.
- Nome do recurso/endpoint da API de login
A Visão será responsável pela recuperação dos dados necessários para o envio à Plataforma de Fretes. Para realizar o cadastrado de visão, acessar o menu Ferramentas > Extrator > Cadastro de Visão em Banco de Dados (P0546).
É necessário utilizar o script template fornecido abaixo para criar a visão. Nele já existem parâmetros configurados, basta alterar seus valores para proceder aos testes.
Em Visão em Banco de Dados (VIEWS), na aba Pesquisa copiar e colar o script abaixo, depois confirmar a inclusão:
<VISOES><VISAO><ID>1358501</ID><Nome>FATURAS_PLATAFORMA</Nome><Observacao></Observacao><Parametros/><Consultas><Consulta><ID>1358502</ID><ElementType>etConsulta</ElementType><Tipo>tcScript</Tipo><Name>FATURAS_PLATAFORMA</Name><Observacao></Observacao><TabelaBase>MFATURA</TabelaBase><Conexao>0</Conexao><Script><SELECT>[AF]CDFATURA[/AF]@MFATURA.CDFATURA[,][AF]DTEMISSAO[/AF]@MFATURA.DTEMISSAO[,][AF]DTVENCIMENTO[/AF]@MFATURA.DTVENCIMENTO[,][AF]DTPAGAMENTO[/AF]@MFATURA.DTPAGAMENTO[,][AF]CNPJCOMPANHIA[/AF]@MFATURA.IDPARCOMPANHIA.@CPARCEIROCOMERCIAL.NOCGCCPF[,][AF]NMCOMPANHIA[/AF]@MFATURA.IDPARCOMPANHIA.@CPARCEIROCOMERCIAL.NMPARCEIROCOMERCIAL[,][AF]VRFRETECOBRADO[/AF]@MFATURA.VRFRETECOBRADO[,][AF]VRICMS[/AF]@MFATURA.VRICMS[,][AF]VRISS[/AF]@MFATURA.VRISS[,][+][AF]CDSTATUSFATURA[/AF]@MFATURA.IDSTATUSFATURA.@CSTATUSFATURA.CDSTATUSFATURA[,][+][AF]DSSTATUSFATURA[/AF]@MFATURA.IDSTATUSFATURA.@CSTATUSFATURA.DSSTATUSFATURA[,][AF]DTLIBERACAO[/AF]@MFATURA.DTLIBERACAO[,][+][AF]NMLOGIN[/AF]@MFATURA.IDUSURESPONSAVEL.@CUSUARIO.NMLOGIN[,][+][AF]CNPJTRANSPORTADORA[/AF]@MFATURA.IDPARTRANSPORTADORA.@CPARCEIROCOMERCIAL.NOCGCCPF[,][+][AF]NMTRANSPORTADORA[/AF]@MFATURA.IDPARTRANSPORTADORA.@CPARCEIROCOMERCIAL.NMPARCEIROCOMERCIAL[,]</SELECT></Script><SQL></SQL><Join></Join><Consultas/></Consulta><layouts/></Consultas></VISAO>
</VISOES>
Acessar o menu Ferramentas > Integrador > Serviço de Provedor (P0647) para configuração do endpoint disponibilizado pela Plataforma de Fretes para enviar as faturas.
Executar a opção Novo (Ctrl+N) e preencher os campos abaixo:
- Código: PLFATURA
- Nome: PLATAFORMA DE FRETE - FATURAS
- Provedor de Serviço: selecionar o provedor cadastrado para Fatura
- Visão em Banco de Dados (VIEWS): selecionar a visão cadastrada para Fatura
- Tipo do Método de Requisição: POST
- Requisição muda estado no servidor: Não
- ENDPOINT: LEILAO/API/FATURA
- Configuração Parâmetros Entrada:
Incluir o parâmetro que configura o formato do JSON que será enviado na API de Faturas da Plataforma de Fretes
- Nome Parâmetro: vazio, para indicar que conteúdo deverá enviado no formato raw
- Tipo dado: Caracter
- Tipo parâmetro: Body
- Tipo contexto: application/json
- Valor do parâmetro: copiar e colar o script abaixo:
{
"status": "@[DSSTATUSFATURA]",
"numero": "@[CDFATURA]",
"codigo": "@[CDSTATUSFATURA]",
"valor": "@[VRFRETECOBRADO]",
"imposto": "Valor ICMS ou ISS",
"impostoNome": "ICMS ou ISS",
"dataEmissao": "@[DTEMISSAO]",
"dataPagamento": "@[DTPAGAMENTO]",
"dataExportacao": "Date",
"dataVencimento": "@[DTVENCIMENTO]",
"cnpjEmpresaEmbarcadora": "@[CNPJCOMPANHIA]",
"cnpjEmpresaTransportadora": "@[CNPJTRANSPORTADORA]",
"usuarioAutorizacao": "@[NMLOGIN]",
"dataAutorizacao": "@[DTLIBERACAO]",
"valorICMS": "@[VRICMS]",
"valorISS": "@[VRISS]"
}
- Configuração Parâmetros Saída:
Incluir um parâmetro a ser utilizado no para mapear os campos da resposta do serviço que serão apresentados na tela
- Nome Parâmetro: Response
- Tipo dado: Caracter
- Tipo parâmetro: Body
- Tipo contexto: application/json
- Status: 200
- Valor do parâmetro: copiar e colar o script abaixo:
{
"timestamp": "string",
"status": "number",
"error": "string",
"path": "string"
}
- Resultado
<Tree2xml>
<item text="timestamp"
imageIndex="0"
stateIndex="-1"
nomecampo="timestamp"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="status"
imageIndex="0"
stateIndex="-1"
nomecampo="status"
tipodado="number"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="error"
imageIndex="0"
stateIndex="-1"
nomecampo="error"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
<item text="path"
imageIndex="0"
stateIndex="-1"
nomecampo="path"
tipodado="string"
nomevisao="V_PEDIDOS"
caminho=""
numeroloop="0"
tipoloop="linha"
campochave=""/>
</Tree2xml>
Acessar o menu Ferramentas > Integrador > Integrador API-Ativo > Evento WebHook (P0648) para configuração do tipo do Evento a ser disparado.
Executar a opção Novo(Ctrl+N) e preencher os campos abaixo:
- Descrição: informar uma descrição que identifique o objetivo da regra.
- Tipo de disparo: identifica o momento que a regra deve disparar/consumir o serviço.
- Informar = Imediato (Síncrono).
- Tipo operação: identifica o tipo de operação do cadastro em que a regra deve ser aplicada.
- Informar = Inclusão/Alteração.
- Tabela Monitorada e Base: indica a tabela/cadastro que a regra deve ocorrer.
- Informar = Fatura[MFATURA]
- Serviço de Provedor: indica o serviço que será disparado quando a regra for atendida.
- Informar o serviço cadastrado nesse PT "PFFATURA|PLATAFORMA DE FRETES - FATURAS".
- Condição disparo da regra: copiar e colar o script abaixo e/ou adicionar filtros que o sejam necessários para o contexto do Cliente.
- <FILTER>{@MFATURA.ID<><"0">}</FILTER>]
Acessar o menu Ferramentas > Integrador > Integrador API-Ativo > Evento disparados (P0649) para visualizar os registros dos eventos disparados. Nessa tela, o usuário poderá verificar se o pedido ou fatura foi enviado com sucesso. Caso contrário, será possível consultar o log para identificar o erro e realizar o devido tratamento.
A Oferta de Frete da Plataforma de Fretes ao ser recebida no , ela será cadastrada como Frete Combinado. Com isso, é necessário indicar alguns parâmetros dentro da aplicação.
- Em Inclusão/alteração do Cadastro de Frete Combinado (P0022), é necessário preencher os campos na aba Cadastro:
- Código da Integração: P22
- Descrição dos dados de troca: FRETE COMBINADO
- Status Integração: Aitvo
- Tipo Requisição: Síncrono
- Sistema/Entidade/Módulo que utiliza a integração: campo deve fica vazio
- Tipo de integração: WebService transação
- Código do processo: 22
- Visão de Banco de Dados (VIEWS): campo deve fica vazio
- Controle de Transferência: atualizar status integrado após consulta
- Parametrização de privilégio para a integração de Frete Combinado na tela Privilégios (P0065).
- Para liberar o privilégio de Frete Combinado, siga os passos abaixo:
- Acessar o menu Ferramentas > Segurança > Privilégios (P0065).
- Selecionar o grupo de usuários desejado.
- Buscar pela opção relacionada ao Frete Combinado e dar um duplo clique sobre a opção para habilitar o flag azul.
- Clicar em Salvar para aplicar a configuração.
- Para liberar o privilégio de Frete Combinado, siga os passos abaixo:
English
Español
English
Español


