Taxes and benefits can be calculated for different entities: persons, household, companies, etc.
Some OpenFisca variables are defined for a person.
Example: a “salary” is defined as the individual level.
Group entities are clusters of persons such as the family, the household or the company. A tax and benefit system can define several entities and specifies each time which tax and benefit applies to which entity.
In France the legislation has these group entities:
"foyers_fiscaux" (tax homes) and
Example: the “local tax” is calculated over the
Each person related to a group entity has a role inside this entity.
The roles are:
declarants (registrants) and
personne_de_reference (reference person),
You can define as many entities as you want and dispatch persons into them.
The entities definitions are closely related to a country, therefore they are defined in a Python package (OpenFisca-France) independent from the core engine (OpenFisca-Core).