diff --git a/mcc-flow/merge_records.py b/mcc-flow/merge_records.py
index 353d2f4f091e1b0eacb1152d59f3e480dbc3b77e..0e5e106876fc231e14207dad2c9e3425996eeb1e 100644
--- a/mcc-flow/merge_records.py
+++ b/mcc-flow/merge_records.py
@@ -162,7 +162,11 @@ def read_packet(file):
     date_ = str(date_)
     time_ = f'{time_:06}'
     flow = int.from_bytes(flow, 'big')
-    date_ = datetime.fromisoformat(f'{date_[:4]}-{date_[4:6]}-{date_[6:]}T{time_[:2]}:{time_[2:4]}:{time_[4:]}')
+    try:
+        date_ = datetime.fromisoformat(f'{date_[:4]}-{date_[4:6]}-{date_[6:]}T{time_[:2]}:{time_[2:4]}:{time_[4:]}')
+    except ValueError as e:
+        print(f'\033[91mERROR\033[0m Corrupted header in file \'{file.name}\'. Process aborted.')
+        exit(12)
     spo2 /= 10.
     flow = PacketData(np.array([[flow]]), 'flow', 'unit', HEADER_FS)
     hr = PacketData(np.array([[hr]]), 'hr', 'unit', HEADER_FS)