Deduplication & Adjudication — User Manual
Interactive guide for household (/dedup) and member
/dedup_members workflows. Open to the public — no session required.
Overview
GNHR deduplication helps admins find and resolve potential duplicates in the registry. There are two parallel tools:
Households — /dedup
Flags households that share the same household phone, other phone, or E-Zwich card number.
Cron: 12:00 AM Africa/AccraMembers — /dedup_members
Flags members that share Ghana Card, NHIS, phones, MoMo, or E-Zwich values.
Cron: 1:00 AM Africa/Accra0000000000 is never used as a match key.
Access & navigation
/dedup_manual) is public — anyone can open it without signing in.
To use the live tools:
- Sign in to GNHR as an administrator (GNHR firm + ADMIN role).
- Open the sidebar menu Deduplication & Adjudication.
- Choose Households (
/dedup) or Members (/dedup_members).
The live adjudication pages remain admin-only. Links from this manual to those tools will ask you to sign in if you are not already authenticated.
Recommended daily workflow
| Step | Action |
|---|---|
| 1 | Confirm overnight detection ran, or click Run detection if the queue is empty. |
| 2 | Filter by region / district / community (and match field if focusing one issue type). |
| 3 | Click a list row to open the side-by-side comparison. |
| 4 | Review photos, highlighted match field, and related details. Optionally open registry / finder. |
| 5 | Choose Keep, Dismiss, Confirm, or Escalate. Add notes when escalating. |
| 6 | Continue through the filtered queue using Prev / Next pagination. |
Households (/dedup)
Open page
Household page layout
Top to bottom: header actions → statistics cards → filters → list + side-by-side panel.
Household statistics
Counts respect the current geographic and match-field filters.
Household filters & match fields
| Match field | Column | Rule |
|---|---|---|
| Household phone | hh_household_phone_num | Same non-empty value on 2+ households |
| Other phone | hh_other_phone_number | Same secondary phone |
| E-Zwich card | hh_ezwitch_card_num | Same E-Zwich card number |
Household duplicate list
Each row shows structure-photo thumbnail (when available), head name, UUID, match badge, and location.
Household side-by-side comparison
- Banner shows match reason from
hh_potential_duplicate_onand the shared value. - Peer is loaded from
hh_potential_duplicate_uuid. - Member strip under each household shows household members with photos when available.
- Open in registry opens the selected household for deeper review.
Household adjudication
See Action reference for what each button does.
Household run detection
hh_potential_duplicate = no) are updated.
Members (/dedup_members)
Open page
Member page layout
Same overall layout as households, but rows and panels are individual members with member photos.
Member statistics
Member filters & match fields
| Match field | Column |
|---|---|
| Ghana Card | mm_ghana_card_number |
| NHIS card | mm_member_nhis_card_number |
| Main phone | mm_member_main_phone_number |
| Other phone | mm_member_other_phone |
| MoMo number | mm_member_momo_number |
| E-Zwich card | mm_member_ezwich_card_number |
Member duplicate list
Member side-by-side comparison
- Peer comes from
mm_potential_duplicate_uuid(amember_uuid). - Panels show photo, IDs, gender/age, relationship, Ghana Card, NHIS, phones, MoMo, E-Zwich, and location.
- Open in finder opens the selected member for deeper search/review.
Member adjudication
Member run detection
mm_potential_duplicate = no (and match-on empty/null/no) are scanned.
Prefer the nightly 1:00 AM job for routine fills.
Adjudication action reference
These actions work the same on both household and member pages. “Selected” is always the left panel.
| Action | Effect | Use when |
|---|---|---|
| Keep selected | Clears duplicate flags on selected only | Selected record is correct; peer may still need review |
| Keep peer | Clears flags on peer only | Peer is the correct registry record |
| Confirm duplicate | Confirms pair; flags retained | You agree they are duplicates and want a paper trail |
| Dismiss selected | Clears selected flags (false positive) | Selected was incorrectly flagged |
| Dismiss both | Clears flags on selected and peer | Both were false positives |
| Escalate to case | Creates a case-management ticket with notes | Needs supervisor / field follow-up |
Scheduled jobs
| Job | Schedule | Timezone | Manual API |
|---|---|---|---|
| Household potential duplicates | Daily 12:00 AM (0 0 * * *) |
Africa/Accra | POST /api/v2/household_duplicates |
| Member potential duplicates | Daily 1:00 AM (0 1 * * *) |
Africa/Accra | POST /api/v2/member_duplicates |
Screenshots on this page are annotated UI fixtures for training. Live counts and records come from your current registry data after sign-in.