diff --git a/.github/workflows/dispatch_matrix_ce.yml b/.github/workflows/dispatch_matrix_ce.yml
index f4f5564fe7..415f4592f4 100644
--- a/.github/workflows/dispatch_matrix_ce.yml
+++ b/.github/workflows/dispatch_matrix_ce.yml
@@ -9,6 +9,7 @@ on:
         options:
           - 7.0.x
           - 7.1.x
+          - 7.2.x
           - 8.0.x
           - smarty 7.0.x
           - use custom testplan
@@ -66,27 +67,14 @@ jobs:
               exit 1
               ;;
           esac
+          # shellcheck disable=SC2088
           case '${{ inputs.scenario}}' in
-            "7.0.x")
-              # shellcheck disable=SC2088 # Tilde expansion happens in the workflow and not by bash
-              TESTPLAN="~/defaults/7.0.x.yml,${LIMIT}~/shop_ce_70x.yml"
-              ;;
-            "7.1.x")
-              # shellcheck disable=SC2088 # Tilde expansion happens in the workflow and not by bash
-              TESTPLAN="~/defaults/7.1.x.yml,${LIMIT}~/shop_ce.yml"
-              ;;
-            "8.0.x")
-              # shellcheck disable=SC2088 # Tilde expansion happens in the workflow and not by bash
-              TESTPLAN="${LIMIT}~/shop_ce.yml"
-              ;;
-            "smarty 7.0.x")
-              # shellcheck disable=SC2088 # Tilde expansion happens in the workflow and not by bash
-              TESTPLAN="~/defaults/7.0.x.yml,${LIMIT}~/smarty_7.0.x.yml"
-              ;;
-            "use custom testplan")
-              # shellcheck disable=SC2088 # Tilde expansion happens in the workflow and not by bash
-              TESTPLAN="${{ inputs.custom_testplan }}"
-              ;;
+            "7.0.x") TESTPLAN="~/defaults/7.0.x.yml,${LIMIT}~/shop_ce_70x.yml" ;;
+            "7.1.x") TESTPLAN="~/defaults/7.1.x.yml,${LIMIT}~/shop_ce.yml" ;;
+            "7.2.x") TESTPLAN="~/defaults/7.2.x.yml,${LIMIT}~/shop_ce.yml" ;;
+            "8.0.x") TESTPLAN="${LIMIT}~/shop_ce.yml" ;;
+            "smarty 7.0.x") TESTPLAN="~/defaults/7.0.x.yml,${LIMIT}~/smarty_7.0.x.yml" ;;
+            "use custom testplan") TESTPLAN="${{ inputs.custom_testplan }}" ;;
             *)
               echo "Illegal choice, fix the workflow"
               exit 1
