...
O campo Metadata é um campo obrigatório que está presente nos servidores do PDVSync POSH nos registros de inquilino. Ele é um campo do tipo Json, sendo essa sua única validação para o cadastro.
Contudo, para que a aplicação funcione de forma correta, as propriedades contidas no campo metadata devem seguir um padrão.
Esse padrão está definido abaixo sendo explicado por fluxo.
Caso o campo metadata esteja nulo, uma mensagem de erro será retornada quando for solicitado qualquer processo online, vide erro.
![](/download/attachments/809122244/image-2023-12-5_11-21-29.png?version=1&modificationDate=1701786090083&api=v2)
Fluxo 1 - IP Fixo
Âncora |
---|
| Propriedades do campo metadata |
---|
| Propriedades do campo metadata |
---|
|
Propriedades do campo metadata
Nessa seção teremos as informações de todas as propriedades que podem ser enviadas no metadata e também o json com todas as propriedades.
Deck of Cards |
---|
|
Card |
---|
| Expandir |
---|
title | Metadata Json Novo |
---|
linenumbers | true |
---|
collapse | true |
---|
| { "ativarPDVSyncClientDownIntegrado": false, "ativarPDVSyncClientUpIntegrado": false, "endpointCreditoConsulta": "string", "endpointCreditoConsumo": "string", "endpointEstoqueConsulta": "string", "endpointIdentificadorPdv": "string", "endpointNotaEntradaEnvio": "string", "endpointNotaSaidaEnvio": "string", "endpointNotificaRetaguardaNovaLoja": "string", "endpointPreVendaAtualiza": "string", "endpointPreVendaConsultaListaPedido": "string", "endpointPreVendaConsultaPedido": "string", "endpointPreVendaEnvio": "string", "endpointReservaEstoqueEnvio": "string", "endpointToken": "string", "horariosExecucaoVendaConsolidada": "string", "ipDinamico": false, "login": "string", "maximoTentativas": 0, "password": "string", "portaRetaguarda": 0, "protocoloHttpRetaguarda": "string", "retaguarda": "string", "tempoMonitoraStatus": 0, "tempoMonitoraStatusVenda": 0, "tipoAutenticacao": 0, "urlBuscaIPDinamico": "string", "urlRetaguarda": "string", "versaoApi": 0 } |
Expandir |
---|
title | Definições das propriedades do metadata Novo |
---|
| Propriedade | Tipo | Descrição | Observação |
---|
ativarPDVSyncClientDownIntegrado | Booleano | Utilizado para informar se será utilizado o Client DOWN integrado no PDV Omni | Disponível apenas na V3. Valores = True ou False | ativarPDVSyncClientUpIntegrado | Booleano | Utilizado para informar se será utilizado o Client UP integrado no PDV Omni | Disponível apenas na V3. Valores = True ou False | endpointCreditoConsulta | String | Utilizado para informar o endpoint da API do Processo Online Crédito Consulta |
| endpointCreditoConsumo | String | Utilizado para informar o endpoint da API do Processo Online Crédito Consumo |
| endpointEstoqueConsulta | String | Utilizado para informar o endpoint da API do Processo Online Estoque Saldo Consulta |
| endpointIdentificadorPdv | String | Utilizado para informar o endpoint da API do Processo Online Identificador de Dispositivo PDV |
| endpointNotaEntradaEnvio | String | Utilizado para informar o endpoint da API do Processo Online Nota de Entrada |
| endpointNotaSaidaEnvio | String | Utilizado para informar o endpoint da API do Processo Online Nota de Saída Envio |
| endpointNotificaRetaguardaNovaLoja | String | Utilizado para informar o endpoint da API do Processo Online Notifica Retaguarda Nova Loja |
| endpointPreVendaAtualiza | String | Utilizado para informar o endpoint da API do Processo Online Pré Venda (Atualização de Situação) |
| endpointPreVendaConsultaListaPedido | String | Utilizado para informar o endpoint da API do Processo Online Pedido (Consulta Lista de Pedidos) |
| endpointPreVendaConsultaPedido | String | Utilizado para informar o endpoint da API do Processo Online Pedido (Consulta do Pedido completo) |
| endpointPreVendaEnvio | String | Utilizado para informar o endpoint da API do Processo Online Pre Venda Envio |
| endpointReservaEstoqueEnvio | String | Utilizado para informar o endpoint da API do Processo Online Reserva de Estoque |
| endpointToken | String | Endpoint responsável por gerar o Token de autenticação da API do Retaguarda |
| horariosExecucaoVendaConsolidada | String | Utilizado para informar os horários que serão enviados as Vendas Consolidadas para os servidores do POSH | Cada hora deve ser enviada separadas por vírgula. Ex.("12,13,14,15,16") | ipDinamico | Booleano | Utilizado para informar se será utilizado o IP dinâmico nas APIs do Retaguarda. |
| login | String | Usuário utilizado na autenticação da API do Retaguarda |
| maximoTentativas | Inteiro | Quantidade máxima de tentativas |
| password | String | Senha utilizada na autenticação da API do Retaguarda |
| portaRetaguarda | Inteiro | Utilizado para informar a Porta utilizada para acessar a API da Retaguarda | Maior que 0 | protocoloHttpRetaguarda | String | Utilizado para informar o protocolo de comunicação utilizado na API do Retaguarda | Ex.(http ou https) | retaguarda | String | Utilizado para informar qual Retaguarda está sendo utilizado pelo inquilino. | Ex.(Winthor, Protheus, etc) | tempoMonitoraStatus | Inteiro | Utilizado para informar o tempo de monitoramento de status. | Tempo em segundos | tempoMonitoraStatusVenda | Inteiro | Utilizado para informar o tempo de monitoramento de status de venda. |
| tipoAutenticacao | Inteiro | Determina o tipo de autenticação utilizado na API do Retaguarda. | Tipos definidos na seção 'Tipos autenticações' | urlBuscaIPDinamico | String | Utilizado para informar a API responsável por recuperar dinamicamente o IP das APIs do Retaguarda |
| urlRetaguarda | String | Utilizado pra informar a URL das APIs do Retaguarda |
| versaoApi | Inteiro | Utilizado para indicar a versão das APIs do POSH utilizada |
|
Expandir |
---|
| Código | Tipo |
---|
0 | NoAuth | 1 | Basic | 2 | Bearer |
|
|
|
Card |
---|
id | card1 |
---|
label | Versão antiga |
---|
| Expandir |
---|
title | Metadata Json Antigo |
---|
linenumbers | true |
---|
collapse | true |
---|
| { "creditoConsulta": "string", "creditoConsumo": "string", "estoqueConsulta": "string", "identificadorPdv": "string", "ipDinamico": false, "login": "string", "notaEntradaEnvio": "string", "notaSaidaEnvio": "string", "password": "string", "PortaRetaguarda": 88, "preVendaAtualiza": "string", "preVendaConsultaListaPedido": "string", "preVendaConsultaPedido": "string", "preVendaEnvio": "string", "ProtocoloHttpRetaguarda": "string", "reservaEstoqueEnvio": "string", "Retaguarda": "string", "tempoMonitoraStatus": 30, "token_type": "string", "UrlBuscaIPDinamico": "string", "UrlRetaguarda": "string", "urlToken": "string", "versaoApi": 0 } |
Expandir |
---|
title | Definições das propriedades do metadata antigo |
---|
| Propriedade | Tipo | Descrição | Observação |
---|
creditoConsulta | string | Utilizado para informar o endpoint da API do Processo Online Crédito Consulta |
| creditoConsumo | string | Utilizado para informar o endpoint da API do Processo Online Crédito Consumo |
| estoqueConsulta | string | Utilizado para informar o endpoint da API do Processo Online Estoque Saldo Consulta |
| identificadorPdv | string | Utilizado para informar o endpoint da API do Processo Online Identificador de Dispositivo PDV |
| ipDinamico | boolean | Utilizado para informar se será utilizado o IP dinâmico nas APIs do Retaguarda. |
| login | string | Usuário utilizado na autenticação da API do Retaguarda |
| notaEntradaEnvio | string | Utilizado para informar o endpoint da API do Processo Online Nota de Entrada |
| notaSaidaEnvio | string | Utilizado para informar o endpoint da API do Processo Online Nota de Saída Envio |
| password | string | Senha utilizada na autenticação da API do Retaguarda |
| PortaRetaguarda | integer | Utilizado para informar a Porta utilizada para acessar a API da Retaguarda |
| preVendaAtualiza | string | Utilizado para informar o endpoint da API do Processo Online Pré Venda (Atualização de Situação) |
| preVendaConsultaListaPedido | string | Utilizado para informar o endpoint da API do Processo Online Pedido (Consulta Lista de Pedidos) |
| preVendaConsultaPedido | string | Utilizado para informar o endpoint da API do Processo Online Pedido (Consulta do Pedido completo) |
| preVendaEnvio | string | Utilizado para informar o endpoint da API do Processo Online Pre Venda Envio |
| ProtocoloHttpRetaguarda | string | Utilizado para informar o protocolo de comunicação utilizado na API do Retaguarda | Ex.(http ou https) | reservaEstoqueEnvio | string | Utilizado para informar o endpoint da API do Processo Online Reserva de Estoque |
| Retaguarda | string | Utilizado para informar qual Retaguarda está sendo utilizado pelo inquilino. | Ex.(Winthor, Protheus, etc) | tempoMonitoraStatus | integer | Utilizado para informar o tempo de monitoramento de status. | Tempo em segundos | tempoMonitoraStatusVenda |
| Utilizado para informar o tempo de monitoramento de status de venda. |
| token_type | string | Determina o tipo de autenticação utilizado na API do Retaguarda. | EX.(Basic,Bearer) | UrlBuscaIPDinamico | string | Utilizado pra informar a URL das APIs do Retaguarda |
| UrlRetaguarda | string | Utilizado pra informar a URL das APIs do Retaguarda |
| urlToken | string | Endpoint responsável por gerar o Token de autenticação da API do Retaguarda |
| versaoApi | Inteiro | Utilizado para indicar a versão das APIs do POSH utilizada |
|
|
|
|
Extrair |
---|
Abaixo temos as definições dos fluxos de IP Fixo e IP Dinâmico Deck of Cards |
---|
| Card |
---|
| O fluxo "IP Fixo" funcionava a partir da url que era cadastrada com o inquilino no campo "ConnectionString", porém, com a implementação do fluxo do IP Dinâmico, este fluxo sofreu algumas alterações. Com as novas implementações, o campo obrigatório para que esse fluxo funcione é o "UrlRetaguarda" presente no campo metadata do inquilino. Aqui está um exemplo de como o metadata deve estar para que o fluxo "IP Fixo" funcione corretamente. |
|
|
...
Bloco de código |
---|
title | Campos metadata |
---|
linenumbers | true |
---|
|
|
|
|
...
...
...
"UrlRetaguarda": "http://{IP}:{Porta}" |
|
|
|
...
Propriedade | Tipo | Descrição | Observação |
---|
IpDinamico | Bool | Indica se utiliza o IP Dinâmico. | Obrigatório | UrlRetaguarda | String | URL que será feita a consulta dos dados na retaguarda | Obrigatório |
Nesse fluxo a única validação imposta é a propriedade "UrlRetaguarda" que deve estar preenchida, caso ocorra o envio dela vázia ("") ou nula, uma mensagem de erro será retornada. Vide exemplo de retorno do erro. Image Modified
Caso todas a validações estejam corretas, a requisição seguirá com seu fluxo normalmente, realizando as solicitações na URL enviada. |
Card |
---|
label | Fluxo IP dinâmico |
---|
title | Fluxo 2 - IP Dinâmico |
---|
|
|
|
...
O fluxo "IP Dinâmico" é o fluxo responsável por verificar se o IP da retaguarda sofreu alguma alteração e realizar a busca do novo IP para as novas requisições. Algumas propriedades são obrigatórias no metadata para que esse fluxo funcione corretamente Segue um exemplo de como deve ser o metadata nesse fluxo e a definição de cada propriedade |
|
|
...
Metadata
...
Bloco de código |
---|
title | Campos metadata |
---|
linenumbers | true |
---|
| {
"ipDinamico": true,
"urlBuscaIPDinamico": "http://{ip}/api/v1/client/ip", |
|
|
|
...
...
...
protocoloHttpRetaguarda": "http", |
|
|
|
...
...
...
...
Propriedade | Tipo | Descrição | Observação |
---|
IpDinamico | Bool | Indica se utiliza o IP Dinâmico. | Obrigatório | UrlBuscaIPDinamico | String | URL que será feita a consulta do IP | Obrigatório | ProtocoloHttpRetaguarda | String | Protocolo utilizado para a comunicação com a retaguarda | Obrigatório | PortaRetaguarda | Int | Porta utlizada para comunicação com a retaguarda | Opcional |
Nesse fluxo caso ocorra o envio de alguma propriedade obrigatória como vazia ou nula, uma mensagem de erro será retornada. Vide exemplo de retorno do erro. Image Modified
|
|
|