Flora is een geest die al meer dan 2000 jaar gevangen zit in een antiek sieradendoosje vanwege een klein misverstandje met een tovenaar in het jaar 77 v.Chr. Nadat ze duizenden jaren lang wensen heeft moeten vervullen van hebberige mannen die alleen maar rijkdom en knappe vrouwen willen, wordt Flora per ongeluk opgeroepen door Bernard Bottle, die de grip op zijn leven dreigt te verliezen. Bernard heeft zich zo op zijn werk gestort dat hij de band met zijn vrouw Julie en zijn dochtertje Eve heeft verwaarloosd. Als Bernard dan twaalf dagen voor Kerstmis vanwege zijn werk de verjaardag van Eve mist, besluit Julie dat het tijd is voor een proefscheiding. En dan wordt Bernard ook nog ontslagen door zijn tirannieke baas.