Fortunately, there is a very easy solution for all this. At first we thought that we might need to write some custom C # code to fix this, as it seemed standard behavior on the platform. But when I started reading the high-level documentation on docs.kentico.com and getting assignment help, on the page there were mentioned the associations between users and contacts. In the example presented on this page, the documents talked about how recently registered users automatically used their First Name, Last Name and Email attribute mapped to the First Name, Last Name and Email Contact attributes. Now on our site we had only problems with editing existing profiles, new profiles were correctly stored both in the CMS_User class and in the OM_Contact class. I sat there for a while, and then it dawned on me.