Household & Family Management
The Families module is a core CRM component that groups individual contacts into household units. It is designed to model physical residences, simplify billing/giving tracking, and coordinate pastoral care.
1. Household Grouping Concepts
In Kononia, family records operate as distinct entities linked to contacts via a junction schema.
Core Architecture
families: Represents the physical household unit. It contains address details, shared contact info, and custom notes.family_members: A junction table that resolves the many-to-many relationship betweenpeopleandfamilies. A person can theoretically be associated with multiple households (e.g., in co-parenting situations), though one is marked as primary.
2. Head of Household (head_person_id)
Every family record includes a head_person_id pointing to a record in the people table.
- Primary Contact: The head of household serves as the default recipient for church communication (such as mailings or automated emails).
- Financial Statements: End-of-year tax contribution statements and giving summaries are aggregated and addressed to the head of household by default.
- Directory Display: In the public parish directory, members are listed under the household head to present a clear hierarchy.
3. Junction Roles & Membership (family_members)
Association records in the family_members table are qualified by specific structural parameters:
Member Roles
Every member linked to a household has an assigned role that dictates directory rendering:
'head': Main point of contact / primary representative.'spouse': Husband/wife partner.'child': Dependent children.'relative': Extended family (e.g., grandparents, aunts/uncles) living at the same address.'dependent': Other legal dependents.'member': Standard household member.
Primary Designation (is_primary)
The is_primary boolean flag in family_members indicates whether the selected family is the person’s primary household.
- When
is_primary = true, the person’s main contact address is synchronized with the family’s address. - Only the primary household context is queried during directory lookups.
4. Permissions & Operations
Managing families requires specific permission scopes:
families.view: View the list of households and members.families.manage: Create new households, edit details, add/remove members, and update assigned shepherds.