diff --git a/inventory_provider/__init__.py b/inventory_provider/__init__.py
index 60d148c80c0a3b1948d058a743d6b12fa4755ef5..3da1b74381335e77540e1bc527d6db29f21ff532 100644
--- a/inventory_provider/__init__.py
+++ b/inventory_provider/__init__.py
@@ -52,8 +52,11 @@ def create_app():
 
     # OTRS routes
 
-    from inventory_provider.routes import otrs_jobs
-    app.register_blueprint(otrs_jobs.routes, url_prefix='/otrs')
+    from inventory_provider.routes import ims_otrs
+    app.register_blueprint(ims_otrs.routes, url_prefix='/otrs')
+
+    # from inventory_provider.routes import otrs_jobs
+    # app.register_blueprint(otrs_jobs.routes, url_prefix='/otrs')
 
     # end of OTRS routes
 
diff --git a/inventory_provider/routes/ims_otrs.py b/inventory_provider/routes/ims_otrs.py
new file mode 100644
index 0000000000000000000000000000000000000000..7c7c21f58562bd1b94fcb09d9209bb1b02ff437e
--- /dev/null
+++ b/inventory_provider/routes/ims_otrs.py
@@ -0,0 +1,68 @@
+import csv
+import html
+from io import StringIO
+
+import requests
+from flask import Blueprint, request, Response, current_app
+
+from inventory_provider.db import ims_data
+from inventory_provider.db.ims import IMS
+from inventory_provider.routes import common
+from inventory_provider.tasks.ims_worker import OTRSFiles, export_data_for_otrs
+
+routes = Blueprint("otrs", __name__)
+
+
+@routes.after_request
+def after_request(resp):
+    return common.after_request(resp)
+
+
+def get_otrs_data(fn):
+    ims_config = current_app.config['INVENTORY_PROVIDER_CONFIG']["ims"]
+    ds = IMS(
+        ims_config['api'],
+        ims_config['username'],
+        ims_config['password'])
+
+    with StringIO() as sio:
+        writer = csv.writer(sio, delimiter='^')
+        writer.writerows(fn(ds))
+        data = sio.getvalue()
+    return Response(
+        response=data,
+        status=requests.codes.ok,
+        mimetype="text/html")
+
+
+@routes.route('customer-companies')
+def get_customer_companies_data():
+    return get_otrs_data(ims_data.otrs_get_customer_company_rows)
+
+
+@routes.route('customer-users')
+def get_customer_users_data():
+    return get_otrs_data(ims_data.otrs_get_customer_users_rows)
+
+
+@routes.route('export')
+def send_exports():
+    files_value = request.args.get('files', None)
+    if files_value:
+        try:
+            files_value = int(files_value)
+        except ValueError:
+            return Response(
+                response=html.escape('<files> should be an Integer'),
+                status=requests.codes.bad_request,
+                mimetype="text/html")
+        if files_value < 0 or files_value > sum(OTRSFiles):
+            return Response(
+                response=html.escape(f'Bad value for <files> {files_value}'),
+                status=requests.codes.bad_request,
+                mimetype="text/html")
+    task = export_data_for_otrs.delay(files_value)
+    return Response(
+        response=task.id,
+        status=requests.codes.ok,
+        mimetype="text/html")
\ No newline at end of file