Descuento en cadena / factor de precio neto
Convierta una cadena de descuentos comerciales en un solo precio neto: un precio de lista de 100 con un veinte y luego un diez por ciento de descuento queda en 72, con un factor neto de 0,72 aplicable a cualquier otro precio. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Precio de lista
- 100
- Descuentos en cascada, separados por comas (%)
- 20,10
- Decimales
- 4
- Porcentaje de descuentos
- 20, 10
- Factor de precio neto
- 0,72
- Precio neto
- 72
- Porcentaje de descuento equivalente
- 28
Encadene descuentos comerciales hasta el factor de precio neto. Intención de búsqueda: descuento en cadena. No se requieren llamadas de red ni semillas aleatorias. Los trabajos fallidos no se facturan.
Cómo funciona de verdad una cadena de descuentos
Un descuento en cadena, también llamado descuento en cascada o descuentos sucesivos, es una lista de porcentajes que se restan uno tras otro de un precio de lista. Cada descuento se aplica sobre lo que quedó después del anterior, nunca sobre el precio original. Para combinarlos, convierta cada porcentaje en la parte que deja, es decir, uno menos el descuento. Al multiplicar esas partes obtiene el factor de precio neto, y al multiplicar el precio de lista por ese factor obtiene el precio neto. Con un precio de lista de 100 y descuentos del veinte por ciento y del diez por ciento, el factor es 0,72 y el precio neto, 72. Uno menos el factor, un 28 %, es el descuento único que lleva al mismo precio.
Errores que hacen parecer mayor el descuento
El error más habitual es sumar los porcentajes. Sobre el papel, un veinte por ciento y un diez por ciento parecen un 30 %, pero el segundo descuento actúa sobre una base menor, así que el ahorro real es del 28 %. Otro desliz parecido es calcular todos los descuentos sobre el precio de lista original, que conduce al mismo total equivocado. Redondear en cada paso es otra trampa: con varios descuentos en la cadena, las pequeñas diferencias se acumulan. Aquí se calcula primero la cadena completa y se redondea una sola vez, al final, y solo cuando usted pide decimales. Por último, el orden de los descuentos no cambia el resultado, de modo que no hace falta preocuparse por cuál va primero.
Preguntas frecuentes
¿Por qué no puedo sumar los descuentos sin más?
Porque cada descuento se aplica sobre un precio que ya está rebajado. Un veinte por ciento y un diez por ciento parecen un 30 % sobre el papel, pero juntos solo quitan un 28 %, así que un precio de lista de 100 termina en 72.
¿Importa el orden de los descuentos?
No. El factor de precio neto multiplica lo que deja cada descuento, y multiplicar en otro orden da el mismo resultado. Aplicar primero el diez por ciento y después el veinte por ciento sigue dando un factor de 0,72.
¿Qué es el descuento único equivalente?
Es el único descuento que llevaría al mismo precio neto que toda la cadena: uno menos el factor de precio neto, expresado en porcentaje. Un factor de 0,72 equivale a un descuento único del 28 %.
¿Cómo se redondean los resultados?
Solo si usted pide decimales, y entonces una sola vez, al final. Toda la cadena se calcula con precisión completa y se redondea hacia arriba desde la mitad una única vez, para que los pequeños errores no se acumulen de un descuento al siguiente.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/math/chain-discount \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"list_price":100,"discounts_percent":"20,10"}'const res = await fetch("https://api.kit.forhosting.com/math/chain-discount", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"list_price": 100,
"discounts_percent": "20,10"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/chain-discount",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"list_price": 100,
"discounts_percent": "20,10"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/chain-discount", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"list_price":100,"discounts_percent":"20,10"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"list_price":100,"discounts_percent":"20,10"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/chain-discount", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"list_price": 100,
"discounts_percent": "20,10"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.chain_discount",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
La calculadora es gratuita en el navegador, determinista e idéntica en la ruta del API. Las entradas se validan antes de la aritmética, de modo que las cargas no válidas fallan con invalid_input. El redondeo half-up se aplica una sola vez sobre los valores IEEE en bruto cuando se solicitan decimales. Use el mismo JSON desde hojas de cálculo, CMS, automatización o demostraciones docentes.
Cómo funciona
Encadene descuentos comerciales hasta el factor de precio neto. FPN=Π(1−dᵢ); neto=lista×FPN. No se requieren llamadas de red ni semillas aleatorias. Los trabajos fallidos no se facturan. No se requieren llamadas de red ni semillas aleatorias. Los trabajos fallidos no se facturan. La calculadora es gratuita en el navegador, determinista e idéntica en la ruta del API. Las entradas se validan antes de la aritmética, de modo que las cargas no válidas fallan con invalid_input. El redondeo half-up se aplica una sola vez sobre los valores IEEE en bruto cuando se solicitan decimales. Use el mismo JSON desde hojas de cálculo, CMS, automatización o demostraciones docentes. La calculadora es gratuita en el navegador, determinista e idéntica en la ruta del API. Las entradas se validan antes de la aritmética, de modo que las cargas no válidas fallan con invalid_input. El redondeo half-up se aplica una sola vez sobre los valores IEEE en bruto cuando se solicitan decimales. Use el mismo JSON desde hojas de cálculo, CMS, automatización o demostraciones docentes.
Entradas, límites y redondeo
Los decimales opcionales usan half-up una sola vez. Las salidas reflejan las entradas. No se requieren llamadas de red ni semillas aleatorias. Los trabajos fallidos no se facturan. No se requieren llamadas de red ni semillas aleatorias. Los trabajos fallidos no se facturan. Proporcione los campos JSON obligatorios. Los tipos no válidos generan invalid_input. La calculadora es gratuita en el navegador, determinista e idéntica en la ruta del API. Las entradas se validan antes de la aritmética, de modo que las cargas no válidas fallan con invalid_input. El redondeo half-up se aplica una sola vez sobre los valores IEEE en bruto cuando se solicitan decimales. Use el mismo JSON desde hojas de cálculo, CMS, automatización o demostraciones docentes. La calculadora es gratuita en el navegador, determinista e idéntica en la ruta del API. Las entradas se validan antes de la aritmética, de modo que las cargas no válidas fallan con invalid_input. El redondeo half-up se aplica una sola vez sobre los valores IEEE en bruto cuando se solicitan decimales. Use el mismo JSON desde hojas de cálculo, CMS, automatización o demostraciones docentes.
Cuándo usarla
Úsela cuando la intención de búsqueda coincida. Encadene descuentos comerciales hasta el factor de precio neto. No se requieren llamadas de red ni semillas aleatorias. Los trabajos fallidos no se facturan. No se requieren llamadas de red ni semillas aleatorias. Los trabajos fallidos no se facturan. La calculadora es gratuita en el navegador, determinista e idéntica en la ruta del API. Las entradas se validan antes de la aritmética, de modo que las cargas no válidas fallan con invalid_input. El redondeo half-up se aplica una sola vez sobre los valores IEEE en bruto cuando se solicitan decimales. Use el mismo JSON desde hojas de cálculo, CMS, automatización o demostraciones docentes. La calculadora es gratuita en el navegador, determinista e idéntica en la ruta del API. Las entradas se validan antes de la aritmética, de modo que las cargas no válidas fallan con invalid_input. El redondeo half-up se aplica una sola vez sobre los valores IEEE en bruto cuando se solicitan decimales. Use el mismo JSON desde hojas de cálculo, CMS, automatización o demostraciones docentes.
Casos de integración
Comprobación rápida
Widget gratuito.
Automatización
El mismo JSON a través del API.
Docencia
Ejemplos golden fijados.
Preguntas técnicas
¿Gratis?
Sí, tier A.
¿Red?
No la usa.
¿Entrada no válida?
Devuelve invalid_input.
¿API?
Sí.
¿Idiomas?
Solo EN; Nitro los hidrata.