diff --git a/src/app/core/services/helpers/config.helpers.spec.ts b/src/app/core/services/helpers/config.helpers.spec.ts
index 03b53d0..decc059 100644
--- a/src/app/core/services/helpers/config.helpers.spec.ts
+++ b/src/app/core/services/helpers/config.helpers.spec.ts
@@ -374,12 +374,7 @@
             {
               type: 'string',
               name: 'bar',
-              validators: [
-                {
-                  bool_value: true,
-                  name: 'required'
-                }
-              ],
+              validators: [],
               read_only: false
             }
           ],
@@ -397,6 +392,38 @@
 
         expect(res).not.toHaveProp('baz');
       });
+
+      it('should remove properties marked as read_only', () => {
+        const model: IXosModeldef = {
+          name: 'Test',
+          app: 'test',
+          fields: [
+            {
+              type: 'number',
+              name: 'write_allowed',
+              validators: [],
+              read_only: false
+            },
+            {
+              type: 'string',
+              name: 'read_only',
+              validators: [],
+              read_only: true
+            }
+          ],
+          description: '',
+          verbose_name: ''
+        };
+
+        const item: any = {
+          write_allowed: 'existing',
+          read_only: 'remove me'
+        };
+
+        const res = service['removeExtraFields'](item, model);
+
+        expect(res).not.toHaveProp('read_only');
+      });
     });
   });
 });
diff --git a/src/app/core/services/helpers/config.helpers.ts b/src/app/core/services/helpers/config.helpers.ts
index 194bea1..0e17d73 100644
--- a/src/app/core/services/helpers/config.helpers.ts
+++ b/src/app/core/services/helpers/config.helpers.ts
@@ -97,7 +97,9 @@
   public form_excluded_fields = this.excluded_fields.concat([
     'id',
     'policy_status',
+    'policy_code',
     'backend_status',
+    'backend_code',
   ]);
 
   constructor(
@@ -319,7 +321,7 @@
 
         return;
       }
-      // remove fields added by the GUI
+      // remove fields that are not part of the model
       item = this.removeExtraFields(item, model);
 
       const itemCopy = angular.copy(item);
@@ -356,8 +358,9 @@
 
   private removeExtraFields(item: any, modelDef: IXosModeldef) {
     _.forEach(Object.keys(item), prop => {
-      const hasField = _.findIndex(modelDef.fields, {name: prop}) > -1;
-      if (!hasField) {
+      const field = _.find(modelDef.fields, {name: prop});
+      const hasField = angular.isDefined(field);
+      if (!hasField || field.read_only) {
         delete item[prop];
       }
     });
