Calcolatore di doppio sconto
Un prezzo di 100 con il 20% di sconto e poi un altro 10% arriva a 72: risparmia 28 e non 30, perché il secondo sconto si applica solo agli 80 rimasti. Inserisca il prezzo originale e i due sconti in ordine. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Prezzo
- 100
- Primo sconto
- 20
- Secondo sconto
- 10
- Prezzo dopo il primo
- 80
- Prezzo finale
- 72
- Risparmi
- 28
- Percentuale equivalente
- 28
Chi acquista vede di rado una sola riduzione. A un'offerta di tutto il negozio segue un coupon, un extra percentuale per i dipendenti si sovrappone a un cartellino di liquidazione, oppure un marketplace impila lo sconto del venditore e poi un codice di tutto il sito. Sommare le due percentuali gonfia l'offerta: il venti per cento e poi il dieci non è un trenta per cento di sconto, perché il secondo taglio si applica solo a ciò che resta. Questo calcolatore di doppio sconto prende il prezzo originale e due sconti percentuali successivi, li applica in ordine e restituisce il prezzo finale insieme al risparmio totale affinché un carrello, un post di offerta o un bilancio fissino la cifra impilata prima del pagamento. Lo zero per cento in qualunque passo lascia quel passo invariato; il cento per cento in qualunque passo azzera il saldo restante.
Come due sconti successivi si compongono davvero
Due sconti percentuali successivi non sono la stessa cosa di un'unica percentuale combinata. Un rivenditore stampa un venti per cento, poi un coupon preleva un altro dieci per cento da ciò che resta; un extra per i dipendenti si appoggia a un cartellino di liquidazione; un marketplace impila il taglio del venditore e quindi un codice di tutto il sito. Sommare venti e dieci e chiamare l'offerta un trenta per cento gonfia il risparmio, perché il secondo taglio non vede mai il prezzo originale.
Lo zero per cento in qualunque passo è un esito legittimo e lascia quel passo invariato invece di un errore: uno SKU che porta solo una delle due offerte appartiene ancora a un carrello di confronto. Il cento per cento in qualunque passo azzera il saldo restante: il risultato di quel passo è zero e i successivi restano a zero. Lei fornisce tre numeri; il calcolatore li moltiplica in ordine e arrotonda ogni cifra monetaria a due decimali affinché i goldens coincidano byte per byte tra runtime.
Dove un calcolatore di doppio sconto merita il posto
Le famiglie che impilano un'offerta di negozio con un coupon ritagliato usano un calcolatore di doppio sconto per trasformare lo scontrino originale in un prezzo finale confrontabile prima di aggiungere l'articolo al carrello. I team di prodotto collegano lo stesso contratto a pagine di atterraggio e teaser di posta che devono mostrare un prezzo scontato impilato per uno SKU di esempio senza chiamare un motore di promozioni.
È una ricerca e un lavoro diversi da un calcolatore di sconto generico, da un fattore di prezzo netto di sconto a catena all'ingrosso, dal Cyber Monday e da una percentuale effettiva due-per-uno: quegli strumenti calcolano un ribasso ordinario, una cascata commerciale di lunghezza variabile mirata al NPF, un evento di un giorno con nome proprio, o un tasso equivalente due al prezzo di uno.
Un calcolatore di doppio sconto valuta un importo originale contro esattamente due percentuali successive e restituisce il prezzo finale più il denaro risparmiato su quella pila. Una convalida fallita non consuma saldo. Un terzo coupon, le soglie di spedizione gratuita e l'imposta sulle vendite restano fuori da questa identità di proposito: li integri nel proprio strato dopo aver il prezzo finale grezzo e il denaro risparmiato.
L'ordine dei due tassi non cambia il prodotto non arrotondato, ma l'arrotondamento monetario dopo il primo passo può spostare un centesimo se li si scambia, quindi li invii nell'ordine in cui il registratore li applicherà.
Casi d'uso
Anteprima di un extra dipendenti su un articolo già in offerta
Applichi prima la percentuale di liquidazione e poi l'extra dipendenti, quindi fissi savings affinché il libro paga o un negozio del personale possano citare il prezzo impilato.
Domande frequenti
Perché il venti per cento e poi il dieci non è un trenta per cento di sconto?
Il secondo sconto si applica solo a ciò che resta dopo il primo. Su 100, il venti per cento lascia 80; il dieci per cento di 80 è 8; il prezzo finale è 72, quindi il risparmio è 28 (un equivalente del 28 per cento), non 30.
Che succede se uno sconto supera il 100 per cento?
Uno sconto successivo che supera il 100 per cento non viene fatturato.
Ciascuno dei due sconti può essere zero o cento per cento?
Sì. Lo zero per cento lascia quel passo invariato.
In che modo differisce da uno sconto a catena o da un calcolatore a uno sconto solo?
Un calcolatore di sconto generico prende una sola percentuale. Uno strumento di sconto a catena prende una cascata all'ingrosso di lunghezza variabile e restituisce un fattore di prezzo netto. Questo calcolatore sono esattamente due percentuali al dettaglio successive più il risparmio totale.
L'ordine dei due sconti cambia qualcosa?
Per il risultato esatto no: le due percentuali si moltiplicano allo stesso modo in qualsiasi ordine. L'arrotondamento al centesimo dopo il primo passo può però spostare il prezzo finale di un centesimo, quindi li inserisca nell'ordine in cui li applica il negozio.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/fin/double-discount \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"price":100,"first_discount":20,"second_discount":10}'const res = await fetch("https://api.kit.forhosting.com/fin/double-discount", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"price": 100,
"first_discount": 20,
"second_discount": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/double-discount",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"price": 100,
"first_discount": 20,
"second_discount": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/double-discount", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"price":100,"first_discount":20,"second_discount":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"price":100,"first_discount":20,"second_discount":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/double-discount", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"price": 100,
"first_discount": 20,
"second_discount": 10
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.double_discount",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Uno sconto che supera il cento per cento è rifiutato come invalid_input e non viene fatturato.
Come due sconti successivi si compongono davvero
L'identità che usa questo calcolatore è final_price uguale a price per uno meno first_discount diviso cento, per uno meno second_discount diviso cento. Il primo ribasso produce un price_after_first intermedio, poi ridotto dal secondo tasso. Il risparmio totale è il prezzo originale meno quel final_price, il che equivale a price per la percentuale combinata equivalente una volta che l'arrotondamento monetario è applicato a ogni passo così che le parti continuino a sommare il listino. price è l'importo originale in una sola valuta; first_discount e second_discount sono i due tassi annunciati, digitati come le fasce li stampano, così venti significa venti per cento, non venti centesimi. L'unica percentuale che coinciderebbe con il risultato impilato è restituita anche come equivalent_percent affinché un foglio di calcolo conservi un numero accanto alle due percentuali che si digitano. Uno sconto che supera il cento per cento non è un ribasso in questo contratto ed è rifiutato come invalid_input, perché una fascia che stampa centoventi per cento di sconto è quasi sempre un errore di dati, non un rimborso che Lei intendeva modellare. Questo punto non raschia i cataloghi dei rivenditori, non aggiunge un terzo coupon sopra i due percentuali che Lei invia, non somma imposta sulle vendite né spedizione, e non converte valute.
Contratto di ingresso, forma della risposta e comportamento in caso di errore
Se price è negativo, il gestore rifiuta la richiesta perché un prezzo originale non può essere negativo; un campione gratuito di zero è ammesso e produce prezzo finale nullo e risparmio nullo. Se uno dei due sconti è negativo, il gestore rifiuta con un messaggio chiaro che uno sconto successivo negativo non è consentito. Lo zero per cento in un passo è valido e lascia l'importo di quel passo invariato. Il cento per cento in un passo è valido e azzera il prezzo restante. Invii tramite POST un corpo JSON con tre numeri finiti obbligatori. price è l'importo originale in un'unità monetaria prima di ciascuno dei due sconti successivi; gli alias original_price, list_price, original e amount puntano allo stesso campo affinché un'esportazione di catalogo conservi i nomi di colonna. first_discount è il primo tasso successivo di sconto applicato al prezzo originale, non una frazione: venti significa venti per cento; sono accettati gli alias first_percent, discount1, first e percent1. second_discount è il secondo tasso successivo applicato a ciò che resta dopo il primo ribasso; sono accettati gli alias second_percent, discount2, second e percent2. Ogni campo numerico può arrivare come numero JSON o come stringa numerica. Campi assenti, stringhe vuote e valori non finiti falliscono con invalid_input nominando il campo. Se uno dei due sconti supera cento, il gestore rifiuta con invalid_input indicando che uno sconto successivo che supera il 100 per cento non è consentito: quei fallimenti non vengono fatturati. In caso di successo, il corpo riecheggia price arrotondato a due decimali, first_discount e second_discount, poi riporta price_after_first come l'importo dopo solo il primo ribasso, final_price come la cifra di pagamento dopo entrambi i tagli arrotondata a due decimali, savings come price meno final_price, equivalent_percent come l'unica percentuale che coinciderebbe con il risultato impilato, e una stringa formula che riafferma l'identità. Esempio: cento al venti e poi al dieci produce un price_after_first di ottanta, un final_price di settantadue, un savings di ventotto e un equivalent_percent di ventotto. Abbini il JSON alla propria regola su quali SKU condividono quei due tassi — tutto il negozio più coupon, liquidazione più extra dipendenti, o taglio del venditore più codice del sito — perché questo punto moltiplica i tre numeri che Lei invia; non consulta un rivenditore, non applica un terzo coupon e non converte valute. Tenga le richieste piccole, fissi il final_price arrotondato nei test e otterrà una cifra impilata riproducibile per fogli, plugin LMS e worker di bordo senza erigere un motore di promozioni proprio.
Dove un calcolatore di doppio sconto merita il posto
I redattori di siti di offerte inseriscono un listino pubblicato e le due percentuali annunciate, poi fissano final_price e savings affinché un post non citi un trenta per cento inventato che poi diverga dal pagamento. Poiché l'implementazione è parse di livello A puro, ogni chiamata riuscita costa il prezzo base pubblicato $0.002 senza token di modello e senza rete in uscita. Tenga entrambi gli sconti tra zero e cento estremi compresi, fissi il final_price arrotondato nei test e otterrà una cifra impilata riproducibile per teaser, carrelli e worker di bordo senza erigere un motore di promozioni proprio.
Casi di integrazione
Impilare un'offerta di negozio con un coupon prima del pagamento
Trasformi lo scontrino originale più due percentuali annunciate in final_price affinché una pila di venti e poi dieci non venga citata come un falso trenta per cento di sconto.
Controllare un post di offerta rispetto a due ribassi pubblicati
Inserisca il listino dalla pagina del rivenditore e entrambe le percentuali, poi confermi che final_price e savings coincidono con la cifra impilata che sta per pubblicare.
Domande tecniche
Quanto costa il calcolatore di doppio sconto?
Lo strumento del browser è gratuito. Le richieste API usano il saldo prepagato KIT a $0.002 per chiamata riuscita; un ingresso non valido non viene fatturato.