bytateca.com Open in urlscan Pro
51.68.98.151  Public Scan

URL: https://bytateca.com/
Submission: On April 23 via api from US — Scanned from ES

Form analysis 7 forms found in the DOM

<form>
  <fieldset>
    <legend class="visuallyhidden">Consent Selection</legend>
    <div id="CybotCookiebotDialogBodyFieldsetInnerContainer">
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonNecessary"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Necesarias</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper CybotCookiebotDialogBodyLevelButtonSliderWrapperDisabled"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonNecessary"
            class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelButtonDisabled" disabled="disabled" checked="checked"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonPreferences"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Preferencias</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonPreferences" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
            data-target="CybotCookiebotDialogBodyLevelButtonPreferencesInline" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonStatistics"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Estadística</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonStatistics" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
            data-target="CybotCookiebotDialogBodyLevelButtonStatisticsInline" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonMarketing"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Marketing</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonMarketing" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
            data-target="CybotCookiebotDialogBodyLevelButtonMarketingInline" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
    </div>
  </fieldset>
</form>

<form><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonNecessaryInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelButtonDisabled" disabled="disabled" checked="checked"> <span
    class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonPreferencesInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox" data-target="CybotCookiebotDialogBodyLevelButtonPreferences"
    checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonStatisticsInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox" data-target="CybotCookiebotDialogBodyLevelButtonStatistics"
    checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonMarketingInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox" data-target="CybotCookiebotDialogBodyLevelButtonMarketing" checked="checked"
    tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form class="CybotCookiebotDialogBodyLevelButtonSliderWrapper"><input type="checkbox" id="CybotCookiebotDialogBodyContentCheckboxPersonalInformation" class="CybotCookiebotDialogBodyLevelButton"> <span
    class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

Name: Nuevo formularioPOST

