First, note that "at midnight" and "before 23:59:59" are mutually exclusive. Midnight is at 00:00:00, just after 23:59:59!
I would say that the first two instructions would be correct, i.e. "once per day at midnight" and "daily at midnight" are equally clear and largely unambiguous. If we want to be clear that the event happens at precisely midnight without variation, we could put "precisely midnight" or "exactly midnight". If the event happens at midnight, plus or minus, we could put "about midnight".
"Once per night" or "nightly" would imply that the process happens at some ambiguous point during the night. This could be 8 pm or 4 am or midnight - we simply can't tell. We also can't tell if the event happens at the same time each night; the time could vary and the description here could still be apt.
If the event happens each night at the same time but not specifically at midnight, we can say exactly that: "Once per night at the same time".
Which style to use depends on your level of pedantry and your need to be precise. If this is some sort of technical or academic writing, accuracy is likely more important than the risk of pedantics.