All people who have interaction with our company should be entered in the ERP system based on different roles such as staff, clients, suppliers, etc. After a person has been created, he/she can be assigned with different duties, linked to different organisations, set relations to different functions. In this way, all people could be managed according to the company's needs.
In our VIFIB case, the company VIFIB has staff (role "Internal") – engineers of software development, technicians who manage computer hardware and software, managers, accountants, administration and so on. VIFIB has clients (role "Client") who purchase hosting capacity for their own use or for retail through their own SlapOS platform, and clients who are software developers and need software certifications. VIFIB has suppliers (role "Supplier") who supply computer capacity and hosting space, and suppliers of software licenses and software integration service. VIFIB is also in relation with journalists (role 'Media'), and social insurance center (role "Administration").
In ERP5, there are two principles in identifying people. First, the role of a person should be differentiated among client, supplier, and stuff as shown in the graphics above. However, we should also be able to assign multiple roles to a person. For example, a VIFIB client who purchases large amounts of hosting capacity for retail use could also provide computer capacity to VIFIB through their SlapOS platform, thus becomes a VIFIB supplier. So this person is at the same time a client and a supplier (different roles in the same Person document) . Second, every person created must be unique. We should only create the same person once and be able to use it everywhere needed. If we create two Person documents for the same person (e.g.Person 1 Supplier and Person 1 Client), then the documents are redundant, and could lead to many confusions in using them.