Calcular fin de prueba gratis y fecha de recordatorio
Una prueba gratuita se inicia con facilidad, pero su vencimiento puede pasar inadvertido.
Ejecutar — gratis
Esta calculadora convierte la fecha de inicio, la duración en días y la antelación deseada en dos fechas claras: el fin de la prueba y el día del recordatorio. Trabaja con fechas civiles, no con horas locales, por lo que ofrece un resultado estable para planificación personal, compras, seguimiento de suscripciones y procesos de atención al cliente.
Introduzca los tres datos que definen el calendario
Indique primero el día en que comienza la prueba gratuita con el formato inequívoco YYYY-MM-DD. Después, escriba su duración como un número entero positivo de días y elija cuántos días antes del final desea recibir el aviso. Una antelación de cero sitúa el recordatorio en la propia fecha de finalización; una antelación de tres lo sitúa tres días naturales antes. El final se calcula sumando la duración a la fecha inicial. Por ejemplo, una prueba que empieza el 1 de julio y dura catorce días termina el 15 de julio. Esta convención mide el tiempo transcurrido entre ambas fechas sin depender de una hora, una zona horaria ni el horario de verano. Si la antelación supera la duración, el recordatorio quedará antes del comienzo; es un resultado válido cuando una revisión debe realizarse por anticipado. Use siempre una fecha gregoriana válida y cantidades enteras.
Comprenda el tratamiento de los límites del calendario
El cálculo recorre meses reales del calendario gregoriano y no presupone que todos tengan la misma duración. Gestiona correctamente el paso de enero a febrero, los cambios de año, los meses de treinta días y el 29 de febrero. En general, un año divisible entre cuatro es bisiesto, salvo los años seculares, que solo lo son si también son divisibles entre cuatrocientos. Esto resulta importante cuando una prueba atraviesa febrero o cuando el aviso tiene mucha antelación. La operación no consulta la fecha actual, no usa servicios de red, valores aleatorios, zonas horarias locales ni el objeto Date de JavaScript. Por ello, la misma entrada produce la misma salida tanto en la API como en el navegador. Las fechas se devuelven en formato YYYY-MM-DD, fácil de ordenar y compatible con calendarios, hojas de cálculo, bases de datos y automatizaciones, sin imponer una medianoche o un huso horario que los datos no especifican.
Incorpore el resultado a un proceso de avisos fiable
Guarde la fecha final en el registro de la suscripción y utilice la fecha de recordatorio para activar la tarea que deba completarse antes. Puede tratarse de evaluar el producto, exportar datos, solicitar presupuesto, cancelar una renovación no deseada o resolver dudas con el proveedor. Si automatiza el proceso, almacene las dos fechas devueltas por la API en vez de recalcularlas por separado en varios sistemas; así evitará diferencias de un día entre el CRM, el control de facturación y el calendario. Cada petición a la API cuesta $0.002, mientras que la versión del navegador permite hacer un cálculo individual. Interprete el resultado como una fecha de planificación, no como una afirmación sobre la hora exacta de cobro. El proveedor puede aplicar una hora concreta, considerar inclusivo el último día o establecer condiciones particulares. Si hay dinero o acceso en juego, contraste la fecha con las condiciones y programe el aviso con margen suficiente.
Qué puede hacer con ella
Evitar una renovación no deseada
Programe una revisión varios días antes del vencimiento para disponer de tiempo para cancelar o aprobar la compra.
Coordinar la evaluación de un programa
Comunique al equipo una fecha final firme y convoque la decisión antes de que caduque el acceso.
Seguir hitos de pruebas de clientes
Cree fechas coherentes de cierre y seguimiento en el CRM sin depender de la zona horaria del servidor.
Preguntas frecuentes
¿Cómo se calcula la fecha final?
La duración se suma como días naturales transcurridos desde el inicio. Si comienza el 1 de julio y dura catorce días, termina el 15 de julio.
¿Puede ser cero la antelación?
Sí. El valor cero coloca el recordatorio en la misma fecha natural en que finaliza la prueba.
¿Qué ocurre si la antelación supera la duración?
El recordatorio queda antes del inicio. Se admite porque una revisión anticipada puede realizarse antes de activar el acceso.
¿Se contemplan los años bisiestos?
Sí. Se aplican las reglas gregorianas, incluidas las excepciones de los años seculares y de cada cuatrocientos años.
¿Cuánto cuesta un cálculo por API?
Cada petición a la API cuesta $0.002. También puede utilizar la calculadora directamente en el navegador.
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/final3/subscription-free-trial-end-date \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"start_date":"2026-07-25","trial_length_days":14,"reminder_lead_days":3}'const res = await fetch("https://api.kit.forhosting.com/final3/subscription-free-trial-end-date", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"start_date": "2026-07-25",
"trial_length_days": 14,
"reminder_lead_days": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/final3/subscription-free-trial-end-date",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"start_date": "2026-07-25",
"trial_length_days": 14,
"reminder_lead_days": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/final3/subscription-free-trial-end-date", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"start_date":"2026-07-25","trial_length_days":14,"reminder_lead_days":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"start_date":"2026-07-25","trial_length_days":14,"reminder_lead_days":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/final3/subscription-free-trial-end-date", 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
{
"start_date": "2026-07-25",
"trial_length_days": 14,
"reminder_lead_days": 3
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "final3.subscription_free_trial_end_date",
"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. |