diff --git a/bin/backend/controls/articles/ArticleList.js b/bin/backend/controls/articles/ArticleList.js
index 4f408f9dcbad739aa1f01fc9e9be46b46b041ac9..35df93882d7123074bb25d48dfd35bc5e659a36a 100644
--- a/bin/backend/controls/articles/ArticleList.js
+++ b/bin/backend/controls/articles/ArticleList.js
@@ -184,6 +184,15 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
             return this.$articles;
         },
 
+        /**
+         * Return the articles count
+         *
+         * @returns {number}
+         */
+        count: function () {
+            return this.$articles.length;
+        },
+
         /**
          * Unserialize the list
          *
@@ -196,7 +205,7 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
         unserialize: function (list) {
             const self = this;
             let data = {};
-            
+
             if (typeOf(list) === 'string') {
                 try {
                     data = JSON.stringify(list);
@@ -511,7 +520,23 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
          * @param priceFactor
          */
         addPriceFactor: function (priceFactor) {
-            this.$priceFactors.push(priceFactor);
+            const prio = priceFactor.index;
+
+            if (prio === this.$priceFactors.length) {
+                this.$priceFactors.push(priceFactor);
+                return;
+            }
+
+            this.$priceFactors.splice(prio, 0, priceFactor);
+        },
+
+        /**
+         * Return the articles count
+         *
+         * @returns {number}
+         */
+        countPriceFactors: function () {
+            return this.$priceFactors.length;
         },
 
         /**
diff --git a/locale.xml b/locale.xml
index adf7548303d57743feba82256907828fa26dc556..62beddf0bd1008a8b7b072b30a46bcb8a590515d 100644
--- a/locale.xml
+++ b/locale.xml
@@ -1355,6 +1355,15 @@ Allowed characters: Letters, numbers and _ ä ö ü ß]]></en>
             <en><![CDATA[Vat]]></en>
         </locale>
 
+        <locale name="add.pricefactor.button">
+            <de><![CDATA[Preisfaktor hinzufügen]]></de>
+            <en><![CDATA[Add pricefactor]]></en>
+        </locale>
+        <locale name="message.pricefactor.empty">
+            <de><![CDATA[Keine Preisfaktoren vorhanden]]></de>
+            <en><![CDATA[No price factors available]]></en>
+        </locale>
+
 
     </groups>
 </locales>