diff --git a/macro/run/run_unpack_online.C b/macro/run/run_unpack_online.C
index 9147cfe15965511b018261fccfe4f2630c08e7af..f7761d3c04797e98a6ba5381a00aa47f4c0dc047 100644
--- a/macro/run/run_unpack_online.C
+++ b/macro/run/run_unpack_online.C
@@ -118,7 +118,7 @@ void run_unpack_online(std::string publisher = "localhost", Int_t serverHttpPort
 
   // -----   CbmSourceTsArchive   -------------------------------------------
   auto source = new CbmSourceTsArchive(publisher.data());
-  source->SetSourceType(Source_Type::kONLINE);
+  source->SetCbmSourceType(CbmSourceTsArchive::eCbmSourceType::kOnline);
   auto unpack = source->GetRecoUnpack();
   unpack->SetUnpackConfig(trdconfig);
   // ------------------------------------------------------------------------
diff --git a/macro/run/run_unpack_tsa.C b/macro/run/run_unpack_tsa.C
index 45d3e1f2d16cab2b2cad254e1bcdf79a20c3468b..d391221afadba55c325ee4182a3f3d7f10d1014b 100644
--- a/macro/run/run_unpack_tsa.C
+++ b/macro/run/run_unpack_tsa.C
@@ -177,6 +177,7 @@ void run_unpack_tsa(std::string infile = "test.tsa", UInt_t runid = 0, const cha
 
   // -----   CbmSourceTsArchive   -------------------------------------------
   auto source = new CbmSourceTsArchive(infile.data());
+  source->SetCbmSourceType(CbmSourceTsArchive::eCbmSourceType::kOffline);
   auto unpack = source->GetRecoUnpack();
   if (psdconfig) unpack->SetUnpackConfig(psdconfig);
   if (richconfig) unpack->SetUnpackConfig(richconfig);
diff --git a/reco/steer/CbmSourceTsArchive.cxx b/reco/steer/CbmSourceTsArchive.cxx
index 6018c4e166f232f1c89ce46ab0c73c11bec09a0d..90fa59a0f9b516ba0d1dec7f69ad53216d4d9599 100644
--- a/reco/steer/CbmSourceTsArchive.cxx
+++ b/reco/steer/CbmSourceTsArchive.cxx
@@ -47,8 +47,10 @@ void CbmSourceTsArchive::Close()
 Bool_t CbmSourceTsArchive::Init()
 {
 
-  switch (fSourceType) {
-    case Source_Type::kONLINE: {
+  switch (fCbmSourceType) {
+    // Use again when kFILE does not skipp the first TS by default anymore
+    // case Source_Type::kONLINE: {
+    case eCbmSourceType::kOnline: {
       // Create a ";" separated string with all host/port combinations
       // Build a semicolon-separated list of file names for TimesliceMultiInputArchive
       string fileList;
@@ -70,7 +72,9 @@ Bool_t CbmSourceTsArchive::Init()
       }
       break;
     }
-    case Source_Type::kFILE: {
+    // Se above
+    // case Source_Type::kFILE: {
+    case eCbmSourceType::kOffline: {
       // Return error for empty file list and an offline run
       if (fFileNames.empty()) return kFALSE;
 
diff --git a/reco/steer/CbmSourceTsArchive.h b/reco/steer/CbmSourceTsArchive.h
index 8a835eb0663068d0d4e2d2a392b58b8f746d8717..bf1677a5f39a8eba4c95db182fa08c9d64bc6ffc 100644
--- a/reco/steer/CbmSourceTsArchive.h
+++ b/reco/steer/CbmSourceTsArchive.h
@@ -29,6 +29,16 @@
 class CbmSourceTsArchive : public FairSource {
 
 public:
+  /**
+   * @brief Enum for switch of source type
+   * @remark This is a temporary fix as long as in the original FairSource::Source_Type kFILE leads to skipping the first Timeslice
+  */
+  enum class eCbmSourceType : uint16_t
+  {
+    kOnline = 0,  // Use when running with an online source (published data)
+    kOffline      // Use when running with tsa files as source
+  };
+
   /** @brief Constructor
    ** @param fileName  Name of (single) input file.
    **
@@ -60,10 +70,15 @@ public:
 
 
   /** @brief Source type
-   ** @return kFILE
+   ** @return FairSource::Source_Type
    **/
   virtual Source_Type GetSourceType() { return fSourceType; }
 
+  /** @brief Get the Cbm Source type
+   ** @return eCbmSourceType
+   **/
+  eCbmSourceType GetCbmSourceType() { return fCbmSourceType; }
+
   /**
    * @brief Get the Reco Unpack
    * Access the CbmRecoUnpack class to add unpacker configs
@@ -100,6 +115,9 @@ public:
   /** @brief Set the Source Type @param type */
   void SetSourceType(Source_Type type) { fSourceType = type; }
 
+  /** @brief Set the Cbm Source Type @param type @remark temporary fix see enum */
+  void SetCbmSourceType(eCbmSourceType type) { fCbmSourceType = type; }
+
 private:
   /** List of input file names **/
   std::vector<std::string> fFileNames = {};
@@ -107,8 +125,11 @@ private:
   /** @brief Amount of Timeslices buffered before the publisher starts dropping new ones, if the old are not digested yet.*/
   std::uint32_t fHighWaterMark = 1;
 
-  /** @brief type of source that is currently used */
-  Source_Type fSourceType = Source_Type::kFILE;
+  /** @brief type of source that is currently used @remark currently we use kONLINE as default, since, kFILE skipps the first TS probably due to obsolete reasons (to be checked PR072021) */
+  Source_Type fSourceType = Source_Type::kONLINE;
+
+  /** @brief type of source that is currently used in the CBM definition @remark temprorary fix for the issue described in the comments of the enum */
+  eCbmSourceType fCbmSourceType = eCbmSourceType::kOffline;
 
   /** Time-slice source interface **/
   fles::TimesliceSource* fTsSource = nullptr;  //!