La historia se centra en un hombre de negocios, que 20 años después de haber asesinado a su socio, recibe una visita inesperada que pretende cobrar esa deuda.
Noche de San Juan de 1980: Miguel Gironza (Pepe Sancho) acciona un detonador a distancia y provoca la explosión del coche de su socio y amigo Arístegui. Dos extraños ancianos, Remedios y Nemesio, (Pilar Bardem y Saturnino) han sido testigos del asesinato. Al día siguiente, acompañados de una niña, aparecen en el entierro de Aristegui: comunican a un sorprendido Gironza que a partir de ese día verá cumplidos todos sus sueños. ¿A cambio de qué? Lo sabrá cuando vea un gato negro con la luna llena en la frente.
Veinte años después. Día anterior a la festividad de San Juan: Serafín (Antonio Hortelano), un mensajero al que nada parece sonreír en la vida, con problemas respiratorios y de corazón, tiene un accidente con su vespino. En medio del caos, descubre una cesta en cuyo interior hay un gatito negro con una mancha blanca en la frente. En la cestita viene una dirección, que resulta se la de la casa Remedios y Nemesio.
A partir de su encuentro con el gato y de la entrega en casa de Remedios, la vida parece cambiar para Serafín: todo aquello que desea se va cumpliendo. Incluso una hermosa mujer, María (Manuel Arcury), se ha fijado en él y le ha encargado la entrega urgente de una carta en la mansión de Don Miguel Gironza. Esa carta desencadena toda la acción. El mensajero Serafín, por azar o por brujería, se convierte en el elemento detonante que necesitan Remedios y Nemesio para cobrar la antigua deuda con Gironza.
La película vuelve atrás en la historia para, a partir de los puntos de vista de las personas relacionadas con lo acontecido ese día, irnos desvelando la trama.