diff --git a/src/QUI/ERP/Discount/Discount.php b/src/QUI/ERP/Discount/Discount.php
index a0be90cee013bec67b2d76a7fa5045c67e0364c0..86c298aa982b7d5abda61e38de3a09ded020fc0d 100644
--- a/src/QUI/ERP/Discount/Discount.php
+++ b/src/QUI/ERP/Discount/Discount.php
@@ -579,4 +579,45 @@ public function toPriceFactor($Locale = null, $Customer = null)
             'visible'     => $hideDiscounts ? false : true
         ]);
     }
+
+    /**
+     * Update the CRUD child
+     *
+     * @throws QUI\ExceptionStack|QUI\Exception
+     */
+    public function update()
+    {
+        $this->Events->fireEvent('saveBegin');
+        $this->Events->fireEvent('updateBegin');
+
+        $needles   = $this->Factory->getChildAttributes();
+        $savedData = [];
+
+        foreach ($needles as $needle) {
+            if (!\array_key_exists($needle, $this->attributes)) {
+                continue;
+            }
+
+            $value = $this->getAttribute($needle);
+
+            switch ($needle) {
+                case 'user_groups':
+                    if (!empty($value)) {
+                        $value = ','.$value.',';
+                    }
+                    break;
+            }
+
+            $savedData[$needle] = $value;
+        }
+
+        QUI::getDataBase()->update(
+            $this->Factory->getDataBaseTableName(),
+            $savedData,
+            ['id' => $this->getId()]
+        );
+
+        $this->Events->fireEvent('saveEnd');
+        $this->Events->fireEvent('updateEnd');
+    }
 }