Skip to main content

Responsibility Matrix

The responsibility matrix defines who can perform which actions on different system entities.

Concept

The PCH-SIG RACI matrix (Responsible, Accountable, Consulted, Informed) precisely defines:

  • Who executes an action (R)
  • Who approves an action (A)
  • Who must be consulted (C)
  • Who must be informed (I)

Accessing the matrix

  1. Go to Settings > Administration
  2. Click Responsibility Matrix

Matrix structure

Entities involved

EntityDescription
HouseholdsHousehold registration and validation
BeneficiariesBeneficiary management
CyclesPayment cycles
PaymentsIndividual payments
DocumentsIdentity documents

Actions by entity

Households

ActionAdminCoordinatorSupervisorData EntryReader
CreateR,ARRR-
ModifyR,ARRR-
ValidateR,AR,AR,A--
DeleteR,A----
ViewRRRRR

Payment cycles

ActionAdminCoordinatorTransfer Spec.RAFReader
CreateR,ARR--
Generate paymentsR,ARR--
Validate level 1R,AR,AR,AR,A-
Validate level 2R,AA---
ExportR,ARRR-
ViewRRRRR

Payments

ActionAdminCoordinatorTransfer Spec.RAFReader
Modify statusR,ARR--
ValidateR,AR,A-R,A-
CancelR,AR---
ViewRRRRR

Matrix configuration

Via interface

  1. Select the entity to configure
  2. For each action, define authorized roles
  3. Check the corresponding boxes (R, A, C, I)
  4. Save

Configuration structure

{
"matrice": {
"menages": {
"create": {
"ROLE_ADMIN": ["R", "A"],
"ROLE_COORDINATEUR": ["R"],
"ROLE_DATA_ENTRY": ["R"]
},
"validate": {
"ROLE_ADMIN": ["R", "A"],
"ROLE_COORDINATEUR": ["R", "A"],
"ROLE_FIELD_SUPERVISOR": ["R", "A"]
},
"delete": {
"ROLE_ADMIN": ["R", "A"]
}
},
"cycles": {
"create": {
"ROLE_ADMIN": ["R", "A"],
"ROLE_TM_SPECIALIST": ["R"],
"ROLE_GESTIONNAIRE_PAIEMENT": ["R"]
},
"validate_level1": {
"ROLE_ADMIN": ["R", "A"],
"ROLE_TM_SPECIALIST": ["R", "A"]
},
"validate_level2": {
"ROLE_ADMIN": ["R", "A"],
"ROLE_RAF": ["R", "A"]
}
}
}
}

Validation levels

PCH-SIG supports multi-level validation for certain critical operations.

Payment validation

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│ Creation │────▶│ Validation L1 │────▶│ Validation L2 │
│(Transfer Spec.) │ │ (Coordinator) │ │ (RAF) │
└─────────────────┘ └─────────────────┘ └─────────────────┘


┌─────────────────┐
│ Export │
│(Transfer Spec.) │
└─────────────────┘

Configure levels

  1. Go to Settings > Responsibility Matrix
  2. Section Validation levels
  3. Define:
    • Number of levels (1-3)
    • Required roles per level
    • Escalation delay (optional)

Geographic constraints

The matrix can be combined with geographic constraints.

Example: Regional supervisor

A supervisor can be limited to certain regions:

{
"user_id": 5,
"role": "ROLE_SUPERVISEUR",
"constraints": {
"regions": ["dakar", "thies"],
"secteurs": ["all"]
}
}

Configure constraints

  1. Go to Settings > Users
  2. Select the user
  3. Geographic scope tab
  4. Select authorized regions/sectors

Action audit

All actions are tracked with:

  • User who performed the action
  • Date and time
  • Entity involved
  • Action performed
  • Before/after values

View audit

  1. Go to Settings > Audit
  2. Filter by:
    • User
    • Entity
    • Action
    • Period

Notifications

The matrix can trigger notifications for "Consulted" or "Informed" roles.

Notification types

TypeDescription
EmailEmail notification
In-appApplication notification
BothEmail + in-app notification

Configure notifications

  1. Go to Settings > Notifications
  2. For each action, define:
    • Notified roles
    • Notification type
    • Message template

Best practices

Separation of duties principle

  • The user who creates should not validate
  • Final validation should be done by a higher hierarchical level
  • Critical actions require dual validation

Documentation

  • Document each role's responsibilities
  • Train users on their permissions
  • Review the matrix regularly

Security

  • Limit administrators
  • Audit sensitive actions
  • Enable notifications for critical actions

Next steps