diff --git a/.github/workflows/nightly_matrix_full_ce_70x.yml b/.github/workflows/nightly_matrix_full_ce_70x.yml
deleted file mode 100644
index c8bd82bd88..0000000000
--- a/.github/workflows/nightly_matrix_full_ce_70x.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-name: Scheduled nightly full matrix run 7.0.x
-# Matrix workflow using re-usable github actions
-
-on:
-  schedule:
-    - cron: '17 23 * * 1-5'
-
-jobs:
-  oxideshop_ce_70x_nightly:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/defaults/7.0.x.yml,~/defaults/scheduled.yml,~/shop_ce_70x.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/nightly_matrix_full_ce_71x.yml b/.github/workflows/nightly_matrix_full_ce_71x.yml
deleted file mode 100644
index e3c8d7b2b5..0000000000
--- a/.github/workflows/nightly_matrix_full_ce_71x.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-name: Scheduled nightly full matrix run 7.1.x
-# Matrix workflow using re-usable github actions
-
-on:
-  schedule:
-    - cron: '17 1 * * 1-5'
-
-jobs:
-  oxideshop_ce_71x_nightly:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/defaults/7.1.x.yml,~/defaults/scheduled.yml,~/shop_ce.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/nightly_matrix_full_ce_80x.yml b/.github/workflows/nightly_matrix_full_ce_80x.yml
deleted file mode 100644
index c9b5480b75..0000000000
--- a/.github/workflows/nightly_matrix_full_ce_80x.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-name: Scheduled nightly full matrix run 8.0.x
-# Matrix workflow using re-usable github actions
-
-on:
-  schedule:
-    - cron: '17 3 * * 1-5'
-
-jobs:
-  oxideshop_ce_80x_nightly:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/shop_ce.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/nightly_smarty_70x.yml b/.github/workflows/nightly_smarty_70x.yml
deleted file mode 100644
index dc0602be81..0000000000
--- a/.github/workflows/nightly_smarty_70x.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-name: Scheduled nightly full matrix run 7.0.x with Smarty
-# Matrix workflow using re-usable github actions
-
-on:
-  schedule:
-    - cron: '37 0 * * 1-5'
-
-jobs:
-  oxideshop_ce_smarty_70x_nightly:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/defaults/7.0.x.yml,~/defaults/scheduled.yml,~/smarty_7.0.x.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/pull_matrix_full_ce_70x.yml b/.github/workflows/pull_matrix_full_ce_70x.yml
deleted file mode 100644
index 34f925dd94..0000000000
--- a/.github/workflows/pull_matrix_full_ce_70x.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-name: Auto trigger on PR to 7.0.x*
-# Matrix workflow using re-usable github actions
-
-on:
-  pull_request:
-    branches:
-      - 'b-7.0.x**'
-
-jobs:
-  oxideshop_ce_pull_70x:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/defaults/7.0.x.yml,~/shop_ce_70x.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/pull_matrix_full_ce_71x.yml b/.github/workflows/pull_matrix_full_ce_71x.yml
deleted file mode 100644
index d155f1b4db..0000000000
--- a/.github/workflows/pull_matrix_full_ce_71x.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-name: Auto trigger on PR to 7.1.x*
-# Matrix workflow using re-usable github actions
-
-on:
-  pull_request:
-    branches:
-      - 'b-7.1.x**'
-
-jobs:
-  oxideshop_ce_pull_71x:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/defaults/7.1.x.yml,~/shop_ce.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/pull_matrix_full_ce_80x.yml b/.github/workflows/pull_matrix_full_ce_80x.yml
deleted file mode 100644
index 4cb5906f8b..0000000000
--- a/.github/workflows/pull_matrix_full_ce_80x.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-name: Auto trigger on PR to 8.0.x*
-# Matrix workflow using re-usable github actions
-
-on:
-  pull_request:
-    branches:
-      - 'b-8.0.x**'
-
-jobs:
-  oxideshop_ce_pull:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/shop_ce.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/push_matrix_full_ce_80x.yml b/.github/workflows/push_matrix_full_ce_80x.yml
deleted file mode 100644
index 82879eaf62..0000000000
--- a/.github/workflows/push_matrix_full_ce_80x.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-name: Auto trigger on Push to 8.0.x*
-# Matrix workflow using re-usable github actions
-
-on:
-  push:
-    branches:
-      - 'b-8.0.x**'
-
-jobs:
-  oxideshop_ce_push_b80x:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/shop_ce.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/push_matrix_slim_ce_70x.yml b/.github/workflows/push_matrix_slim_ce_70x.yml
deleted file mode 100644
index 9acc1118c0..0000000000
--- a/.github/workflows/push_matrix_slim_ce_70x.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-name: Auto trigger on Push to 7.0.x*
-# Matrix workflow using re-usable github actions
-
-on:
-  push:
-    branches:
-      - 'b-7.0.x**'
-
-jobs:
-  oxideshop_ce_push_b70x:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/defaults/7.0.x.yml,~/defaults/php8.1_mysql5.7_only.yml,~/slim_matrix_ce_70x.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/push_matrix_slim_ce_71x.yml b/.github/workflows/push_matrix_slim_ce_71x.yml
deleted file mode 100644
index a0be3a05f3..0000000000
--- a/.github/workflows/push_matrix_slim_ce_71x.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-name: Auto trigger on Push to 7.1.x*
-# Matrix workflow using re-usable github actions
-
-on:
-  push:
-    branches:
-      - 'b-7.1.x**'
-
-jobs:
-  oxideshop_ce_push_b71x:
-    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
-    with:
-      testplan: '~/defaults/7.1.x.yml,~/defaults/php8.2_mysql5.7_only.yml,~/slim_matrix_ce.yml'
-      runs_on: '"ubuntu-latest"'
-      defaults: 'v4'
-      plan_folder: '.github/oxid-esales'
-    secrets:
-      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
-      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
-      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
-      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
-      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
-      enterprise_github_token: ${{ secrets.enterprise_github_token }}
-      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml
new file mode 100644
index 0000000000..10d293b881
--- /dev/null
+++ b/.github/workflows/scheduled.yml
@@ -0,0 +1,63 @@
+name: Nightly runs
+# Matrix workflow using re-usable github actions
+
+on:
+  schedule:
+    - cron: '17 23 * * 1-5'
+
+jobs:
+  oxideshop_ce_71x_nightly:
+    if: always()
+    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
+    with:
+      testplan: '~/defaults/7.1.x.yml,~/defaults/scheduled.yml,~/shop_ce.yml'
+      runs_on: '"ubuntu-latest"'
+      defaults: 'v4'
+      plan_folder: '.github/oxid-esales'
+    secrets:
+      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
+      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
+      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
+      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
+      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
+      enterprise_github_token: ${{ secrets.enterprise_github_token }}
+      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
+
+  oxideshop_ce_72x_nightly:
+    needs: oxideshop_ce_71x_nightly
+    if: always()
+    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
+    with:
+      testplan: '~/defaults/7.2.x.yml,~/defaults/scheduled.yml,~/shop_ce.yml'
+      runs_on: '"ubuntu-latest"'
+      defaults: 'v4'
+      plan_folder: '.github/oxid-esales'
+    secrets:
+      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
+      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
+      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
+      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
+      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
+      enterprise_github_token: ${{ secrets.enterprise_github_token }}
+      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
+
+  oxideshop_ce_80x_nightly:
+    needs: oxideshop_ce_72x_nightly
+    if: always()
+    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
+    with:
+      testplan: '~/defaults/scheduled.yml,~/shop_ce.yml'
+      runs_on: '"ubuntu-latest"'
+      defaults: 'v4'
+      plan_folder: '.github/oxid-esales'
+    secrets:
+      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
+      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
+      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
+      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
+      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
+      enterprise_github_token: ${{ secrets.enterprise_github_token }}
+      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/trigger.yml b/.github/workflows/trigger.yml
new file mode 100644
index 0000000000..553496230d
--- /dev/null
+++ b/.github/workflows/trigger.yml
@@ -0,0 +1,59 @@
+name: Auto trigger on push or pull requests
+# Matrix workflow using re-usable github actions
+
+on:
+  pull_request: {}
+  push: {}
+
+jobs:
+  build_testplan:
+    runs-on: 'ubuntu-latest'
+    outputs:
+      testplan: '${{ steps.build.outputs.testplan }}'
+    steps:
+      - name: 'Build testplan'
+        id: build
+        run: |
+          # Build testplan
+          if [ '${{  github.event_name }}' == 'pull_request' ]; then
+            REF_TO_CHECK='refs/heads/${{ github.base_ref }}'
+            LIMIT70=""
+            LIMIT=""
+          else
+            REF_TO_CHECK='${{ github.ref }}'
+            # shellcheck disable=SC2088
+            LIMIT70="~/defaults/php8.1_mysql5.7_only.yml,"
+            # shellcheck disable=SC2088
+            LIMIT="~/defaults/php8.2_mysql5.7_only.yml,"
+          fi
+          # shellcheck disable=SC2088
+          case "${REF_TO_CHECK}" in
+            refs/heads/b-7.0.x*) TESTPLAN="~/defaults/7.0.x.yml,${LIMIT70}~/shop_ce_70x.yml" ;;
+            refs/heads/b-7.1.x*) TESTPLAN="~/defaults/7.1.x.yml,${LIMIT}~/shop_ce.yml" ;;
+            refs/heads/b-7.2.x*) TESTPLAN="~/defaults/7.2.x.yml,${LIMIT}~/shop_ce.yml" ;;
+            refs/heads/b-8.0.x*) TESTPLAN="${LIMIT}~/shop_ce.yml" ;;
+            *)
+              echo "Can't match ${REF_TO_CHECK} to a version, can't determine test plan."
+              echo "Branch names should start with b-<major>.<minor>.x"
+              exit 1
+              ;;
+          esac
+          echo "testplan=${TESTPLAN}" | tee -a "${GITHUB_OUTPUT}"
+
+  shop_ce:
+    needs: build_testplan
+    uses: oxid-eSales/github-actions/.github/workflows/call-universal_test_workflow.yml@v4
+    with:
+      testplan: ${{ needs.build_testplan.outputs.testplan }}
+      runs_on: '"ubuntu-latest"'
+      defaults: 'v4'
+      plan_folder: '.github/oxid-esales'
+    secrets:
+      DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
+      DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
+      CACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }}
+      CACHE_ACCESS_KEY: ${{ secrets.CACHE_ACCESS_KEY }}
+      CACHE_SECRET_KEY: ${{ secrets.CACHE_SECRET_KEY }}
+      enterprise_github_token: ${{ secrets.enterprise_github_token }}
+      SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}