Este artigo reúne exemplos de fórmulas personalizadas de precificação para você entender a lógica e adaptar ao seu caso no ambiente administrativo.
Caminho no ambiente administrativo: Menu Personalização > Precificação > Fórmulas Personalizadas
Importante: as fórmulas abaixo não são sugestões de como cobrar do seu cliente. São apenas exemplos de como usar fórmulas personalizadas na prática. Ao colar uma fórmula na plataforma, não inclua os pontos antes das linhas (eles existem aqui apenas para facilitar a localização).
Você pode acompanhar novos exemplos neste documento público: https://docs.google.com/document/d/1Exd208XDuelvtaA3ULjEN4v_blg_kzAV_-lq1cmfpNI/edit
Exemplo 1: trajeto sem retorno, com faixas de km
Esta fórmula cria a variável VAR_A, que é o trajeto sem o retorno. Ela cobra R$ 8 para trajetos menores que 5 km; de 5 km até menos de 11 km, cobra o trajeto multiplicado por 2; para 11, 12 e 13 km, soma um valor fixo ao trajeto multiplicado por 1,65; acima de 13 km, cobra 1,65 por km.
VAR_A = [KILOMETRAGEM_TRAJETO]-[KILOMETRAGEM_RETORNO]
SE ( VAR_A <5 ){ RESULTADO = 8 }
SE ( VAR_A>=5 && VAR_A <11 ){ RESULTADO = VAR_A*2 }
SE ( VAR_A == 11 ) { RESULTADO = 3 + (VAR_A*1.65) }
SE ( VAR_A == 12 ) { RESULTADO = 2 + (VAR_A*1.65) }
SE ( VAR_A == 13 ) { RESULTADO = 1 + (VAR_A*1.65) }
SE ( VAR_A>13 ){ RESULTADO = VAR_A*1.65 }
Exemplo 2: diferenciação com e sem retorno
Esta fórmula usa condições diferentes conforme o retorno seja zero ou maior que zero. Sem retorno, a fórmula calcula o trajeto multiplicado por 1,20 e aplica um percentual por faixa de quilometragem, que diminui conforme a distância aumenta. Com retorno, soma o trajeto (sem o retorno) pelas mesmas faixas ao valor do retorno multiplicado por 0,80.
SE( [KILOMETRAGEM_RETORNO] == 0 ){
VAR_A = [KILOMETRAGEM_TRAJETO]*1,20
SE( VAR_A <=9 ){ RESULTADO = 8.50 }
SE( VAR_A > 9 && VAR_A <=10 ){ RESULTADO = VAR_A*1,4}
SE( VAR_A > 10 && VAR_A <=11 ){ RESULTADO = VAR_A*1,3}
SE( VAR_A > 11 && VAR_A <=12 ){ RESULTADO = VAR_A*1,2}
SE( VAR_A > 12 && VAR_A <=13 ){ RESULTADO = VAR_A*1,1}
SE( VAR_A > 13 && VAR_A <=14 ){ RESULTADO = VAR_A}
SE( VAR_A > 14 && VAR_A <=15 ){ RESULTADO = VAR_A*0,9}
SE( VAR_A > 15 ) { RESULTADO = VAR_A*0.80 }
}
SENAOSE( [KILOMETRAGEM_RETORNO]>0 )
{
VAR_A = ([KILOMETRAGEM_TRAJETO]-[KILOMETRAGEM_RETORNO])*1,20
VAR_B = ([KILOMETRAGEM_RETORNO]*0.80)
SE( VAR_A <=9 ){ RESULTADO = 8.50+VAR_B }
SE( VAR_A > 9 && VAR_A <=10 ){ RESULTADO = VAR_A + VAR_B}
SE( VAR_A > 10 && VAR_A <=11 ){ RESULTADO = VAR_A + VAR_B}
SE( VAR_A > 11 && VAR_A <=12 ){ RESULTADO = VAR_A + VAR_B}
SE( VAR_A > 12 && VAR_A <=13 ){ RESULTADO = VAR_A + VAR_B}
SE( VAR_A > 13 && VAR_A <=14 ){ RESULTADO = VAR_A + VAR_B}
SE( VAR_A > 14 && VAR_A <=15 ){ RESULTADO = VAR_A + VAR_B}
SE( VAR_A > 15 ) { RESULTADO = (VAR_A + VAR_B) }
}
Exemplo 3: valor fixo por faixa de km, sem cobrança de retorno
Esta fórmula cobra um valor fixo por faixa de quilometragem, sem considerar o retorno. A VAR_A é o trajeto apenas de ida. Acima de 8 km, cobra 2 por km.
VAR_A = ([KILOMETRAGEM_TRAJETO]-[KILOMETRAGEM_RETORNO])
SE( VAR_A <= 1 ){ RESULTADO = 7.80 }
SE( VAR_A >1 && VAR_A <= 2 ){ RESULTADO = 8 }
SE( VAR_A >2 && VAR_A <= 3 ){ RESULTADO = 10 }
SE( VAR_A >3 && VAR_A <= 4 ){ RESULTADO = 12 }
SE( VAR_A >4 && VAR_A <= 5 ){ RESULTADO = 14 }
SE( VAR_A >5 && VAR_A <= 6 ){ RESULTADO = 14}
SE( VAR_A >6 && VAR_A <= 7 ){ RESULTADO = 15 }
SE( VAR_A >7 && VAR_A <= 8 ){ RESULTADO = 16 }
SE( VAR_A > 8 ){ RESULTADO = VAR_A*2}
Observe os operadores: ">" (maior que) e "<=" (menor ou igual).
Exemplo 4: retorno com valor variável por quilometragem
Esta fórmula é mais complexa. Ela usa cinco variáveis:
- VAR_A: quilometragem apenas de ida.
- VAR_B: quilometragem do retorno (criada para reduzir a escrita; também seria possível usar [KILOMETRAGEM_RETORNO] diretamente).
- VAR_C: valor base por km do trajeto, que muda ao longo da fórmula.
- VAR_D: percentual aplicado ao valor por km do retorno. No exemplo, 0,65 representa 65% do valor.
- VAR_E: resultado final antes do valor mínimo.
Com retorno, a fórmula calcula (VAR_A × VAR_C) + (VAR_B × VAR_D) e soma R$ 4,50. Se o total ficar abaixo de R$ 20, o resultado é R$ 20. Sem retorno, a fórmula usa apenas o trajeto e também aplica o adicional de R$ 4,50 e o valor mínimo de R$ 20.
VAR_A = ([KILOMETRAGEM_TRAJETO] - [KILOMETRAGEM_RETORNO] )
VAR_B = [KILOMETRAGEM_RETORNO]
VAR_C = 1.90
VAR_D = 0
VAR_E = 0
SE ( VAR_B > 0 ) {
SE (VAR_B <= 4 ) {VAR_C = 1.90}
SE (VAR_B > 4 && VAR_B <= 8 ) {VAR_C = 1.95}
SE (VAR_B > 8 ) {VAR_C = 2.05}
VAR_D = VAR_C * 0.65
VAR_E = ((VAR_A * VAR_C) + (VAR_B * VAR_D)) + 4,50
SE (VAR_E < 20) {RESULTADO = 20}
SENAO {RESULTADO = VAR_E}
}.
SENAOSE ( VAR_B == 0 ) {
SE (VAR_A <= 4 ) {VAR_C = 1.90}
SE (VAR_A > 4 && VAR_A <= 8 ) {VAR_C = 1.95}
SE (VAR_A > 8 ) {VAR_C = 2.05}
VAR_E = (VAR_A * VAR_C)+ 4,50
SE (VAR_E < 20) {RESULTADO = 20}
SENAO {RESULTADO = VAR_E}
}
Exemplo 5: cobrança por local adicional
Esta fórmula cobra por local adicional. A coleta e a primeira entrega são contadas como locais, mas não são cobradas; por isso o cálculo subtrai 2 da quantidade de locais ([QTD_LOCAIS]-2). Até 5 locais (considerando o desconto de 2), cobra R$ 3,50 por local; acima disso, cobra R$ 3 por local. O trajeto de ida (VAR_A) é cobrado por km conforme a faixa: 1,75 até 6 km, 1,50 de 6 a menos de 11 km, 1,45 de 11 a menos de 20 km e 1,35 a partir de 20 km. Para corridas de até 3 km com 2 locais, o resultado fixo é R$ 6.
VAR_A = ([KILOMETRAGEM_TRAJETO]-[KILOMETRAGEM_RETORNO])
VAR_B = [QTD_LOCAIS]
SE ( [QTD_LOCAIS] >2 && [QTD_LOCAIS] <= 5 ){ VAR_B = ([QTD_LOCAIS]-2)*3,50 }
SE ( [QTD_LOCAIS] >5 ){ VAR_B = ([QTD_LOCAIS]-2)*3 }
SE ( VAR_A < 6){ RESULTADO = (VAR_A*1,75) +VAR_B }
SE ( VAR_A >=6 && VAR_A < 11){ RESULTADO = (VAR_A*1,50) +VAR_B }
SE ( VAR_A >=11 && VAR_A < 20){ RESULTADO = (VAR_A*1,45) +VAR_B }
SE ( VAR_A >= 20){ RESULTADO = (VAR_A*1,35) +VAR_B }
SE( VAR_A <= 3 && [QTD_LOCAIS] == 2 ){ RESULTADO = 6}
Antes de usar
- Teste a fórmula com corridas de exemplo antes de aplicar à operação.
- Ajuste os valores para a realidade da sua operação; os exemplos não são sugestões de preço.
- Em caso de dúvida sobre a sintaxe, abra um chamado de suporte.