Calculadora de desconto triplo
Tirar 20%, depois 10% e depois 5% de 100 deixa um preço final de 68,40: um desconto real de 31,6%, não de 35%. Informe o preço original e os três descontos na ordem em que o caixa aplica. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Preço original
- 100
- Desconto 1
- 20
- Desconto 2
- 10
- Desconto 3
- 5
- Preço após o primeiro
- 80
- Preço após o segundo desconto
- 72
- Preço final
- 68,4
- Economia total
- 31,6
Um desconto triplo são três cortes percentuais aplicados um após o outro no mesmo ticket: uma redução de loja, depois um cupom e em seguida um percentual de fidelidade ou extra, ou a cadeia atacadista 20/10/5. Esses três números não se somam. Vinte mais dez mais cinco não é trinta e cinco por cento sobre o original; cada corte sai do preço já reduzido, de modo que a redução verdadeira é menor que a soma. Esta calculadora aceita o preço original e três percentuais sucessivos, aplica-os nessa ordem e devolve o preço final, a economia e o desconto efetivo frente ao original.
O que é um desconto triplo e por que os três percentuais não se somam
Quem digita desconto triplo numa caixa de busca já sabe que há três cortes e quer a cifra real a pagar, não uma soma mental que infla a redução. O varejo empilha um percentual de loja, um cupom e um código extra. O atacado ainda cotiza a cadeia clássica 20/10/5.
Nos dois casos a identidade é um produto de fatores restantes, não uma soma de percentuais anunciados. Se o preço original é P e os três descontos são d1, d2 e d3 como percentuais, o ticket restante após o primeiro corte é P vezes um menos d1 dividido por cem. O segundo corte multiplica esse resto por um menos d2 dividido por cem.
O terceiro multiplica de novo por um menos d3 dividido por cem. O preço final é, portanto, P vezes o produto dos três fatores restantes. A economia total é original menos final.
O percentual de desconto efetivo é a economia sobre o original, vezes cem — de modo equivalente, um menos esse produto, vezes cem. Exemplo: um original de cem com cortes sucessivos de vinte, dez e cinco deixa oitenta após o primeiro, setenta e dois após o segundo, um preço final de 68.40, economia de 31.60 e 31.6 por cento efetivos sobre a lista, não trinta e cinco. Zero em qualquer passo é passagem direta.
Cem em qualquer passo zera o ticket restante e os cortes posteriores ficam em zero. Na aritmética exata os três fatores comutam, então os mesmos três percentuais em outra ordem produzem o mesmo preço final; esta calculadora mesmo assim os aplica na ordem informada para que os tickets intermediários coincidam com um caixa que lança primeiro, depois segundo e depois terceiro. Valores monetários arredondam half-up para centavos em cada passo para que uma diferença de um centavo no POS não se esconda.
O campo formula reitera a identidade do produto para que um revisor a imprima ao lado dos números sem reconstruir a pilha à mão.
Contrato de entrada, forma da resposta e comportamento de erro
Um desconto abaixo de zero seria um acréscimo e é rejeitado. Um desconto acima de cem produziria um ticket negativo e é rejeitado. Prefira números nus a strings formatadas; marcas de moeda, separadores de milhar e rótulos de unidade no fim não são analisados.
Este extremo não aplica imposto sobre vendas, frete, cashback nem conversão de moeda, e não aceita uma lista de cortes de comprimento variável. Emparelhe o resultado com o seu próprio passo de imposto ou frete se precisar de um custo posto.
Onde uma calculadora de desconto triplo justifica o seu lugar
Quem compara uma redução de loja, um cupom e um percentual extra de fidelidade precisa de uma identidade só que aplique cada corte ao ticket atual, nunca ao original três vezes. Mesas de atacado ainda cotizam 20/10/5 e querem o preço líquido e o desconto único equivalente sem abrir uma célula de planilha que alguém esqueceu de travar.
Aulas e lições de finanças pessoais que ensinam por que percentuais sucessivos não são aditivos precisam do mesmo produto de três fatores, com preços intermediários, para o aluno ver oitenta, depois setenta e dois, depois 68.40 em vez de um final de caixa-preta. Checagem de qualidade de promoções e feeds de catálogo precisam de um oráculo determinístico que rejeite um corte de cento e um em vez de emitir em silêncio um ticket negativo que um avaliador poderia tratar como crédito. Validação falha não consome saldo.
Combine esta capacidade com uma ferramenta à parte de imposto ou de frete quando precisar dessas camadas; conserve esta superfície centrada nos três percentuais sucessivos que as pessoas querem dizer quando buscam uma calculadora de desconto triplo.
Casos de uso
Comprador que empilha redução de loja, cupom e percentual extra
Informe a lista original e três percentuais sucessivos para travar o preço a pagar, a cascata de tickets intermediários e o desconto efetivo frente à lista.
Preço líquido atacadista 20/10/5 numa cotação
Transforme um desconto comercial clássico de três passos em um preço líquido e um percentual único equivalente para que o comprador veja a redução verdadeira, não a soma dos cortes anunciados.
Perguntas frequentes
Por que 20% depois 10% depois 5% não é 35% de desconto?
O segundo corte se aplica ao ticket já reduzido, e o terceiro se aplica a esse resto. Sobre um original de 100 a cascata é 80, depois 72, depois 68.40: 31.6% efetivos, não 35%.
O que acontece se um desconto ficar fora de 0 a 100 por cento?
Um corte negativo seria um acréscimo e um corte acima de cem produziria um ticket negativo. A falha não é cobrada.
A ordem dos três descontos muda o preço final?
Na aritmética exata os três fatores restantes comutam, então os mesmos três percentuais em outra ordem produzem o mesmo preço final. Esta calculadora mesmo assim os aplica na ordem que você envia para que os tickets intermediários coincidam com um caixa que lança primeiro, depois segundo e depois terceiro. O arredondamento half-up para centavos em cada passo pode diferir em um centavo quando a ordem muda.
E se um dos descontos for de 100%?
O preço vai a zero nesse passo e os descontos seguintes não mudam mais nada. Já um desconto de 0% deixa o preço igual e segue para o próximo passo.
Como os centavos são arredondados entre um desconto e outro?
Cada preço intermediário é arredondado ao centavo, com a metade para cima, como numa caixa registradora. Assim nenhuma diferença de um centavo entre a sua conta e o cupom fica escondida.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/fin/triple-discount \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"original_price":100,"discount_1":20,"discount_2":10,"discount_3":5}'const res = await fetch("https://api.kit.forhosting.com/fin/triple-discount", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"original_price": 100,
"discount_1": 20,
"discount_2": 10,
"discount_3": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/triple-discount",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"original_price": 100,
"discount_1": 20,
"discount_2": 10,
"discount_3": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/triple-discount", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"original_price":100,"discount_1":20,"discount_2":10,"discount_3":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"original_price":100,"discount_1":20,"discount_2":10,"discount_3":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/triple-discount", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"original_price": 100,
"discount_1": 20,
"discount_2": 10,
"discount_3": 5
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.triple_discount",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_price | 1000000000000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Um desconto fora de zero a cem falha com invalid_input em vez de inventar um ticket negativo. Chamadas bem-sucedidas são cobradas a US$ 0,002; entrada inválida não é cobrada.
Contrato de entrada, forma da resposta e comportamento de erro
Envie um corpo JSON com quatro números finitos obrigatórios. original_price é o ticket de lista ou pré-promoção e deve ser um número finito estritamente maior que zero, porque o percentual efetivo divide por esse original; os aliases original, list_price, price e amount são aceitos para que uma exportação de catálogo não precise de um passo de troca de nome. discount_1, discount_2 e discount_3 são os três percentuais sucessivos, cada um de zero a cem inclusive; os aliases first_discount, second_discount, third_discount, d1, d2, d3, discount1, discount2 e discount3 são aceitos. Cada campo pode chegar como número JSON ou como string numérica que coincida com um padrão decimal finito estrito. Campos ausentes, strings vazias, valores não finitos, um original não positivo, um original acima do máximo publicado ou qualquer desconto fora de zero a cem falham com invalid_input nomeando o campo e não são cobrados. Em caso de sucesso o corpo ecoa o original arredondado e os três descontos, devolve price_after_first e price_after_second para você mostrar a cascata, final_price como o ticket a pagar, total_savings como original menos final, effective_discount_percent como economia sobre original vezes cem, e uma string formula que você pode imprimir ao lado dos números. O preço de um item correto é um US$ 0,002 fixo.
Onde uma calculadora de desconto triplo justifica o seu lugar
Como a implementação é código analítico parse de tier A, cada chamada bem-sucedida permanece barata a US$ 0,002 sem tokens de modelo e sem rede de saída. Mantenha os pedidos pequenos, fixe final_price, total_savings e effective_discount_percent nos testes, e você obtém um ticket de desconto triplo reproduzível para páginas de destino, prévias de checkout e cadernos leves de preço sem levantar um motor comercial completo.
Casos de integração
Página de ofertas que publica um desconto triplo efetivo
Calcule a redução empilhada uma só vez para que o widget da página coincida com a cifra que um script de checkout ou de boletim citará depois.
Perguntas técnicas
Como se calcula um desconto triplo?
Cada corte sai do preço restante atual, não do original. final_price iguala original_price vezes (1 − discount_1/100) vezes (1 − discount_2/100) vezes (1 − discount_3/100). effective_discount_percent é (1 − final_price/original_price) vezes cem.
Quanto custa a calculadora de desconto triplo?
A ferramenta do navegador é gratuita. Pedidos API usam saldo KIT pré-pago a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.