Skip to content

Tag-icone-mini.png APIs do Totali Middleware

Referenciado por: APIs do Totali Middleware |

Conceito ​

O processo irá realizar a consulta das campanhas referente ao documento e cupom enviados.
Irá realizar a chamada do Motor de Promoção repassando os dados das campanhas localizadas.
Irá devolver o documento indicando as campanhas utilizadas em cada item e seus respectivos desconto sobre cada item, assim como indicação para geração de cupom para venda futura.

Valida Sessão ​

Sim

Para mais informações para a Validação de sessão e obtenção da Assinatura, verificar a documentação do padrão de trocas de informações neste link.

Exemplo de como deve ser enviado o comando completo:

{ "Parametros":{ "Id":55251, "Dados":{ "Documento":{ Dados do Documento de Venda... } } }, "Assinatura":"71AC25C67D801BE7933756BA48C3950D" }

API ​

TCommerceAPI

Método ​

CalculaDescontoDaCampanha

Exemplo de chamada: http://localhost:8080/datasnap/rest/TCommerceAPI/CalculaDescontoDaCampanha

Troca de informações ​

  • Parâmetros de Entrada:

{ "Documento": { "Filial": "<Código da Filial [TD_FIL.CODFIL]>", "CNPJFilial": "<CNPJ da Filial [TD_FIL.CGCFIL]>", "CanalVenda": "<Canal da venda (L - Loja, O - Omnichannel, T - Todos) [TT_CPR.CANAPL]>", "ValorTotal": "<Valor Total [TT_ORC.VLRTOT]>", "__comment__": "OBS: Para o campo "DataVenda" utilizar Encode: ISO_8601", "DataVenda": "<Date/Hora do Pedido [TT_ORC.PED_EM]>", "Itens": [{ "__comment__": "<Lista de Itens>", "NumeroItem": <Número do item [TT_IOR.NUMITE] (Sequencial do item)>, "ProdutoServico": { "__comment__": "<TCommerceAPI_ConsultaRetaguarda -> Origem - C; Tipo - 41 -> Obrigatório informar um dos 3 códigos abaixo>", "Chave": "<Chave do produto [Pro_Chave da consulta] (opcional)>", "CodExt":"<Código externo do produto (opcional)>", "RefPro":"<Referência do produto (opcional)>" }, "Quantidade": <Quantidade [TT_IOR.QTDITE]>, "ValorUnitario": <Valor Unitário [TT_IOR.VLRITE]>, "ValorDesconto": <Valor do Desconto [TT_IOR.VLRDES] (opcional)>, "ValorAcrescimo": <Valor do Acréscimo [TT_IOR.VLRACR] (opcional)>, "ValorTotalSemAcrescimoDesconto": <Valor Total Sem Desconto/Acréscimo [TT_IOR.VLRPGT]>, "ValorTotal": <Valor Total [TT_IOR.VLRCUS>, "PrecoPromocinal": "<Promoção? (True ou False)>", "PrecoDeTabela": <Valor Unitário [TT_IOR.VLRENT]> }], "Cupons": [{ "__comment__": "<Lista de Cupom (opcional)>", "Numero": "<Número do cupom [TT_CUP.NUMERO]>" } ], "Cliente": { "__comment__": "<Cliente -> Obrigatório informar um dos 3 códigos abaixo>", "CodigoExterno": "<Código Externo do Parceiro [TT_CLI.CODEXT] (opcional)>", "NumDoc": "<Número do Documento [TT_CLI.NUMDOC] (opcional)>", "FilCli": "<Filial do Parceiro [TT_CLI.FILCLI] (opcional) - Campo deve ser informado em conjunto com CodCli>", "CodCli": "<Código do Parceiro [TT_CLI.CODCLI] (opcional) - Campo deve ser informado em conjunto com FilCli>" }, "TabelaDePrecos": { "__comment__": "<Tabela de Preço: [TCommerceAPI_ConsultaRetaguarda -> Origem - C; Tipo - 46 -> Obrigatório informar um dos 3 códigos abaixo]>", "Chave": "<Chave Tabela de Preço [TabPre_Chave da consulta] (opcional)>", "CodigoExterno": "<Código Externo da Tabela de Preço [TT_TPR.CODEXT] (opcional)>", "Filial": "<Filial da Tabela de Preço [TT_TPR.CODFIL] (opcional) - Campo deve ser informado em conjunto com Codigo>", "Codigo": <Código da Tabela de Preço [TT_TPR.CODPRE] (opcional) - Campo deve ser informado em conjunto com Filial> } } }

  • Parâmetros de Saída:

Exemplo de retorno com erro

{ "result": { "controle": { "err": true, "cod": "", "msg": "Mensagem de erro" } } } ou { "error": "Mensagem de erro" }

Exemplo de retorno com sucesso

{ "result": { "controle": { "err": false, "cod": 0, "msg": "" }, "conteudo": { "livre": { "Itens": [{ "__comment__": "<Lista de Itens>", "NumeroItem": <Número do item [TT_IOR.NUMITE] (Sequencial do item)>, "ValorDescontoAcrescimoAplicados": <Valor Desconto Aplicado>, "QuantidadeAtendida": <Quantidade Total Atendida do item>, "ItensCampanha": [{ "__comment__": "<Lista de Campanhas utilizadas>", "CampanhaDescontoChave":"<Chave da Campanha [TT_CPR.CODFIL || TT_CPR.SEQUEN]>", "CampanhaDeDesconto": { "__comment__": "<Campanha utilizada>", "Chave": "<Chave da Campanha [TT_CPR.CODFIL || TT_CPR.SEQUEN]>", "Filial": "<Filial [TT_CPR.CODFIL]>", "Sequen": "<Sequenciador [TT_CPR.SEQUEN]>" }, "ValorTotalDesconto": <Valor Total de Desconto aplicado>, "QuantidadeAtendida": <Quantidade sobre o qual o Desconto foi aplicado>, "SolicitaPermissaoDeDescontoAcimaDoPermitido": <Indicador de para solicitar permissão devido ao valor do item ficar abaixo do custo de reposição após desconto aplicado>, }] }], "CuponsUtilizados": [{ "__comment__": "<Lista de Cupons utilizados. (opcional)>", "Chave": "<Chave do Cupom [TT_CUP.CODFIL || TT_CUP.SEQUEN]>", "Numero": "<Número do cupom [TT_CUP.NUMERO]>" } ], "CuponsNaoUtilizados": [{ "__comment__": "<Lista de Cupons não utilizados. Motivos (Campanha vinculada no cupom não atende aos requisitos mínimos>", "__comment2__": "<(Valor de venda, Filial de aplicação, Tabela de Preço, Canal de Venda). Cupom ou Campanha vinculada fora da validade. Cupom já atingiu o Limite de Uso) (opcional)>", "Chave": "<Chave do Cupom [TT_CUP.CODFIL || TT_CUP.SEQUEN]>", "Numero": "<Número do cupom [TT_CUP.NUMERO]>" } ], "CampanhasFuturas": [{ "__comment__": "<Lista de Campanha Futuras disponível para geração de Cupom (opcional)>", "Chave": "<Chave da Campanha [TT_CPR.CODFIL || TT_CPR.SEQUEN]>", "Filial": "<Filial [TT_CPR.CODFIL]>", "Sequen": "<Sequenciador [TT_CPR.SEQUEN]>" } ], "TemCampanhaAplicada": "<Indicador se houve campanhas aplicadas sobre a venda>" } } } }

Exemplo ​

  • Chamada e Retorno

Parâmetros de Entrada:

{ "Parametros": { "Id": 1, "Dados": { "__comment__": "<JSON de (Parâmetros de Entrada) do serviço>" } }, "Assinatura": "DAD4E878F1AFEAA196F0F15963AD289F" }

Parâmetros de Saída:

{ "result": { "controle": { "err": false, "cod": 0, "msg": "" }, "conteudo": { "livre": { "<Objeto JSON>" } } } }