# Distributor Guide (IDSA)

Version: 2026-02-04

This file is a DOCX source for offline generation. Do not generate DOCX at runtime.

## 1) Distributor role (District/Branch alignment)

The Distributor role exists to keep the Partner and CSC network healthy:

- correct routing fields
- consistent status usage
- evidence-first escalation

Alignment:

- District: oversight and routing policy
- Branch Office: operational approvals and local routing
- Partner: business owner responsible for one or more CSC centers
- CSC: field operator performing assisted bookings

## 2) Area control: manage partner + CSC network

Core controls:

- No CSC activation without `post_office_code`
- Ensure CSC branch assignment matches servicing branch for the area
- Ensure every CSC maps to a valid Partner

Daily/weekly discipline:

- spot-check new CSC onboarding for routing completeness
- verify repeated disputes always include `booking_reference` and screenshots

## 3) Quality controls (activation rules, post_office_code discipline)

Activation is a workflow gate. If routing is incomplete, stop and escalate.

Minimum acceptable data for active CSC:

- `post_office_code` present
- branch assignment confirmed
- operator identity and contact verified (as per policy)

## 4) Performance: targets + dispute handling (non-financial)

Targets should prioritize quality, not shortcuts:

- fewer routing errors
- fewer disputes due to missing references
- clean audit outputs (lower mismatch counts)

Dispute handling (safe pattern):

1) collect `booking_reference`
2) collect screenshots (receipt, status page)
3) run audits and store JSON with timestamp
4) escalate with evidence bundle

## 5) Reports and audits (how to run + interpret audit output)

Run:

- `C:\\xampp\\php\\php.exe scripts\\audit_branch_partner_csc.php`

Store as evidence:

- save to `reports/` with a timestamped filename

Interpretation:

- `summary.counts`: high-level counts
- `orphaned_*`: missing/invalid links
- `status_mismatches`: active/suspended inconsistencies
- `commission_issues`: missing mapping and aged pending items
- `routing_issues`: missing/inconsistent routing; may be derived via join (no schema changes)

## 6) Do/Don't + escalation

Do:

- enforce `post_office_code` and routing discipline
- insist on evidence-first escalation
- keep documentation and audits as artifacts

Don't:

- do not request/perform DB edits
- do not bypass approval SOP due to pressure
- do not accept disputes without `booking_reference`

Escalation checklist:

- timestamp of issue
- partner_id / csc_id / booking_reference (if applicable)
- screenshots
- audit JSON and sample rows

