diff --git a/ckanext/odsh/controller.py b/ckanext/odsh/controller.py
index 5913c930e1889ee836e72ec8faac9499309d8f76..119d758250fce6182f9991efe6a7280b3a3a0654 100644
--- a/ckanext/odsh/controller.py
+++ b/ckanext/odsh/controller.py
@@ -12,6 +12,7 @@ import logging
 import matomo 
 import ckan.logic as logic
 from ckan.common import c, request, config
+import hashlib
 
 abort = base.abort
 log = logging.getLogger(__name__)
@@ -64,25 +65,6 @@ class OdshPackageController(PackageController):
     pass
 
 class MamotoApiController(ApiController):
-
-    def _post_matomo(self, user, request_obj_type, request_function, request_id):
-    # if config.get('googleanalytics.id'):
-        data_dict = {
-            "siteid": 1,
-            "rec": 1,
-            # "tid": config.get('googleanalytics.id'),
-            # "cid": hashlib.md5(user).hexdigest(),
-            # # customer id should be obfuscated
-            # "t": "event",
-            # "dh": c.environ['HTTP_HOST'],
-            # "dp": c.environ['PATH_INFO'],
-            # "dr": c.environ.get('HTTP_REFERER', ''),
-            # "ec": "CKAN API Request",
-            # "ea": request_obj_type+request_function,
-            # "el": request_id,
-        }
-        # plugin.GoogleAnalyticsPlugin.analytics_queue.put(data_dict)
-
     def action(self, logic_function, ver=None):
         try:
             function = logic.get_action(logic_function)
@@ -95,47 +77,21 @@ class MamotoApiController(ApiController):
                     id = request_data['q']
                 if 'query' in request_data:
                     id = request_data['query']
-                # self._post_matomo(c.user, logic_function, '', id)
-                userid=hashlib.md5(user).hexdigest()
+                userid=None
+                if c.user:
+                    userid=hashlib.md5(c.user).hexdigest()[:16]
                 matomo.create_matomo_request(userid)
+            else:
+                matomo.create_matomo_request()
+
         except Exception, e:
-            log.debug(e)
-            pass
+            log.error(e)
         
-
         return ApiController.action(self, logic_function, ver)
 
-
-    # def list(self, ver=None, register=None, subregister=None, id=None):
-
-    # def show(self, ver=None, register=None, subregister=None,
-            #  id=None, id2=None):
-        # self._post_analytics(c.user,
-        #                      register +
-        #                      ("_"+str(subregister) if subregister else ""),
-        #                      "show",
-        #                      id)
-        # return ApiController.show(self, ver, register, subregister, id, id2)
-
-    # def create(self, ver=None, register=None, subregister=None,
-    #            id=None, id2=None):
-
-
-    # def update(self, ver=None, register=None, subregister=None,
-    #            id=None, id2=None):
-
-    # def delete(self, ver=None, register=None, subregister=None,
-    #            id=None, id2=None):
-
-    # def search(self, ver=None, register=None):
-
-class MatomoFeedController(FeedController):
-    def custom(self):
-        matomo.create_matomo_request()
-        return FeedController.custom(self)
-
 class OdshFeedController(FeedController):
     def custom(self):
+        matomo.create_matomo_request()
         extra_fields=['ext_startdate', 'ext_enddate', 'ext_bbox', 'ext_prev_extent']
         q = request.params.get('q', u'')
         fq = ''
diff --git a/ckanext/odsh/helpers.py b/ckanext/odsh/helpers.py
index 6234d7eeb27383c6f03db5e834d6afe540e5fc90..fc8a830023bd4b132573e65b06f915e54713ab89 100644
--- a/ckanext/odsh/helpers.py
+++ b/ckanext/odsh/helpers.py
@@ -139,6 +139,11 @@ def odsh_upload_known_formats():
     value = toolkit.aslist(value)
     return value
 
+def odsh_tracking_id():
+    return config.get('ckanext.odsh.matomo_id')
+
+def odsh_tracking_url():
+    return config.get('ckanext.odsh.matomo_url')
 
 def odsh_encodeurl(url):
     return urllib.quote(url, safe='')
diff --git a/ckanext/odsh/matomo.py b/ckanext/odsh/matomo.py
index 48ec3c04d9415042a4926c02437deadf9023ac2d..a3fd6fc1ae16564f5ad5eeed7de94e04f5d2c5a3 100644
--- a/ckanext/odsh/matomo.py
+++ b/ckanext/odsh/matomo.py
@@ -2,14 +2,10 @@ from piwikapi.tracking import PiwikTracker
 from piwikapi.tests.request import FakeRequest
 from ckan.common import c, request
 from pylons import config
-
-# def get_request_url_with_params():
-#     if request.GET:
+import logging
+from ckan.plugins.toolkit import enqueue_job
 
 def create_matomo_request(userId=None):
-
-    # print(request.url)
-
     headers = {
         'HTTP_USER_AGENT': request.headers.get('User-Agent'),
         'REMOTE_ADDR': request.headers.get('Host'),
@@ -21,12 +17,8 @@ def create_matomo_request(userId=None):
         'HTTPS': False,
     }
     fakerequest = FakeRequest(headers)
