"This was caused by the processing date for a Bacs file being incorrect"
I would put money on the bad date theory. But why the software would accept a date a year in the past is just poor programming - always check your inputs.
OTOH, using a sliding 100 year date range was a Y2K workaround. But the idea was that you would put a permanent fix into the system after you finished your New Year's pub celebration.