<form class="elementor-form" method="post" name="Nuevo formulario">
  <input type="hidden" name="post_id" value="2131">
  <input type="hidden" name="form_id" value="78e295c9">
  <input type="hidden" name="referer_title" value="Inicio - Bytateca">
  <input type="hidden" name="queried_id" value="14">
  <div class="elementor-form-fields-wrapper elementor-labels-above">
    <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_1e23bf9 elementor-col-50">
      <div class="columna-1"> </div>
      <div class="elementor-field-type-dce_range elementor-field-group elementor-column elementor-field-group-importe elementor-col-100">
        <label for="form-field-importe" class="elementor-field-label"> Importe por amortizar </label>
        <input type="range" name="form_fields[importe]" id="form-field-importe" class="elementor-field elementor-size-sm " min="0" max="500000" step="5000" data-show-value="yes" data-text-before="" data-text-after="€">
        <p class="range-value"> <span>250000</span> €</p>
      </div>
      <div class="elementor-field-type-dce_range elementor-field-group elementor-column elementor-field-group-meses elementor-col-100">
        <label for="form-field-meses" class="elementor-field-label"> ¿Cuántos meses te quedan? </label>
        <input type="range" name="form_fields[meses]" id="form-field-meses" class="elementor-field elementor-size-sm " min="0" max="480" step="1" data-show-value="yes" data-text-before="" data-text-after="">
        <p class="range-value"> <span>240</span> </p>
      </div>
      <div class="elementor-field-type-dce_range elementor-field-group elementor-column elementor-field-group-cuota elementor-col-100">
        <label for="form-field-cuota" class="elementor-field-label"> Cuota mensual que pagas actualmente </label>
        <input type="range" name="form_fields[cuota]" id="form-field-cuota" class="elementor-field elementor-size-sm " min="0" max="3000" step="50" data-show-value="yes" data-text-before="" data-text-after="€">
        <p class="range-value"> <span>1500</span> €</p>
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_3a7c320 elementor-col-100">
        <div style="color:black; font-size: 14px; background-color:rgba(210,0,0,0.1); padding: 5px 10px; border-radius: 5px">NOTA: Si incluyes datos no reales, no esperes resultados reales <img draggable="false" role="img" class="emoji" alt="😉"
            src="https://s.w.org/images/core/emoji/15.0.3/svg/1f609.svg"></div>
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-tasa elementor-col-100">
        <label for="form-field-tasa" class="elementor-field-label"> Tasa interés: </label>
        <input size="1" type="dce_js_field text" name="form_fields[tasa]" id="form-field-tasa" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  function calcularTasaInteresAnual(saldoRestante, cuotaMensual, mesesRestantes) {
      
    let tasaInteresMensual = -0.05;
    let cuotaCalculada = 0;
    const incremento = 0.00000980; // Incremento en cada iteración
    const tolerancia = 15; // Margen de error aceptable en la moneda del saldo
    let iteraciones = 0;
    const maxIteraciones = 10000; // Para evitar bucles infinitos
    
  if (cuotaMensual <= 0 || mesesRestantes <= 0 || saldoRestante <= 0) {
    return &quot;Valores de entrada no válidos&quot;;
  }

    do {
      tasaInteresMensual += incremento;
      cuotaCalculada = saldoRestante * tasaInteresMensual * Math.pow(1 + tasaInteresMensual, mesesRestantes) / (Math.pow(1 + tasaInteresMensual, mesesRestantes) - 1);
      iteraciones++;
    } while (Math.abs(cuotaCalculada - cuotaMensual) > tolerancia &amp;&amp; iteraciones < maxIteraciones);

    // Convierte la tasa mensual a tasa anual multiplicando por 12
    let tasaInteresAnual = tasaInteresMensual * 12;

    // Convierte la tasa a porcentaje multiplicando por 100
    tasaInteresAnual *= 100;

    return tasaInteresAnual.toFixed(4) + '%';
    
  }   
  
  // Uso de la función
  const saldoRestante = getField(&quot;importe&quot;);
  const cuotaMensual = getField(&quot;cuota&quot;);
  const mesesRestantes = getField(&quot;meses&quot;);
  const tasaInteresAnual = calcularTasaInteresAnual(saldoRestante, cuotaMensual, mesesRestantes);

  console.log('saldoRestante ' + saldoRestante);
  console.log('cuotaMensual ' + cuotaMensual);
  console.log('mesesRestantes ' + mesesRestantes);
  console.log('tasaInteresAnual ' + tasaInteresAnual);

  return tasaInteresAnual;
};" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-tasa_opt elementor-col-100">
        <label for="form-field-tasa_opt" class="elementor-field-label"> Tasa óptima </label>
        <input size="1" type="text" name="form_fields[tasa_opt]" id="form-field-tasa_opt" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="2" value="2">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-cuota_nueva elementor-col-100">
        <label for="form-field-cuota_nueva" class="elementor-field-label"> Cuota </label>
        <input size="1" type="dce_js_field text" name="form_fields[cuota_nueva]" id="form-field-cuota_nueva" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa&quot;)) / 100; // Convertir a un porcentaje decimal
  const numero_pagos = parseInt(getField(&quot;meses&quot;));

  // Convertir la tasa de interés anual a mensual
  const tasa_interes_mensual = tasa_interes_anual / 12;

  // Calcular la cuota mensual
  const cuota_calculada_mensual = capital_inicial * (tasa_interes_mensual * (1 + tasa_interes_mensual) ** numero_pagos) / ((1 + tasa_interes_mensual) ** numero_pagos - 1);
  
  // Devolver el resultado
  return cuota_calculada_mensual.toFixed(2); // Redondear a dos decimales
};" data-real-time="" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-cuota_opt elementor-col-100">
        <label for="form-field-cuota_opt" class="elementor-field-label"> Cuota Óptima </label>
        <input size="1" type="dce_js_field text" name="form_fields[cuota_opt]" id="form-field-cuota_opt" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa_opt&quot;)) / 100; // Convertir a un porcentaje decimal
  const numero_pagos = parseInt(getField(&quot;meses&quot;));

  // Convertir la tasa de interés anual a mensual
  const tasa_interes_mensual = tasa_interes_anual / 12;

  // Calcular la cuota mensual
  const cuota_calculada_mensual = capital_inicial * (tasa_interes_mensual * (1 + tasa_interes_mensual) ** numero_pagos) / ((1 + tasa_interes_mensual) ** numero_pagos - 1);
  
  // Devolver el resultado
  return cuota_calculada_mensual.toFixed(2); // Redondear a dos decimales
};" data-real-time="" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-interes_js elementor-col-100">
        <label for="form-field-interes_js" class="elementor-field-label"> Total Intereses JS </label>
        <input size="1" type="dce_js_field text" name="form_fields[interes_js]" id="form-field-interes_js" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos
  const cuota_mensual = parseFloat(getField(&quot;cuota&quot;));
  const importe_total_prestamo = parseFloat(getField(&quot;importe&quot;));
  const meses_restantes = parseInt(getField(&quot;meses&quot;));

  // Calcular el total pagado al final del préstamo
  const total_pagado = cuota_mensual * meses_restantes;

  // Calcular el total de intereses a pagar
  const total_intereses = total_pagado - importe_total_prestamo;

  // Devolver el resultado
  return total_intereses.toFixed(2);
};
" data-real-time="" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-intereses_opt_js elementor-col-100">
        <label for="form-field-intereses_opt_js" class="elementor-field-label"> Total Intereses JS </label>
        <input size="1" type="dce_js_field text" name="form_fields[intereses_opt_js]" id="form-field-intereses_opt_js" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos
  const cuota_mensual = parseFloat(getField(&quot;cuota_opt&quot;));
  const importe_total_prestamo = parseFloat(getField(&quot;importe&quot;));
  const meses_restantes = parseInt(getField(&quot;meses&quot;));

  // Calcular el total pagado al final del préstamo
  const total_pagado = cuota_mensual * meses_restantes;

  // Calcular el total de intereses a pagar
  const total_intereses = total_pagado - importe_total_prestamo;

  // Devolver el resultado
  return total_intereses.toFixed(2);
};
" data-real-time="" readonly="">
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_98f5ad5 elementor-col-50">
      </div>
    </div>
    <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_d47d9ed elementor-col-50">
      <div class="columna-2"> </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_82c15ea elementor-col-100">
        <div style="text-align:center; margin-top: 20px; font-weight:bold">Cambiando de hipoteca puedes ahorrarte hasta:</div>
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-ahorro elementor-col-100">
        <input size="1" type="dce_js_field text" name="form_fields[ahorro]" id="form-field-ahorro" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos de total de intereses
  const total_intereses1 = parseFloat(getField(&quot;interes_js&quot;));
  const total_intereses2 = parseFloat(getField(&quot;intereses_opt_js&quot;));

  // Calcular la diferencia
  const diferencia = total_intereses1 - total_intereses2;

    // Formatear el resultado y añadir los signos de exclamación
  const resultadoConExclamaciones = &quot;¡&quot; + diferencia.toLocaleString(&quot;es-ES&quot;, {
    style: &quot;currency&quot;,
    currency: &quot;EUR&quot;,
  }) + &quot;!&quot;;

  // Devolver el resultado
  return resultadoConExclamaciones;
};" data-real-time="" readonly="">
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_2f2ed21 elementor-col-50 elementor-sm-40">
        <div style="text-align:center; font-size:26px; font-weight:bold">Periodo</div>
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_2910251 elementor-col-50 elementor-sm-40">
        <div style="font-size:26px; font-weight:bold; margin-left: 70px">Ahorro</div>
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-primer_mes elementor-col-25">
        <label for="form-field-primer_mes" class="elementor-field-label"> Primer mes </label>
        <input size="1" type="dce_js_field text" name="form_fields[primer_mes]" id="form-field-primer_mes" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa&quot;)) / 100;
  const tasa_interes_mensual = tasa_interes_anual / 12;
  
  const intereses_primer_mes = capital_inicial * tasa_interes_mensual;
  return intereses_primer_mes.toFixed(2);
};

" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-primer_mes_opt elementor-col-25">
        <label for="form-field-primer_mes_opt" class="elementor-field-label"> Primer mes óptimo </label>
        <input size="1" type="dce_js_field text" name="form_fields[primer_mes_opt]" id="form-field-primer_mes_opt" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa_opt&quot;)) / 100;
  const tasa_interes_mensual = tasa_interes_anual / 12;
  
  const intereses_primer_mes = capital_inicial * tasa_interes_mensual;
  return intereses_primer_mes.toFixed(2);
};

" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_838cb4a elementor-col-50 elementor-sm-40">
        <div style="font-weight:bold; ">Primer mes</div>
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-ahorro_primer_mes elementor-col-50 elementor-sm-60">
        <label for="form-field-ahorro_primer_mes" class="elementor-field-label"> Ahorro primer mes JS </label>
        <input size="1" type="dce_js_field text" name="form_fields[ahorro_primer_mes]" id="form-field-ahorro_primer_mes" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos de total de intereses
  const total_intereses1 = parseFloat(getField(&quot;primer_mes&quot;));
  const total_intereses2 = parseFloat(getField(&quot;primer_mes_opt&quot;));

  // Calcular la diferencia
  const diferencia = total_intereses1 - total_intereses2;

  // Devolver el resultado
  return diferencia.toLocaleString(&quot;es-ES&quot;, {
    style: &quot;currency&quot;,
    currency: &quot;EUR&quot;,
    minimumFractionDigits: 2
  });
};" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-12_meses elementor-col-25">
        <label for="form-field-12_meses" class="elementor-field-label"> 1 año </label>
        <input size="1" type="dce_js_field text" name="form_fields[12_meses]" id="form-field-12_meses" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa&quot;)) / 100;
  const numero_pagos = 12;
  const tasa_interes_mensual = tasa_interes_anual / 12;

  let saldo_restante = capital_inicial;
  let intereses_totales = 0;

  for (let mes = 1; mes <= numero_pagos; mes++) {
    let interes_del_mes = saldo_restante * tasa_interes_mensual;
    intereses_totales += interes_del_mes;
    saldo_restante -= (parseFloat(getField(&quot;cuota&quot;)) - interes_del_mes);
  }

  return intereses_totales.toFixed(2);

};


" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-12_meses_opt elementor-col-25">
        <label for="form-field-12_meses_opt" class="elementor-field-label"> 1 año óptimo </label>
        <input size="1" type="dce_js_field text" name="form_fields[12_meses_opt]" id="form-field-12_meses_opt" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa_opt&quot;)) / 100;
  const numero_pagos = 12;
  const tasa_interes_mensual = tasa_interes_anual / 12;

  let saldo_restante = capital_inicial;
  let intereses_totales = 0;

  for (let mes = 1; mes <= numero_pagos; mes++) {
    let interes_del_mes = saldo_restante * tasa_interes_mensual;
    intereses_totales += interes_del_mes;
    saldo_restante -= (parseFloat(getField(&quot;cuota_opt&quot;)) - interes_del_mes);
  }

  return intereses_totales.toFixed(2);

};

" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_750290c elementor-col-50 elementor-sm-40">
        <div style="font-weight:bold; ">1 año</div>
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-ahorro_12_meses elementor-col-50 elementor-sm-60">
        <label for="form-field-ahorro_12_meses" class="elementor-field-label"> Ahorro primer año JS </label>
        <input size="1" type="dce_js_field text" name="form_fields[ahorro_12_meses]" id="form-field-ahorro_12_meses" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos de total de intereses
  const total_intereses1 = parseFloat(getField(&quot;12_meses&quot;));
  const total_intereses2 = parseFloat(getField(&quot;12_meses_opt&quot;));

  // Calcular la diferencia
  const diferencia = total_intereses1 - total_intereses2;

  // Devolver el resultado
  return diferencia.toLocaleString(&quot;es-ES&quot;, {
    style: &quot;currency&quot;,
    currency: &quot;EUR&quot;,
    minimumFractionDigits: 2
  });
};" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-36_meses elementor-col-25">
        <label for="form-field-36_meses" class="elementor-field-label"> 3 años </label>
        <input size="1" type="dce_js_field text" name="form_fields[36_meses]" id="form-field-36_meses" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa&quot;)) / 100;
  const numero_pagos = 36;
  const tasa_interes_mensual = tasa_interes_anual / 12;

  let saldo_restante = capital_inicial;
  let intereses_totales = 0;

  for (let mes = 1; mes <= numero_pagos; mes++) {
    let interes_del_mes = saldo_restante * tasa_interes_mensual;
    intereses_totales += interes_del_mes;
    saldo_restante -= (parseFloat(getField(&quot;cuota&quot;)) - interes_del_mes);
  }

  return intereses_totales.toFixed(2);

};


" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-36_meses_opt elementor-col-25">
        <label for="form-field-36_meses_opt" class="elementor-field-label"> 3 años óptimo </label>
        <input size="1" type="dce_js_field text" name="form_fields[36_meses_opt]" id="form-field-36_meses_opt" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa_opt&quot;)) / 100;
  const numero_pagos = 36;
  const tasa_interes_mensual = tasa_interes_anual / 12;

  let saldo_restante = capital_inicial;
  let intereses_totales = 0;

  for (let mes = 1; mes <= numero_pagos; mes++) {
    let interes_del_mes = saldo_restante * tasa_interes_mensual;
    intereses_totales += interes_del_mes;
    saldo_restante -= (parseFloat(getField(&quot;cuota_opt&quot;)) - interes_del_mes);
  }

  return intereses_totales.toFixed(2);

};

" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_c4b9d28 elementor-col-50 elementor-sm-40">
        <div style="font-weight:bold; ">3 años</div>
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-ahorro_36_meses elementor-col-50 elementor-sm-60">
        <label for="form-field-ahorro_36_meses" class="elementor-field-label"> Ahorro 3 años JS </label>
        <input size="1" type="dce_js_field text" name="form_fields[ahorro_36_meses]" id="form-field-ahorro_36_meses" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos de total de intereses
  const total_intereses1 = parseFloat(getField(&quot;36_meses&quot;));
  const total_intereses2 = parseFloat(getField(&quot;36_meses_opt&quot;));

  // Calcular la diferencia
  const diferencia = total_intereses1 - total_intereses2;

  // Devolver el resultado
  return diferencia.toLocaleString(&quot;es-ES&quot;, {
    style: &quot;currency&quot;,
    currency: &quot;EUR&quot;,
    minimumFractionDigits: 2
  });
};" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-60_meses elementor-col-25">
        <label for="form-field-60_meses" class="elementor-field-label"> 5 años </label>
        <input size="1" type="dce_js_field text" name="form_fields[60_meses]" id="form-field-60_meses" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa&quot;)) / 100;
  const numero_pagos = 60;
  const tasa_interes_mensual = tasa_interes_anual / 12;

  let saldo_restante = capital_inicial;
  let intereses_totales = 0;

  for (let mes = 1; mes <= numero_pagos; mes++) {
    let interes_del_mes = saldo_restante * tasa_interes_mensual;
    intereses_totales += interes_del_mes;
    saldo_restante -= (parseFloat(getField(&quot;cuota&quot;)) - interes_del_mes);
  }

  return intereses_totales.toFixed(2);
  
};


" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-60_meses_opt elementor-col-25">
        <label for="form-field-60_meses_opt" class="elementor-field-label"> 5 años óptimo </label>
        <input size="1" type="dce_js_field text" name="form_fields[60_meses_opt]" id="form-field-60_meses_opt" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  const capital_inicial = parseFloat(getField(&quot;importe&quot;));
  const tasa_interes_anual = parseFloat(getField(&quot;tasa_opt&quot;)) / 100;
  const numero_pagos = 60;
  const tasa_interes_mensual = tasa_interes_anual / 12;

  let saldo_restante = capital_inicial;
  let intereses_totales = 0;

  for (let mes = 1; mes <= numero_pagos; mes++) {
    let interes_del_mes = saldo_restante * tasa_interes_mensual;
    intereses_totales += interes_del_mes;
    saldo_restante -= (parseFloat(getField(&quot;cuota_opt&quot;)) - interes_del_mes);
  }
  
  return intereses_totales.toFixed(2);

};

" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_b49e915 elementor-col-50 elementor-sm-40">
        <div style="font-weight:bold; ">5 años</div>
      </div>
      <div class="elementor-field-type-dce_js_field elementor-field-group elementor-column elementor-field-group-ahorro_60_meses elementor-col-50 elementor-sm-60">
        <label for="form-field-ahorro_60_meses" class="elementor-field-label"> Ahorro 5 años JS </label>
        <input size="1" type="dce_js_field text" name="form_fields[ahorro_60_meses]" id="form-field-ahorro_60_meses" class="elementor-field elementor-size-sm  elementor-field-textual" data-field-code="return () => {
  // Obtener valores de los campos de total de intereses
  const total_intereses1 = parseFloat(getField(&quot;60_meses&quot;));
  const total_intereses2 = parseFloat(getField(&quot;60_meses_opt&quot;));

  // Calcular la diferencia
  const diferencia = total_intereses1 - total_intereses2;

  // Devolver el resultado
  return diferencia.toLocaleString(&quot;es-ES&quot;, {
    style: &quot;currency&quot;,
    currency: &quot;EUR&quot;,
    minimumFractionDigits: 2
  });
};" data-real-time="yes" readonly="">
      </div>
      <div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_13a8854 elementor-col-50">
      </div>
      <div style="clear: both;"></div>
    </div>
    <div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-name elementor-col-33 elementor-md-33 elementor-sm-100 elementor-field-required">
      <input size="1" type="text" name="form_fields[name]" id="form-field-name" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Tu nombre*" required="required" aria-required="true">
    </div>
    <div class="elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-33 elementor-md-33 elementor-sm-100 elementor-field-required">
      <input size="1" type="email" name="form_fields[email]" id="form-field-email" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Tu correo*" required="required" aria-required="true">
    </div>
    <div class="elementor-field-type-tel elementor-field-group elementor-column elementor-field-group-tel elementor-col-33 elementor-md-33 elementor-sm-100">
      <input size="1" type="tel" name="form_fields[tel]" id="form-field-tel" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Tu teléfono" pattern="[0-9()#&amp;+*-=.]+"
        title="Solo se aceptan números y caracteres de teléfono (#,-,*,etc).">
    </div>
    <div class="elementor-field-type-acceptance elementor-field-group elementor-column elementor-field-group-acceptance elementor-col-100 elementor-field-required">
      <div class="elementor-field-subgroup">
        <span class="elementor-field-option">
          <input type="checkbox" name="form_fields[acceptance]" id="form-field-acceptance" class="elementor-field elementor-size-sm  elementor-acceptance-field" required="required" aria-required="true">
          <label for="form-field-acceptance">He leído y acepto la <a href="https://bytateca.com/politica-de-privacidad/" target="_blank">Política de Privacidad</a></label> </span>
      </div>
    </div>
    <div class="elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons">
      <button type="submit" class="elementor-button elementor-size-sm">
        <span>
          <span class=" elementor-button-icon">
          </span>
          <span class="elementor-button-text">QUIERO AHORRAR EN MI HIPOTECA</span>
        </span>
      </button>
    </div>
  </div>
</form>

Text Content

Powered by Cookiebot
 * Consentimiento
 * Detalles
 * [#IABV2SETTINGS#]
 * Acerca de las cookies


ESTA PÁGINA WEB USA COOKIES

Las cookies de este sitio web se usan para personalizar el contenido y los
anuncios, ofrecer funciones de redes sociales y analizar el tráfico. Además,
compartimos información sobre el uso que haga del sitio web con nuestros
partners de redes sociales, publicidad y análisis web, quienes pueden combinarla
con otra información que les haya proporcionado o que hayan recopilado a partir
del uso que haya hecho de sus servicios.

Consent Selection
Necesarias

Preferencias

Estadística

Marketing

Mostrar detalles
 * Necesarias 6
   
   Las cookies necesarias ayudan a hacer una página web utilizable activando
   funciones básicas como la navegación en la página y el acceso a áreas seguras
   de la página web. La página web no puede funcionar adecuadamente sin estas
   cookies.
    * Cookiebot
      2
      Más información sobre este proveedor
      CookieConsentAlmacena el estado de consentimiento de cookies del usuario
      para el dominio actual
      Caducidad: 1 añoTipo: HTTP
      1.gifSe utiliza para contar el número de sesiones del sitio web, necesario
      para optimizar la entrega de productos CMP.
      Caducidad: SessionTipo: Pixel
    * Google
      1
      Más información sobre este proveedor
      test_cookiePendiente
      Caducidad: 1 díaTipo: HTTP
    * bytateca.com
      3
      elementorUtilizada en relación al tema de Wordpress de la web. La cookie
      permite al propietario de la web implementar o cambiar el contenido de la
      web en tiempo real.
      Caducidad: PersistentTipo: HTML
      wevarnishpassEsta cookie es necesaria para la función de caché, que se
      utiliza en la web para optimizar el tiempo de respuesta entre el visitante
      y la web. Normalmente se almacena en el navegador del visitante.
      Caducidad: SessionTipo: HTTP
      wpEmojiSettingsSupportsEsta cookie está asociada con un paquete de cookies
      que sirven al propósito de entrega de contenido y presentación. Estas
      cookies mantienen el correcto estado de fuente, deslizador de
      blog/imágenes, elección de color y otros ajustes de la web.
      Caducidad: SessionTipo: HTML

 * Preferencias 0
   
   Las cookies de preferencias permiten a la página web recordar información que
   cambia la forma en que la página se comporta o el aspecto que tiene, como su
   idioma preferido o la región en la que usted se encuentra.
   
   Nosotros no usamos cookies de este tipo.

 * Estadística 5
   
   Las cookies estadísticas ayudan a los propietarios de páginas web a
   comprender cómo interactúan los visitantes con las páginas web reuniendo y
   proporcionando información de forma anónima.
    * Microsoft
      5
      Más información sobre este proveedor
      _clckRecoge datos relacionadas con la navegación y el comportamiento del
      usuario - Esto se usa para recopilar informes estadísticos y mapas
      térmicos para el propietario de la web.
      Caducidad: 1 añoTipo: HTTP
      _clskRegistra datos estadísticos del comportamiento del visitante en la
      web. Esto se utiliza para análisis internos por el operador de la web.
      Caducidad: 1 díaTipo: HTTP
      c.gifRecoge datos relacionadas con la navegación y el comportamiento del
      usuario - Esto se usa para recopilar informes estadísticos y mapas
      térmicos para el propietario de la web.
      Caducidad: SessionTipo: Pixel
      _cltkRegistra datos estadísticos del comportamiento del visitante en la
      web. Esto se utiliza para análisis internos por el operador de la web.
      Caducidad: SessionTipo: HTML
      CLIDPendiente
      Caducidad: 1 añoTipo: HTTP

 * Marketing 14
   
   Las cookies de marketing se utilizan para rastrear a los visitantes en las
   páginas web. La intención es mostrar anuncios relevantes y atractivos para el
   usuario individual, y por lo tanto, más valiosos para los editores y terceros
   anunciantes.
    * Google
      7
      Más información sobre este proveedor
      _gaSe utiliza para enviar datos a Google Analytics sobre el dispositivo
      del visitante y su comportamiento. Rastrea al visitante a través de
      dispositivos y canales de marketing.
      Caducidad: 2 añosTipo: HTTP
      _ga_#Se utiliza para enviar datos a Google Analytics sobre el dispositivo
      del visitante y su comportamiento. Rastrea al visitante a través de
      dispositivos y canales de marketing.
      Caducidad: 2 añosTipo: HTTP
      _gcl_auUtilizada por Google AdSense para experimentar con la eficiencia
      publicitaria a través de las webs usando sus servicios.
      Caducidad: 3 mesesTipo: HTTP
      IDEPendiente
      Caducidad: 1 añoTipo: HTTP
      pagead/landing [x2]Recoge información del comportamiento del usuario en
      diferentes webs para mostrar publicidad más relevante - También le permite
      a la web limitar el número de veces que el usuario está expuesto a un
      mismo anuncio.
      Caducidad: SessionTipo: Pixel
      pagead/1p-user-list/#Pendiente
      Caducidad: SessionTipo: Pixel
    * Microsoft
      7
      Más información sobre este proveedor
      MR [x2]Pendiente
      Caducidad: 7 díasTipo: HTTP
      MUID [x2]Pendiente
      Caducidad: 1 añoTipo: HTTP
      SRM_BPendiente
      Caducidad: 1 añoTipo: HTTP
      ANONCHKPendiente
      Caducidad: 1 díaTipo: HTTP
      SMPendiente
      Caducidad: SessionTipo: HTTP

 * No clasificados 0
   Las cookies no clasificadas son cookies para las que todavía estamos en
   proceso de clasificar, junto con los proveedores de cookies individuales.
   
   Nosotros no usamos cookies de este tipo.

Consentimiento entre dominios[#BULK_CONSENT_DOMAINS_COUNT#]
[#BULK_CONSENT_TITLE#]
Lista de dominios a los que se aplica tu consentimiento:
[#BULK_CONSENT_DOMAINS#]
Declaración de cookies actualizada por última vez el 18/4/24 por Cookiebot



[#IABV2_TITLE#]

[#IABV2_BODY_INTRO#]
[#IABV2_BODY_LEGITIMATE_INTEREST_INTRO#]
[#IABV2_BODY_PREFERENCE_INTRO#]
[#IABV2_LABEL_PURPOSES#]
[#IABV2_BODY_PURPOSES_INTRO#]
[#IABV2_BODY_PURPOSES#]
[#IABV2_LABEL_FEATURES#]
[#IABV2_BODY_FEATURES_INTRO#]
[#IABV2_BODY_FEATURES#]
[#IABV2_LABEL_PARTNERS#]
[#IABV2_BODY_PARTNERS_INTRO#]
[#IABV2_BODY_PARTNERS#]


Las cookies son pequeños archivos de texto que las páginas web pueden utilizar
para hacer más eficiente la experiencia del usuario.

La ley afirma que podemos almacenar cookies en su dispositivo si son
estrictamente necesarias para el funcionamiento de esta página. Para todos los
demás tipos de cookies necesitamos su permiso.

Esta página utiliza tipos diferentes de cookies. Algunas cookies son colocadas
por servicios de terceros que aparecen en nuestras páginas.

En cualquier momento puede cambiar o retirar su consentimiento desde la
Declaración de cookies en nuestro sitio web.

Obtenga más información sobre quiénes somos, cómo puede contactarnos y cómo
procesamos los datos personales en nuestra Política de privacidad.

Al contactarnos respecto a su consentimiento, por favor, indique el ID y la
fecha de su consentimiento.


No vender ni compartir mi información personal
Denegar Permitir la selección Personalizar

Permitir todas
Powered by Cookiebot by Usercentrics
Ir al contenido
 * Simulador de ahorro
 * Sobre nosotros
 * FAQ
 * Blog

Menú
 * Simulador de ahorro
 * Sobre nosotros
 * FAQ
 * Blog

Contacto


CAMBIA TU HIPOTECA Y EMPIEZA A AHORRAR

Calcula rápida y fácilmente cuánto vas a dejar de pagar gracias a nuestro
simulador gratuito.

Simulador de ahorro

Ahorro sin Bytateca. Primer mes0€1 año0€3 años0€5 años0€

--------------------------------------------------------------------------------

Ahorro Total0 €

Ahorro con Bytateca. Primer mes354,36 €1 año4.222,33 €3 años12.450,23 €5
años20.340,38 €

--------------------------------------------------------------------------------

Ahorro Total70.381,44 €

*Ejemplo de ahorro máximo para una hipoteca con un importe pendiente de
145.000€, y 288 meses restantes (24 años) y una cuota mensual de 900€.


DESCUBRE CUÁNTO PODRÍAS AHORRAR EN TU HIPOTECA

Importe por amortizar

250000 €

¿Cuántos meses te quedan?

240

Cuota mensual que pagas actualmente

1500 €

NOTA: Si incluyes datos no reales, no esperes resultados reales
Tasa interés:
Tasa óptima
Cuota
Cuota Óptima
Total Intereses JS
Total Intereses JS

Cambiando de hipoteca puedes ahorrarte hasta:

Periodo
Ahorro
Primer mes
Primer mes óptimo
Primer mes
Ahorro primer mes JS
1 año
1 año óptimo
1 año
Ahorro primer año JS
3 años
3 años óptimo
3 años
Ahorro 3 años JS
5 años
5 años óptimo
5 años
Ahorro 5 años JS





He leído y acepto la Política de Privacidad
QUIERO AHORRAR EN MI HIPOTECA
Información básica sobre protección de datos

Bytateca.com te informa que los datos de carácter personal que nos proporciones
rellenando el presente formulario serán tratados por Ambau Servicios Externos
S.L. como responsable de esta web.

Finalidad de la recogida y tratamiento de los datos personales: Enviar la
información que el usuario requiera a través de la web.

Derechos: Podrás ejercer tus derechos de acceso, rectificación, limitación y
suprimir los datos en info@bytateca.com así como el derecho a presentar una
reclamación ante una autoridad de control.

El hecho de que no introduzcas los datos de carácter personal que aparecen en el
formulario como obligatorios podrá tener como consecuencia que no podamos
atender tu solicitud.

Información adicional: Puedes consultar la información adicional y detallada
sobre Protección de Datos en nuestra página web: bytateca.com, así como
consultar nuestra política de privacidad.


ES ASÍ DE FÁCIL. TE CONTAMOS CÓMO MEJORAR TU HIPOTECA.

1. Recibimos tus datos y los estudiamos.

2. Hablamos con los bancos y te enviamos nuestra mejor propuesta con el ahorro y
los gastos del cambio.

3. Hacemos toda la gestión con el banco.

4. Sólo vas el día de la firma de la nueva hipoteca.

Sólo cobramos si ahorras en tu hipoteca y la firmas.
Simulador de ahorro

NºD932 en el registro de intermediarios de crédito inmobiliario

 * info@bytateca.com
 * +34 647 05 50 90
 * C/Alcalde Felipe Uhagon, 9. 2B. 48010 Bilbao


© Bytateca 2024
 * Aviso legal
 * Política de privacidad
 * Política de cookies