ForHosting KIT · Finanzas y dinero

Calculadora de IVA

100 al 21 % se convierte en 121, con 21 de impuesto, y 121 al 21 % vuelve a 100: añada el IVA a un precio neto o extráigalo de un total que ya lo incluye, y obtenga siempre base, impuesto y total. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
Modo de cálculo
Agregar impuesto
Cantidad
100
Tasa de impuesto
21
Obtiene
Importe neto
100
Importe del impuesto
21
Importe bruto
121

Devuelve neto, impuesto y bruto.

Añadir el impuesto y volver a sacarlo

Al añadir, el importe que escribe es el precio neto. El impuesto es la base por el tipo y el total es la base más el impuesto, de modo que 100 al 21 % da 21 de impuesto y 121 en total. El tipo se escribe como porcentaje simple: 21 significa 21 %. Extraer funciona al revés: toma el importe como total con impuesto incluido, lo divide entre uno más el tipo para hallar la base y deja la diferencia como impuesto, así que 121 al 21 % recupera 100 y 21. Es lo que necesita para separar el impuesto del total de un ticket o de una línea de factura con IVA incluido. Un tipo de cero está permitido y da un impuesto de cero.

El redondeo y el error clásico

El error más común es restar el tipo al total. Como el tipo se aplica a la base, eso quita de más; dividir entre uno más el tipo es la operación inversa correcta. La segunda trampa es el redondeo. Aquí las tres cifras se redondean por separado: al añadir, el impuesto se calcula a partir de la base ya redondeada y el total se redondea después, de modo que cada línea cuadra en contabilidad en lugar de depender de una fracción oculta. Sin eso, con tipos poco habituales, base más impuesto puede no coincidir con el total por un céntimo. Puede elegir de 0 a 8 decimales: más para monedas o precios unitarios que los necesiten, o 0 para unidades enteras.

Añadir frente a extraer

El campo rate es un porcentaje (21 significa 21 %) convertido internamente a r = rate / 100. Extraer es la inversa de añadir y es lo que se usa para desglosar la parte de impuesto del total de un recibo o de una línea de factura bruta. Cada rama devuelve la terna completa de net, tax y gross más el mode y la rate que usted aportó.

Redondear cada componente de forma independiente

Como los tres componentes se redondean por separado, add calcula tax a partir del net redondeado y luego redondea gross, lo que mantiene cada línea coherente consigo misma para la contabilidad en lugar de derivarla de un valor intermedio sin redondear. Esto importa con precisión más alta o tasas inusuales, donde una única fracción oculta podría hacer que net más tax pareciera discrepar de gross en un céntimo. Elija más decimales para las monedas o precios unitarios que los necesiten, o 0 para mostrar unidades enteras.

¿Cómo se indica la tasa?

Como un número porcentual, de modo que 21 significa 21 %. Debe ser finita y no negativa; se permite el cero y da un impuesto de cero.

¿Cómo se redondean los importes?

net, tax y gross se redondean cada uno half-up de forma independiente a los decimals que usted fije (de 0 a 8, por defecto 2), de modo que las líneas siguen siendo coherentes consigo mismas.

¿Cómo añado un 21 % de IVA a un precio?

Elija añadir el impuesto y escriba el precio neto y el tipo como porcentaje, 21 para el 21 %. Un precio neto de 100 da 21 de impuesto y un total de 121.

¿Cómo saco el IVA de un total que ya lo incluye?

Elija extraer el impuesto y escriba el total con IVA y el tipo. La base es el total dividido entre uno más el tipo: 121 al 21 % devuelve una base de 100 y un impuesto de 21.

¿Por qué no basta con restar el 21 % al total?

Porque el tipo se aplica sobre la base, no sobre el total. Restar el 21 % de 121 quita más que los 21 de impuesto que contiene; dividir 121 entre 1,21 da la base correcta de 100.

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.

POSThttps://api.kit.forhosting.com/dev/vat-calculator

¿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.

curl -X POST https://api.kit.forhosting.com/dev/vat-calculator \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"mode":"add","amount":100,"rate":21}'
{
  "mode": "add",
  "amount": 100,
  "rate": 21
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.vat_calculator",
  "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.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Calcula el impuesto sobre el valor añadido o sobre las ventas de dos maneras. mode=add trata el importe como neto y le añade una tasa porcentual por encima; mode=extract trata el importe como un bruto con el impuesto incluido y calcula el neto y el impuesto que ya contiene.

Añadir frente a extraer

En mode=add el amount es el precio neto: net es igual a amount, tax es igual a net por r, y gross es igual a net más tax, de modo que 100 al 21 % devuelve net 100, tax 21, gross 121. En mode=extract el amount es el bruto con el impuesto incluido: net es igual a gross dividido entre (1 + r), y tax es igual a gross menos net, de modo que 121 al 21 % recupera net 100 y tax 21.

Rangos, validación y errores tipados

mode, amount y rate son todos obligatorios. mode debe ser exactamente add o extract. amount y rate deben ser cada uno un número finito que no sea negativo, y sus magnitudes están limitadas a 1e12 para mantener los resultados con sentido; una tasa de cero está permitida y simplemente da un impuesto de cero. decimals debe ser un entero dentro de 0..8. Cualquier infracción, o una entrada que no sea un objeto, lanza un error invalid_input tipado que nombra el problema en lugar de un fallo sin tipo, y extract protege frente a una tasa de -100 % que haría que 1 + r fuera cero.

Fijar precios con el impuesto por encima

Use mode=add para convertir un precio neto de catálogo en un precio bruto de cara al cliente a su tasa local de IVA o de impuesto sobre las ventas.

Conciliar recibos y facturas

Use mode=extract para dividir un total con el impuesto incluido en sus partes de neto e impuesto para la contabilidad y las declaraciones.

Sistemas de pago y facturación

Llame a la API para calcular neto, impuesto y bruto de forma coherente en un carrito de comercio electrónico o una cadena de facturación a cualquier tasa.

¿Cuál es la diferencia entre add y extract?

add trata amount como neto y le pone el impuesto por encima (gross = net + tax). extract trata amount como bruto con el impuesto incluido y calcula net = gross / (1 + rate/100) y el impuesto contenido.

¿Qué provoca un error?

Un error invalid_input tipado para un mode incorrecto, un amount o rate negativo o no finito, magnitudes por encima de 1e12, decimals fuera de 0..8, o una tasa de -100 % en extract.

¿Es gratuita y cuánto cuesta la API?

El widget del navegador es gratuito; la API usa saldo prepago de KIT desde $0.002, y las tareas fallidas no se cobran.

Ver la documentación completa del KIT →