-    piwiktracker = PiwikTracker('1', fakerequest)
-    piwiktracker.set_api_url('http://192.168.178.45/piwik.php')
+    piwiktracker =PiwikTracker(config.get('ckanext.odsh.matomo_id'), fakerequest)
+    piwiktracker.set_api_url(config.get('ckanext.odsh.matomo_url'))
     if userId:
         piwiktracker.set_visitor_id(userId)
-    # piwiktracker.set_ip(headers['REMOTE_ADDR']) # Optional, to override the IP
-    # piwiktracker.set_token_auth(PIWIK_TOKEN_AUTH)  # Optional, to override the IP
-    # print(piwiktracker.do_track_page_view('My Page Title'))
-    # print(c.environ['PATH_INFO'])
-    piwiktracker.do_track_page_view(request.path_qs)
\ No newline at end of file
+    enqueue_job(piwiktracker.do_track_page_view,[request.path_qs], queue='tracking')
diff --git a/ckanext/odsh/plugin.py b/ckanext/odsh/plugin.py
index 0381c327a2605ac066a0658b7bde63bebc9d713d..9b5a7a81e27f6d285341c9bc293677724556fd19 100644
--- a/ckanext/odsh/plugin.py
+++ b/ckanext/odsh/plugin.py
@@ -111,7 +111,9 @@ class OdshPlugin(plugins.SingletonPlugin, DefaultTranslation, DefaultDatasetForm
                 'odsh_extract_error_new': odsh_helpers.odsh_extract_error_new,
                 'odsh_extract_value_from_extras': odsh_helpers.odsh_extract_value_from_extras,
                 'odsh_create_checksum': odsh_helpers.odsh_create_checksum,
-                'presorted_license_options': odsh_helpers.presorted_license_options
+                'presorted_license_options': odsh_helpers.presorted_license_options,
+                'odsh_tracking_id': odsh_helpers.odsh_tracking_id,
+                'odsh_tracking_url': odsh_helpers.odsh_tracking_url
                 }
 
     def after_map(self, map):
@@ -128,7 +130,7 @@ class OdshPlugin(plugins.SingletonPlugin, DefaultTranslation, DefaultDatasetForm
         # /api ver 3 or none with matomo
         GET_POST = dict(method=['GET', 'POST'])
         with SubMapper(map, controller='ckanext.odsh.controller:MamotoApiController', path_prefix='/api{ver:/3|}', ver='/3') as m:
-            m.connect('/action2/{logic_function}', action='action', conditions=GET_POST)
+            m.connect('/action/{logic_function}', action='action', conditions=GET_POST)
 
         with SubMapper(map, controller='ckanext.odsh.controller:OdshFeedController') as m:
             m.connect('/feeds/custom.atom', action='custom')
diff --git a/ckanext/odsh/templates/base.html b/ckanext/odsh/templates/base.html
index e7d5bc3853bb5def3f75d03b32aa276bf14a6de2..5962c139dbd823b28c0289e0794ea1e724b245c9 100644
--- a/ckanext/odsh/templates/base.html
+++ b/ckanext/odsh/templates/base.html
@@ -10,8 +10,8 @@
 
 {% block head_extras %}
 {{ super() }}
-{% set matomo_url = 'https://phpefi.schleswig-holstein.de/gsb_analytics/'%}
-{% set matomo_id = 3%}
+{% set matomo_url = h.odsh_tracking_url()%}
+{% set matomo_id = h.odsh_tracking_id()%}
 <!-- Matomo -->
 <script type="text/javascript">
   var _paq = _paq || [];
@@ -19,11 +19,10 @@
   _paq.push(['trackPageView']);
   _paq.push(['enableLinkTracking']);
   (function() {
-    var u="{{matomo_url}}";
-    _paq.push(['setTrackerUrl', u+'piwik.php']);
+    _paq.push(['setTrackerUrl', '{{matomo_url}}']);
     _paq.push(['setSiteId', '{{matomo_id}}']);
     var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
-    g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
+    g.type='text/javascript'; g.async=true; g.defer=true; g.src='{{matomo_url|replace('piwik.php','piwik.js')}}'; s.parentNode.insertBefore(g,s);
   })();
 </script>
 <!-- End Matomo Code -->
diff --git a/ckanext/odsh/templates/page.html b/ckanext/odsh/templates/page.html
index 05e49c0821beea5d43648e25e274ceea68a6f8ad..525e8240c1ac1e427c88b2755a4fba2f736a10ce 100644
--- a/ckanext/odsh/templates/page.html
+++ b/ckanext/odsh/templates/page.html
@@ -3,9 +3,9 @@
 
 {%- block content %}
 {% block maintag %}<div role="main">{% endblock %}
-{% set matomo_url = 'https://phpefi.schleswig-holstein.de/gsb_analytics/'%}
-{% set matomo_id = 3%}
-<noscript><p><img src="{{matomo_url}}/piwik.php?idsite={{matomo_id}}&rec=1" style="border:0;" alt="" /></p></noscript>
+{% set matomo_url = h.odsh_tracking_url()%}
+{% set matomo_id = h.odsh_tracking_id()%}
+<noscript><p><img src="{{matomo_url}}?idsite={{matomo_id}}&rec=1" style="border:0;" alt="" /></p></noscript>
   <div id="content" class="container">
 <div id="testsystem">
       <p>TESTSYSTEM</p>