diff --git a/bin/controls/DiscountEdit.css b/bin/controls/DiscountEdit.css
index 390bd718cf1c9df6bcda462491eead86344aacef..04e2408bb2a9381244849e1f56bffabca27c6423 100644
--- a/bin/controls/DiscountEdit.css
+++ b/bin/controls/DiscountEdit.css
@@ -18,4 +18,19 @@
 .discount-edit-vat .field-container-item {
     line-height: 30px;
     padding: 0 0.75em;
+}
+
+.quiqqer-discount-entry-edit-buttons {
+    float: left;
+    height: 40px;
+    width: 100%;
+}
+
+.quiqqer-discount-entry-edit-buttons .qui-button-switch {
+    background: #ededed !important;
+    color: black;
+}
+
+.quiqqer-discount-entry-edit-buttons .qui-button-switch:hover {
+    color: #6a6a6a;
 }
\ No newline at end of file
diff --git a/bin/controls/DiscountEdit.html b/bin/controls/DiscountEdit.html
index e5f690e89259a5549228038115afe0c347479684..2f785019f082c9d1259b5328eb121c381ed03726 100644
--- a/bin/controls/DiscountEdit.html
+++ b/bin/controls/DiscountEdit.html
@@ -1,3 +1,7 @@
+<div class="quiqqer-discount-entry-edit-buttons">
+
+</div>
+
 <form>
     <table class="data-table data-table-flexbox">
         <thead>
diff --git a/bin/controls/DiscountEdit.js b/bin/controls/DiscountEdit.js
index bd60e790c061901cdb7273ce6d34a85640b237b7..a019bded3a9d5feab60b8fc19c2a2ec44a7c87c5 100644
--- a/bin/controls/DiscountEdit.js
+++ b/bin/controls/DiscountEdit.js
@@ -11,6 +11,7 @@ define('package/quiqqer/discount/bin/controls/DiscountEdit', [
     'qui/QUI',
     'qui/controls/Control',
     'qui/controls/buttons/Button',
+    'qui/controls/buttons/ButtonSwitch',
     'qui/utils/Form',
     'Locale',
     'Mustache',
@@ -20,7 +21,7 @@ define('package/quiqqer/discount/bin/controls/DiscountEdit', [
     'text!package/quiqqer/discount/bin/controls/DiscountEdit.html',
     'css!package/quiqqer/discount/bin/controls/DiscountEdit.css'
 
-], function (QUI, QUIControl, QUIButton, QUIFormUtils, QUILocale,
+], function (QUI, QUIControl, QUIButton, QUIButtonSwitch, QUIFormUtils, QUILocale,
              Mustache, Discounts, Translation, template) {
     "use strict";
 
@@ -32,7 +33,8 @@ define('package/quiqqer/discount/bin/controls/DiscountEdit', [
         Type   : 'package/quiqqer/discount/bin/controls/DiscountEdit',
 
         Binds: [
-            '$onInject'
+            '$onInject',
+            '$onActiveStatusChange'
         ],
 
         options: {
@@ -42,6 +44,8 @@ define('package/quiqqer/discount/bin/controls/DiscountEdit', [
         initialize: function (options) {
             this.parent(options);
 
+            this.$ActiveSwitch = null;
+
             this.addEvents({
                 onInject: this.$onInject
             });
@@ -114,6 +118,14 @@ define('package/quiqqer/discount/bin/controls/DiscountEdit', [
                 opacity : 0
             });
 
+            this.$ActiveSwitch = new QUIButtonSwitch({
+                status: false,
+                text  : QUILocale.get(lg, 'control.edit.btn.active.status_off'),
+                events: {
+                    onChange: this.$onActiveStatusChange
+                }
+            }).inject(this.$Elm.getElement('.quiqqer-discount-entry-edit-buttons'));
+
             return this.$Elm;
         },
 
@@ -167,6 +179,11 @@ define('package/quiqqer/discount/bin/controls/DiscountEdit', [
                         'html',
                         '#' + self.getAttribute('discountId')
                     );
+
+                    if (parseInt(data.active)) {
+                        self.$ActiveSwitch.setAttribute('text', QUILocale.get(lg, 'control.edit.btn.active.status_on'));
+                        self.$ActiveSwitch.setSilentOn();
+                    }
                 }).then(function () {
                     return QUI.parse(self.$Elm);
 
@@ -243,6 +260,40 @@ define('package/quiqqer/discount/bin/controls/DiscountEdit', [
                 }).catch(reject);
 
             });
+        },
+
+        /**
+         * If active switch is triggered
+         */
+        $onActiveStatusChange: function () {
+            this.$ActiveSwitch.disable();
+
+            let Promise;
+            const targetStatus = this.$ActiveSwitch.getStatus();
+
+            if (targetStatus) {
+                Promise = Discounts.activate(this.getAttribute('discountId'));
+            } else {
+                Promise = Discounts.deactivate(this.getAttribute('discountId'));
+            }
+
+            Promise.then((activeStatus) => {
+                this.$ActiveSwitch.enable();
+
+                if (!!activeStatus !== !!targetStatus) {
+                    return;
+                }
+
+                this.fireEvent('activeStatusChange', [activeStatus, this]);
+
+                if (activeStatus) {
+                    this.$ActiveSwitch.setAttribute('text', QUILocale.get(lg, 'control.edit.btn.active.status_on'));
+                    this.$ActiveSwitch.setSilentOn();
+                } else {
+                    this.$ActiveSwitch.setAttribute('text', QUILocale.get(lg, 'control.edit.btn.active.status_off'));
+                    this.$ActiveSwitch.setSilentOff();
+                }
+            });
         }
     });
 });
diff --git a/bin/controls/Discounts.js b/bin/controls/Discounts.js
index b3016e45b3440b993583c0929ce02234584c5163..7611dcdeec344916f44bc0c08cc1d99f4f4785fc 100644
--- a/bin/controls/Discounts.js
+++ b/bin/controls/Discounts.js
@@ -396,9 +396,12 @@ define('package/quiqqer/discount/bin/controls/Discounts', [
                                 var Discount = new DiscountEdit({
                                     discountId: discountId,
                                     events    : {
-                                        onLoaded: function () {
+                                        onLoaded            : function () {
                                             self.Loader.hide();
                                             resolve();
+                                        },
+                                        onActiveStatusChange: () => {
+                                            self.refresh();
                                         }
                                     }
                                 }).inject(Sheet.getContent());
diff --git a/locale.xml b/locale.xml
index 018d350895917a4b2de5370cbd2b069cf8159ffd..b4d386ac37e491a5f24400f304949712b637fb9c 100644
--- a/locale.xml
+++ b/locale.xml
@@ -315,6 +315,15 @@
             <en><![CDATA[gross]]></en>
         </locale>
 
+        <locale name="control.edit.btn.active.status_on">
+            <de><![CDATA[aktiv]]></de>
+            <en><![CDATA[active]]></en>
+        </locale>
+        <locale name="control.edit.btn.active.status_off">
+            <de><![CDATA[inaktiv]]></de>
+            <en><![CDATA[inactive]]></en>
+        </locale>
+
         <locale name="control.select.search.placeholder">
             <de><![CDATA[Suche nach einem Rabatt ...]]></de>
             <en><![CDATA[Search for a discount ...]]></en>