Especificação de Integração · Regras de Negócio
Aplicativo de Força de Vendas — Manual de Integração
Referência técnica ponta a ponta: autenticação e seleção de filial, cadastro de clientes, consulta de produtos, montagem do pedido de venda, avisos da tela inicial e sincronização dos pedidos, com todas as regras dirigidas por configuração.
Pré-requisito. A API da empresa deve ser obtida previamente no endpoint da Metasis. Todo o fluxo abaixo pressupõe essa API já configurada. As configurações lidas logo após o login (seção 1.5) são reutilizadas por todas as telas — Clientes, Produtos e Pedido — portanto devem ser carregadas uma vez e mantidas em memória/local durante a sessão.
01 Login & Autenticação
A autenticação é feita em duas etapas: um login inicial que devolve um token temporário usado apenas para listar as filiais do usuário, e um segundo login — já com a filial escolhida — que devolve o token completo da sessão.
1.1 Fluxo geral
- Login inicial em
/Login(sem filial) → obtém token temporário. - Com o token temporário, consultar
/api/v1/SynUsuario/GetByFilter→ lista os usuários/filiais. - Usuário seleciona a filial (
cdFil) na qual deseja logar. - Login definitivo em
/Loginpassando a filial → obtém o token completo. - Carregar as configurações da filial em
/api/v1/Aplicativo(seção 1.5).
1.2 Login inicial
/Login{ "user": "teste@teste.com", // e-mail de login "password": "••••••••", // senha do usuário "idOrigem": "APP" // sempre "APP" quando vindo do aplicativo }
Retorna um token temporário, suficiente apenas para a consulta de filiais a seguir.
1.3 Seleção de filial
Com o token temporário, consultar os usuários do login. Cada item retornado corresponde a um usuário de uma filial diferente — a aplicação deve listar os cdFil para o usuário escolher.
/api/v1/SynUsuario/GetByFilterDeLogin = "teste@teste.com" // e-mail de login IdAtivo = 1 // somente usuários ativos
{ "success": true, "totalCount": 0, "data": [{ "cdUsuario": 0, // salvar no token — usado em cadastros "nmUsuario": "string", "deLogin": "string", "cnpjUsuario": "string", "idAtivo": 0, "qtTokenDuracao": 0, "cdFil": "string", // código da filial — item por filial "nmFil": "string", "cdEst": "string", "deRoles": "string" }] }
1.4 Login com filial
Após a seleção, efetuar o login novamente incluindo o filial. Este retorna o token completo da sessão.
/Login{ "user": "teste@teste.com", // e-mail de login "password": "••••••••", // senha do usuário "filial": "01", // código da filial selecionada "idOrigem": "APP" // sempre "APP" }
1.5 Configurações do aplicativo
Logo após logar, obter as configurações da filial. Passar apenas o filtro de filial, com base na filial logada. Essas configurações regem o comportamento das demais telas.
/api/v1/Aplicativo/api/v1/Aplicativo/GetByFilter filtro: filial logadaPrincipais campos de configuração retornados em data[] e onde são aplicados:
| Configuração | Domínio | Onde se aplica |
|---|---|---|
cdReg | string | Filtro da consulta de avisos — §5.1 |
usaListaPreco | 0 / 1 / 2 | Consulta de produtos — §3.1 |
cdListaPdr · dePreco | string | Lista de preço padrão. |
tipoDesconto | 0 / 1 / 2 | Desconto no pedido — §4.4 |
peDescMax | % | Desconto máximo — §4.4 |
validaVlMinimo | 0 / 1 | Valor mínimo — §4.4 |
mostrarVlMinimo | 0 / 1 | Exibe valor mínimo — §4.4 |
usaPacote | 0 / 1 | Campo de pacote — §4.4 |
cdEstoque · deEst | string | Estoque considerado. |
sugerirPrazoPorCliente | 0 / 1 | Sugere prazo conforme cliente. |
obrigaPrazoPorCliente | 0 / 1 | Obriga prazo conforme cliente. |
validaAtrasoFin | 0 / 1 / 2 | Atraso financeiro — §4.3 |
tpValidacaoAtrasoFin | 0 / 1 | Escopo do atraso — §4.3 |
validaLimiteCredito | 0 / 1 / 2 | Limite de crédito — §4.3 |
cadastrarCliente | 0 / 1 / 2 | Cadastro de cliente — §2.2 |
tpCadastroCliente | 0 / 1 | Obrigatoriedade de campos — §2.4 |
prazos[] | array | Faixas de prazo (vlIniPrazo, cdPrazo, dePrazo). |
demascs[] | array | Máscaras de exibição de código. |
02 Clientes
A disponibilidade da tela de cadastro e a obrigatoriedade dos campos dependem das configurações cadastrarCliente e tpCadastroCliente lidas no login.
2.1 Cidade / UF e CEP
- Os campos Cidade e UF são somente leitura (apenas visuais).
- Online: preenche com o retorno da API de CEP (§2.6).
- Offline: mantém em branco (ou informação parcial); o preenchimento definitivo ocorre na sincronização, quando houver conexão.
2.2 Configuração — cadastrarCliente
| Valor | Modo | Comportamento |
|---|---|---|
| 0 | Não permitir | Não habilita a tela de cadastro. Os clientes vêm somente do backend. |
| 1 | Permitir | Habilita a opção e permite o cadastro do cliente. |
| 2 | Necessita aprovação | Gera o cadastro para o backend, mas ele só retorna no endpoint de clientes após aprovado. Enquanto pendente o cliente ainda não tem CdCliFor — para lançar pedido, informe o uuidCliFor guardado no lugar do CdCliFor (ver §4.1). Ao finalizar, exibir “cadastro gerado para aprovação” e sincronizar imediatamente. |
No modo 2 (aprovação), guarde o uuidCliFor retornado para vincular pedidos e resolver o CdCliFor depois — ver §4.1.
2.3 Payloads de cadastro
Modo 1 — Permitir (cadastro direto)
Quando cadastrarCliente = 1, o cliente é gravado diretamente:
/api/v1/CliFor{ "nmCliFor": "string", // nome / razão social "nmFantasia": "string", "tpPessoa": "string", // F ou J "nuCpfCnpj": "string", "nuRgIe": "string", "cdCid": "string", "cdCep": "string", "deBairro": "string", "deEndereco": "string", "deComplemEnder": "string", "deNroRua": "string", "nuFone": "string", "deEmail": "string", "idCli": "string", "idFor": "string", "idTran": "string" }
Modo 2 — Necessita aprovação
Quando cadastrarCliente = 2, o cadastro é enviado para a fila de aprovação:
/api/v1/SynCliFor{ "cdUsuario": 0, // código do usuário salvo no token "idSync": 1, // 1 = aguardando aprovação "nmCliFor": "string", // nome do cliente "tpPessoa": "string", // F ou J (física / jurídica) "nmFantasia": "string", "nuCpfCnpj": "string", "nuRgIe": "string", "nuFone": "string", "nuCelular": "string", "deEmail": "string", "deEndereco": "string", "deNroRua": "string", "deBairro": "string", "CdCep": "string", "cdCid": "string", "deComplem": "string", "deObs": "string", "idCliente": 1 // passar 1 }
2.4 Configuração — tpCadastroCliente
| Valor | Modo | Campos obrigatórios |
|---|---|---|
| 0 | Simples | Apenas CNPJ, Razão Social e Telefone. |
| 1 | Completo | Todas as informações, exceto Fantasia, Complemento e Observação. |
2.5 Consulta de CNPJ
Quando conectado à internet, consultar o CNPJ para preencher o cadastro. Pode ser um botão ao lado do campo CNPJ, habilitado apenas quando online.
/api/v1/CliFor/ConsultarCnpj/{cnpj}{ "cnpj": "string", "razaoSocial": "string", "fantasia": "string", "abertura": "string", "situacao": "string", "naturezaJuridica": "string", "porte": "string", "cnaePrincipal": "string", "endereco": "string", "numero": "string", "complemento": "string", "bairro": "string", "cep": "string", "cidade": "string", "uf": "string", "telefone": "string", "email": "string", "inscricaoEstadual": "string", "provedor": "string", "retornoCompleto": "string" }
2.6 Consulta de CEP
Com Cidade e UF apenas visuais: online, consultar o endpoint passando apenas o CEP; offline, consultar na sincronização.
/api/v1/Cep/GetByFilter filtro: cep{ "cdCid": "8453", "cdCep": "89560000", "nmLogra": "VIDEIRA", "cdIBGE": "4219309", "cdUf": "SC", // preenche UF (somente leitura) "nmCid": "VIDEIRA" // preenche Cidade (somente leitura) }
2.7 Obter a lista de clientes
Para carregar os clientes disponíveis (vindos do backend), use qualquer um dos endpoints abaixo. O GetByFilter pode ser chamado sem filtros para trazer todos os clientes.
/api/v1/CliFor/Buscar/api/v1/CliFor/GetByFilter sem filtros = todos{ "cdCliFor": "string", // código do cliente "nmCliFor": "string", "nmFantasia": "string", "tpPessoa": "string", // F ou J "nuCpfCnpj": "string", "nuRgIe": "string", "cdCid": "string", "cidade": "string", "uf": "string", "cdCep": "string", "deBairro": "string", "deEndereco": "string", "deComplemEnder": "string", "deNroRua": "string", "nuFone": "string", "deEmail": "string", "idCli": "string", "idFor": "string", "idTran": "string", "cdPreco": "string", // lista de preço do cliente "cdPrazo": "string" // prazo do cadastro — usado no faturamento (§4.5) }
03 Produtos
A consulta de produtos varia conforme a configuração usaListaPreco lida no login.
3.1 Consulta — usaListaPreco
/api/v1/Pro/Aplicativo| Valor | Modo | Comportamento da consulta |
|---|---|---|
| 0 | Não | Não usa lista de preço. Consulta sem passar nada; exibe somente os itens retornados. |
| 1 | Sim (por Cliente) | Lista de preço por cliente. Consulta passando o código do cliente. A tela não exibe nada sem cliente informado. |
| 2 | Sim (por Vendedor) | Lista de preço por vendedor. Consulta considerando o vendedor logado (do token); exibe somente os itens retornados. |
3.2 Retorno
{ "cdPro": "000972", "dePro": "PARAFUSO M3X4MM C PANELA PHILIPS MAQUINA AI NT", "deProLong": "", "idAtivo": "S", "deMasc": "02.020.00972", // código mascarado p/ exibição "cdUnMed": "UN ", "idServPro": "P", "tpPro": "P", "cdEan": "", "cdEanTrib": "", "cdProRef": "", "vlVenda": 12.54, // preço de venda "vlVendaMin": 10.00, // valor de venda mínimo — usado em validaVlMinimo / mostrarVlMinimo (§4.4) "estoque": 11520 // saldo disponível }
04 Pedido de Venda
Antes de liberar o preenchimento, a aplicação avalia a situação financeira do cliente e aplica as regras configuradas; no lançamento de itens valem as regras de desconto e valor mínimo.
4.1 Cliente, uuidCliFor e CdCliFor
- Ao cadastrar cliente que precisa de aprovação, gravar o
uuidCliForretornado na consulta, para poder usar o cliente no pedido. - Consultar
/api/v1/SynCliFor/GetByFilterpassandouuidCliForpara obter oCdCliFore associá-lo ao cadastro na próxima sincronização. - Ao criar o pedido, selecionar o cliente e consultar o financeiro (§4.2) — no looping da sincronização de clientes e também ao iniciar o pedido, se online.
Regra. Cliente em aprovação nasce identificado só por uuidCliFor; o CdCliFor só existe após aprovação + sincronização. Enquanto pendente, o pedido pode ser lançado informando o uuidCliFor no lugar do CdCliFor. A aplicação deve tolerar pedidos apontando para qualquer uma das duas chaves durante a transição.
4.2 Consulta financeira
/api/v1/CliFor/{codigo}/Financeiro{ "cdCliFor": "002700", "vlLimite": 55.02, "vlEmAbertoTotal": 6058.01, "vlAtrasoTotal": 6058.01, "vlDisponivel": -6002.99, // pode ser negativo "filiais": [{ "cdFil": "01", "vlEmAberto": 6058.01, "vlAtraso": 6058.01, "nuDiasAtraso": 905 }] }
4.3 Validações financeiras
Validar atraso — validaAtrasoFin
| Valor | Modo | Comportamento |
|---|---|---|
| 0 | Não | Nenhuma ação. |
| 1 | Avisar | Alerta sempre visível durante o preenchimento: “cliente com pendências no financeiro”. Não bloqueia. |
| 2 | Bloquear | Não permite prosseguir com o pedido. |
Tipo de validação — tpValidacaoAtrasoFin
| Valor | Escopo | Campos utilizados |
|---|---|---|
| 0 | Por Base/Sistema | vlEmAbertoTotal + o maior período de atraso entre as filiais. |
| 1 | Por Filial | vlAtraso + nuDiasAtraso da filial logada. |
tpValidacaoAtrasoFin só é considerado quando validaAtrasoFin ≠ 0. Se o atraso não é validado, este parâmetro é ignorado.
Validar limite de crédito — validaLimiteCredito
| Valor | Modo | Comportamento |
|---|---|---|
| 0 | Não | Nenhuma ação. |
| 1 | Avisar | Alerta permanente com o valor disponível (vlDisponivel). Não bloqueia. |
| 2 | Bloquear | Ao finalizar, se o valor do pedido > vlDisponivel, não deixa concluir. |
Detalhe do alerta de atraso (Avisar / Bloquear)
- Aplica-se apenas ao atraso financeiro (
validaAtrasoFin) — não aovalidaLimiteCredito. - A mensagem deve ter um label clicável que abre os detalhes: dias de atraso e valor pendente.
- Os valores respeitam o escopo de
tpValidacaoAtrasoFin(§ tabela acima).
4.4 Lançamento de produtos
Observação do item
- Campo Observação por item — não obrigatório.
Permite desconto — tipoDesconto
| Valor | Modo | Comportamento |
|---|---|---|
| 0 | Não | Desconto desabilitado. |
| 1 | Item | Ao lançar o item, habilita o campo de desconto naquele item. |
| 2 | Subtotal | Habilita o campo de desconto ao finalizar o pedido (sobre o subtotal). |
% Desconto máximo — peDescMax
- Aplica-se quando
tipoDesconto= 1 ou 2. - Bloqueia descontos acima do percentual definido em
peDescMax.
Validar valor mínimo — validaVlMinimo
Usado quando o desconto máximo não está habilitado.
| Valor | Modo | Comportamento |
|---|---|---|
| 0 | Não | Sem validação. |
| 1 | Sim | Não permite vender abaixo do vlVendaMin retornado no produto (§3.2). |
Mostrar valor de venda mínimo — mostrarVlMinimo
| Valor | Modo | Comportamento |
|---|---|---|
| 0 | Não | Não exibe. |
| 1 | Sim | Exibe um label com o valor mínimo do produto (vlVendaMin). |
Usa pacote — usaPacote
| Valor | Modo | Comportamento |
|---|---|---|
| 0 | Não | Não exibe campo de pacote. |
| 1 | Sim | Habilita um campo numérico inteiro ao lançar o produto (quantidade de pacotes). |
4.5 Faturamento do pedido
Após lançar os itens, exibir uma tela resumida com o cliente e o total do pedido, contendo:
- Data de entrega — campo para selecionar a data.
- Tipo do pedido — combobox (ver tabela abaixo).
- Prazo de pagamento — combobox (regras abaixo).
- Observação do pedido — campo memo (multilinha, permite mais de uma linha).
Tipo do pedido
| Valor | Tipo | Descrição |
|---|---|---|
| V | Venda | Pedido efetivo de venda. |
| O | Orçamento | Proposta / cotação, sem efetivar venda. |
Prazo de pagamento
Lista base: os prazos retornados em /api/v1/Aplicativo (prazos[]), exibindo apenas aqueles cujo vlIniPrazo seja ≤ ao valor do pedido.
| Configuração | Valor | Comportamento do combobox |
|---|---|---|
sugerirPrazoPorCliente | 0 | Exibe somente a lista base. |
sugerirPrazoPorCliente | 1 | Inclui o prazo do cadastro do cliente (cdPrazo, §2.7) caso ainda não esteja na lista, e o traz pré-selecionado — mas permite alterar para outro. |
obrigaPrazoPorCliente | 1 | Restringe ao prazo do cliente: só exibe o cdPrazo do cadastro. Se o cliente não tiver prazo, não lista nenhum, exibe a mensagem “nenhum prazo configurado para o cliente” e não deixa finalizar o pedido. |
O prazo do cliente (cdPrazo) vem da listagem de clientes — §2.7. A filtragem por vlIniPrazo depende do valor total do pedido, então a lista de prazos deve ser recalculada sempre que o total mudar.
05 Avisos
Os avisos cadastrados para a empresa devem ser exibidos na aba inicial do aplicativo. São consultados por um endpoint próprio, filtrando pelo CdReg obtido nas configurações lidas no login.
5.1 Consulta de avisos
/api/v1/AplicativoAvisos/GetByFilterCdReg = "..." // CdReg retornado na configuração do aplicativo // (/api/v1/Aplicativo/GetByFilter — §1.5)
Regra. O CdReg usado no filtro é o mesmo devolvido pela consulta de configurações (§1.5) — carregado uma vez no login e mantido em memória durante a sessão.
5.2 Retorno e exibição
{ "success": true, "message": "string", "totalCount": 0, "data": [{ "cdReg": 0, "cdReg_Owner": 0, "nuSeq": 0, // ordem de exibição "aviso": "string", // texto exibido na aba inicial "cdUsuaInc": "string", "cdUsuaAlt": "string", "dtInsert": "2026-08-03T13:12:51.995Z", "dtIncAltReg": "2026-08-03T13:12:51.995Z", "excluir": "string" }], "errors": [{ "code": "string", "message": "string" }] }
| Campo | Conteúdo |
|---|---|
cdReg | Registro da empresa — mesmo valor usado no filtro (§1.5). |
cdReg_Owner | Registro proprietário do aviso. |
nuSeq | Sequência de exibição — as mensagens devem ser mostradas nesta ordem. |
aviso | Texto do aviso apresentado na aba inicial. |
cdUsuaInc · cdUsuaAlt | Usuário de inclusão / alteração (controle). |
dtInsert · dtIncAltReg | Carimbos de inclusão / alteração (controle). |
excluir | Marcação de exclusão (controle). |
Exibir as mensagens ordenadas por nuSeq, na aba inicial do aplicativo.
06 Sincronização de Pedidos
Os pedidos finalizados no aplicativo devem ser sincronizados com o backend. O envio é feito em um único POST, com o cabeçalho do pedido e a coleção de itens no mesmo payload.
6.1 Envio do pedido
/api/v1/SynPedidos{ "data": "2026-08-03T13:21:52.597Z", "entrega": "2026-08-03T13:21:52.597Z", "observacoes": "string", "tipo": "string", // V · B · O "prazo": "string", // "01 - 1X SEM JUROS" "descPerc": 0, "dtIncReg": "2026-08-03T13:21:52.597Z", "dtAltReg": "2026-08-03T13:21:52.597Z", "cdFil": "string", // filial logada "cdEst": "string", // cdEst retornado na configuração (§1.5) "situacao": 0, "pecomis": 0, // não informar "cdMotiv": 0, // não informar "idSit": "string", // C · A · H "cdFunc": "string", // cdFunc retornado na configuração (§1.5) "cdPreco": "string", // não informar "cdCliFor": "string", // cliente já cadastrado "uuidCliFor": "string", // cliente em aprovação (§4.1) "uuidAndroid": "string", // UUID único do pedido no aplicativo "itens": [{ "produto": "string", "qtde": 0, "pacotes": 0, "valor": 0, "observacoes": "string", "dtIncReg": "2026-08-03T13:21:52.597Z", "dtAltReg": "2026-08-03T13:21:52.597Z", "tipoProduto": "string", // não informar "pedesc": 0, // % de desconto do produto "pecomis": 0, // não informar "vlDesc": 0, // valor de desconto do produto "vlDescRat": 0, // não informar "vlDescTotal": 0, // não informar "pedescPai": 0, // não informar "vlVndLista": 0, // não informar "nuOrdem": 0 // sequencial do item }] }
Regra. Todo pedido finalizado no aplicativo deve ser sincronizado. Os campos marcados como “não informar” são calculados/preenchidos pelo backend — enviá-los pode gerar divergência.
6.2 Campos do cabeçalho
| Campo | Conteúdo |
|---|---|
data | Data do pedido informada no aplicativo. |
entrega | Data de entrega informada no aplicativo (§4.5). |
observacoes | Observações informadas no pedido (campo memo — §4.5). |
tipo | V – Venda · B – Bonificação · O – Orçamento. O pedido deve ter o campo para selecionar o tipo. |
prazo | CdPrazo – DePrazo. Ex.: 01 – 1X SEM JUROS (§4.5). |
descPerc | Percentual de desconto sobre o total (§4.4). |
dtIncReg | Data de inclusão — data em que está sincronizando. |
dtAltReg | Data de alteração — data em que está sincronizando. |
cdFil | Filial logada. |
cdEst | CdEst retornado na configuração (§1.5). |
situacao | Não especificado no documento de origem. |
pecomis | Não informar. |
cdMotiv | Não informar. |
idSit | C – Cancelado · A – Aberto · H – Histórico. |
cdFunc | CdFunc retornado na configuração (§1.5). |
cdPreco | Não informar. |
cdCliFor | Código do cliente, se já estiver cadastrado. |
uuidCliFor | UUID do cliente quando ele estiver para aprovação (§4.1). |
uuidAndroid | UUID único do pedido no aplicativo — chave de identificação da sincronização. |
Domínio de tipo
| Valor | Tipo | Descrição |
|---|---|---|
| V | Venda | Pedido efetivo de venda. |
| B | Bonificação | Pedido de bonificação. |
| O | Orçamento | Proposta / cotação, sem efetivar venda. |
Domínio de idSit
| Valor | Situação | Descrição |
|---|---|---|
| A | Aberto | Pedido em aberto. |
| C | Cancelado | Pedido cancelado. |
| H | Histórico | Pedido histórico. |
6.3 Campos dos itens
| Campo | Conteúdo |
|---|---|
produto | Código do produto (§3.2). |
qtde | Quantidade vendida. |
pacotes | Quantidade de pacotes — só se usaPacote = 1 (§4.4). |
valor | Valor do produto. |
observacoes | Observação do produto (não obrigatória — §4.4). |
dtIncReg | Data de inclusão — data em que está sincronizando. |
dtAltReg | Data de alteração — data em que está sincronizando. |
tipoProduto | Não informar. |
pedesc | % de desconto do produto (§4.4). |
pecomis | Não informar. |
vlDesc | Valor de desconto do produto. |
vlDescRat | Não informar. |
vlDescTotal | Não informar. |
pedescPai | Não informar. |
vlVndLista | Não informar. |
nuOrdem | Sequencial do item. |
6.4 Retorno
O retorno traz o pedido já gravado no backend, com o numero/nuPed gerados, os carimbos de sincronização e os itens correspondentes.
{ "success": true, "message": "string", "totalCount": 0, "data": { "id": 0, "numero": 0, "data": "2026-08-03T13:21:53.173Z", "entrega": "2026-08-03T13:21:53.173Z", "observacoes": "string", "tipo": "string", "prazo": "string", "descPerc": 0, "uuid": "string", "dtIncReg": "2026-08-03T13:21:53.173Z", "dtAltReg": "2026-08-03T13:21:53.173Z", "dtImport": "2026-08-03T13:21:53.173Z", "cdFil": "string", "nuPed": "string", "situacao": 0, "pecomis": 0, "cdMotiv": 0, "idSit": "string", "cdFunc": "string", "cdPreco": "string", "cdCliFor": "string", "uuidCliFor": "string", "uuidAndroid": "string", "cdUsuaInc": "string", "cdUsuaAlt": "string", "dtInsert": "2026-08-03T13:21:53.174Z", "dtIncAltReg": "2026-08-03T13:21:53.174Z", "dtSync": "2026-08-03T13:21:53.174Z", "excluir": "string", "itens": [{ "id": 0, "pedido": 0, "produto": 0, "qtde": 0, "pacotes": 0, "valor": 0, "observacoes": "string", "uuid": "string", "dtIncReg": "2026-08-03T13:21:53.174Z", "dtAltReg": "2026-08-03T13:21:53.174Z", "tipoProduto": "string", "pedesc": 0, "pecomis": 0, "vlDesc": 0, "vlDescRat": 0, "vlDescTotal": 0, "pedescPai": 0, "vlVndLista": 0, "nuOrdem": 0, "cdFil": "string", "cdEst": "string", "dtInsert": "2026-08-03T13:21:53.174Z", "dtIncAltReg": "2026-08-03T13:21:53.174Z", "dtSync": "2026-08-03T13:21:53.174Z", "excluir": "string" }] }, "errors": [{ "code": "string", "message": "string" }] }
Guarde o uuid e o numero/nuPed devolvidos e vincule ao uuidAndroid local — é assim que o aplicativo sabe que aquele pedido já foi sincronizado e evita reenvio duplicado.
Resumo das Configurações
Todas as chaves de /api/v1/Aplicativo citadas neste manual e a tela onde atuam.
| Chave | Domínio | Função | Seção |
|---|---|---|---|
cadastrarCliente | 0 / 1 / 2 | Não permitir / Permitir / Necessita aprovação. | 2.2 |
tpCadastroCliente | 0 / 1 | Cadastro Simples × Completo. | 2.4 |
usaListaPreco | 0 / 1 / 2 | Modo de consulta de produtos. | 3.1 |
validaAtrasoFin | 0 / 1 / 2 | Ação sobre atraso (Não / Avisar / Bloquear). | 4.3 |
tpValidacaoAtrasoFin | 0 / 1 | Escopo da validação (Base × Filial). | 4.3 |
validaLimiteCredito | 0 / 1 / 2 | Ação sobre limite (Não / Avisar / Bloquear). | 4.3 |
tipoDesconto | 0 / 1 / 2 | Desconto: Não / Item / Subtotal. | 4.4 |
peDescMax | % | Percentual máximo de desconto. | 4.4 |
validaVlMinimo | 0 / 1 | Bloqueia venda abaixo do valor mínimo. | 4.4 |
mostrarVlMinimo | 0 / 1 | Exibe label do valor mínimo. | 4.4 |
usaPacote | 0 / 1 | Habilita quantidade de pacotes. | 4.4 |
sugerirPrazoPorCliente | 0 / 1 | Sugere prazo conforme cliente. | 1.5 |
obrigaPrazoPorCliente | 0 / 1 | Obriga prazo conforme cliente. | 1.5 |