diff --git a/fineract-provider/src/main/resources/db/changelog/tenant/final-changelog-tenant.xml b/fineract-provider/src/main/resources/db/changelog/tenant/final-changelog-tenant.xml
index 15554ba53..02bfb8312 100644
--- a/fineract-provider/src/main/resources/db/changelog/tenant/final-changelog-tenant.xml
+++ b/fineract-provider/src/main/resources/db/changelog/tenant/final-changelog-tenant.xml
@@ -69,4 +69,9 @@
+
+
+
+
+
diff --git a/fineract-provider/src/main/resources/db/changelog/tenant/parts/0543_remove_unused_roles_and_merge_manager_roles.xml b/fineract-provider/src/main/resources/db/changelog/tenant/parts/0543_remove_unused_roles_and_merge_manager_roles.xml
new file mode 100644
index 000000000..881b798cf
--- /dev/null
+++ b/fineract-provider/src/main/resources/db/changelog/tenant/parts/0543_remove_unused_roles_and_merge_manager_roles.xml
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+ DELETE FROM m_role_permission
+ WHERE role_id IN (SELECT id FROM m_role WHERE name = 'Self Service User')
+
+
+ DELETE FROM m_appuser_role
+ WHERE role_id IN (SELECT id FROM m_role WHERE name = 'Self Service User')
+
+
+ DELETE FROM m_role WHERE name = 'Self Service User'
+
+
+
+
+
+
+ INSERT INTO m_role_permission (role_id, permission_id)
+ SELECT (SELECT id FROM m_role WHERE name = 'Branch Manager'), rp.permission_id
+ FROM m_role_permission rp
+ WHERE rp.role_id = (SELECT id FROM m_role WHERE name = 'As Manager')
+ AND NOT EXISTS (
+ SELECT 1 FROM m_role_permission existing
+ WHERE existing.role_id = (SELECT id FROM m_role WHERE name = 'Branch Manager')
+ AND existing.permission_id = rp.permission_id)
+
+
+ INSERT INTO m_appuser_role (appuser_id, role_id)
+ SELECT ur.appuser_id, (SELECT id FROM m_role WHERE name = 'Branch Manager')
+ FROM m_appuser_role ur
+ WHERE ur.role_id = (SELECT id FROM m_role WHERE name = 'As Manager')
+ AND NOT EXISTS (
+ SELECT 1 FROM m_appuser_role existing
+ WHERE existing.appuser_id = ur.appuser_id
+ AND existing.role_id = (SELECT id FROM m_role WHERE name = 'Branch Manager'))
+
+
+ DELETE FROM m_appuser_role WHERE role_id = (SELECT id FROM m_role WHERE name = 'As Manager')
+
+
+ DELETE FROM m_role_permission WHERE role_id = (SELECT id FROM m_role WHERE name = 'As Manager')
+
+
+ DELETE FROM m_role WHERE name = 'As Manager'
+
+
+
diff --git a/fineract-provider/src/main/resources/db/changelog/tenant/parts/0546_rename_cashier_role_to_title_case.xml b/fineract-provider/src/main/resources/db/changelog/tenant/parts/0546_rename_cashier_role_to_title_case.xml
new file mode 100644
index 000000000..b2ffb76e2
--- /dev/null
+++ b/fineract-provider/src/main/resources/db/changelog/tenant/parts/0546_rename_cashier_role_to_title_case.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+ UPDATE m_role SET name = 'Cashier' WHERE name = 'CASHIER'
+
+
+
diff --git a/fineract-provider/src/main/resources/db/changelog/tenant/parts/0547_revoke_all_functions_from_clerk.xml b/fineract-provider/src/main/resources/db/changelog/tenant/parts/0547_revoke_all_functions_from_clerk.xml
new file mode 100644
index 000000000..519b7261a
--- /dev/null
+++ b/fineract-provider/src/main/resources/db/changelog/tenant/parts/0547_revoke_all_functions_from_clerk.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+ DELETE FROM m_role_permission
+ WHERE role_id = (SELECT id FROM m_role WHERE name = 'Clerk')
+ AND permission_id = (SELECT id FROM m_permission WHERE code = 'ALL_FUNCTIONS')
+
+
+