Isso é apenas um pouco mais complicado que uma "entidade única". Vamos supor o pior caso - várias empresas que possuem várias contas. Uma mesa para empresas. Uma tabela para contas com uma chave estrangeira do ID da empresa. Em seguida, cada transação possui a chave estrangeira da ID da conta. Para todos os outros dados, você precisa decidir se pertence a uma empresa, uma conta ou outra. Ou seja os funcionários só podem trabalhar para uma empresa (em geral), de modo que o funcionário tenha o ID da empresa como chave estrangeira. Uma divisão estaria em uma empresa, mesma relação.
É tudo sobre entender o que pertence a quem e estabelecer o relacionamento. Isso pode parecer muito simplista, mas é realmente sobre isso.
Pensar em usar algum esquema estabelecido pode poupar muito esforço, mas esse esforço é o que garante um bom resultado. Um bom design de banco de dados vem de todas as perguntas: "Um funcionário pode trabalhar para mais de uma divisão?" "As compras são sempre cobradas de um departamento ou o custo pode ser distribuído?" "Precisamos acompanhar mais de uma aprovação para uma reavaliação de funcionários?" Ele continua para sempre, mas se você não fizer isso, seu sistema estará constantemente desapontando os usuários e exigindo modificações infinitas.