OH

WF-12 — Master-data Change

Process map for create / change / merge requests on governed master data (parties, units, dimensions) with dedupe, maker-checker and downstream event publication. Owner: Vikram Nair (Config Admin — enterprise data steward) · Version 3 (active since 20 Apr 2026).

WF-12 GOV-03
Open Party Master
Open change requests
12
4 awaiting checker decision
Merges this month
9
All with rollback reference kept
Rejected (Jul)
2
Reasons recorded · returned to maker
Conflicts (30d)
3
Optimistic-lock requeues, 0 data loss
Duplicate rate
0.7%
▲ improving vs 1.2% in Q1
Process map — happy path Trigger: create / change / merge request Per §8.2 Table 14
Create / change / merge request Validate — schema · mandatory fields · TRN / EID format Dedupe — match scoring vs canonical records Maker-checker approval (SoD enforced) Effective date applied / scheduled Published — downstream events emitted (via WF-13)

Every record keeps an immutable technical UUID plus a human-readable sequence (e.g. PTY-0044821); mutable attributes are never encoded in identifiers (GOV-03). Merges and deactivations preserve full history and aliases.

Exception paths3 modelled exceptions
Request submitted Validation or checker review fails Checker rejects — reason mandatory Rejected — returned to maker for rework or withdrawal
Merge published Post-merge issue discovered (wrong survivor) Corrective request citing merge reference Rolled back via reference — original merge decision preserved, never erased
Two concurrent edits on one record Optimistic-lock version check fails on apply Requeue with fresh snapshot — maker re-confirms Conflict — second request re-validated against new state before checker
Owner & definition (§8.3)Published v3
Workflow ID
WF-12
Owner
VNVikram Nair — Config Admin · enterprise data steward
Version
3 · effective 20 Apr 2026 · simulation pack SIM-WF12-009 passed
Trigger
Create, change or merge request on governed master data (party, unit, GL dimension)
Preconditions
Requester has domain maker role · record not under legal hold · no open conflicting request
States
Draft → Validating → Dedupe review → Checker queue → Scheduled → Published
Terminal outcomes
Published Rejected Rolled back (by reference) Conflict requeued Withdrawn
Required evidence
Request payload + before/after diff · match-score report · checker decision with reason · effective date · downstream event receipts
Policy snapshot
Checker resolved from authority policy at submission; maker ≠ checker always enforced
Controls (Table 14, expanded)GOV-03
ControlEnforcementStatus
OwnershipEach domain has a named data owner; changes outside owner’s domain are blocked at submissionEnforced
Alias preservationMerged / renamed identities retained as searchable aliases; prior references never breakEnforced
AuditEvery change writes an immutable audit event with before/after values (masked where sensitive)Enforced
Downstream eventsparty.updated / party.merged emitted through transactional outbox (WF-13, INT-02)Enforced
Maker-checkerIndependent checker approval; self-approval technically blocked; reasons mandatory on rejectEnforced
Identifier stabilityImmutable UUID + human sequence; mutable attributes excluded from identifiersEnforced
Exception paths & recovery
ExceptionDetectionRecoveryAuthority
RejectValidation failure or checker decisionReturned to maker with reason; rework resubmits as new revision of the same requestDomain checker
Merge rollbackPost-merge issue reportedCorrective request references merge decision MRG-id; canonical restored; both decisions preserved in historyData steward + checker
ConflictOptimistic-lock version mismatchRequeue with fresh snapshot; maker re-confirms deltas; re-validated before checker queueSystem + maker
WithdrawnMaker cancels before checker decisionClosed with reason; draft retained in history for auditMaker
Timers & escalation (§8.3)UAE business calendar (Mon–Fri)
TimerCalendarWarningBreachEscalation
Checker decisionBusiness days1d2dDomain checker → Vikram Nair
Dedupe review (held leads)Business days4h1dSteward queue → CRM manager (routing held)
Effective-date jobSystem · daily 00:30 GST+30m+2hPlatform on-call · job idempotent retry
Downstream delivery24/7 (WF-13 timers apply)15m1hIntegration owner · DLQ incident
Rollback decisionBusiness days1d3dData steward → governance board
Screens involved
Recent change requestsSteward queue
RequestTypeMaker → CheckerStatus
MDC-2026-0441 · Amina Noor duplicateMergeYusuf Karim → Noura SaeedPublished 17 Jul
MDC-2026-0440 · Falcon Trading FZ-LLC UBO %ChangeYusuf Karim → Noura SaeedChecker queue · 1d
MDC-2026-0438 · Unit PR-B-3204 area correctionChangeElena Petrova → Rashid Al FarsiConflict — requeued with fresh snapshot
MDC-2026-0435 · Prime Link Realty new branchCreateLayla Hassan → Vikram NairRejected — TRN checksum invalid
MDC-2026-0431 · GulfTech bank detailsChangeDaniel Chen → Fatima RashidPublished 15 Jul · dual approval (payment-sensitive)
MDC-2026-0427 · Merge MRG-2026-0102 rollbackRollbackVikram Nair → Grace Okafor (review)Rolled back via reference 12 Jul
Worked instance — MDC-2026-0441 · merge duplicate “Aamina Noor” into canonical Amina Noor Published · rollback reference kept
  • 17 Jul 2026 · 10:05
    Merge request raised from held lead LD-2026-04530
    Maker: Yusuf Karim · duplicate “Aamina Noor” (WhatsApp) vs canonical PTY-0044821 Amina Noor · match score 0.92 (phone exact +971 50 123 4472, name fuzzy 0.87)
  • 10:12
    Validation passed
    Schema + mandatory fields OK · EID 784-19●●-●●●●●●●-● present only on canonical · no legal hold on either record
  • 10:22
    Survivor field selection recorded
    Canonical keeps EID, consent state and KYC history · WhatsApp handle added as contact channel · “Aamina Noor” retained as alias · before/after diff attached
  • 11:04
    Checker approved — Noura Saeed
    Reason: “Same person; phone exact match, KYC evidence consistent” · SoD verified (maker ≠ checker) · authority snapshot AUTH-2026-0717
  • 11:05
    Published — effective immediately
    PTY-0044821 canonical · duplicate PTY-0051277 deactivated with merge reference MRG-2026-0107 · every prior reference preserved (GOV-03)
  • 11:05
    Downstream events emitted
    party.merged → CRM, Finance, Compliance via outbox obx-88117 · delivery tracked on Events & Webhooks (WF-13)
  • 11:20
    Consumers reconciled
    Lead LD-2026-04530 released from routing hold and linked to canonical party · KYC records re-linked · screening history intact
  • 11:25
    Audit closed
    Merge decision, match report and diffs immutable in Audit Explorer · rollback possible only via corrective request citing MRG-2026-0107

Static render mockup — no live data. Source: ERP Modern Development Specification v2.0 · Covers: WF-12, GOV-03.