Data quality & reconciliation with exception
Summary
TL;DR: Automatically compares two or more datasets to find mismatches, missing records, duplicates, and value discrepancies, then produces a clear exception report.
Data quality & reconciliation with exception is an OpenClaw skill that reconciles data sources using stable identifiers (Pay Number, driving licence, driver card, and driver qualification card numbers), producing exception reports and “no silent failure” checks. Use when you need weekly matching with explicit reasons for non-joins and mismatches.
Created by KOwl64, this skill has been downloaded 4k+ times on ClawHub. Install it with one command and your AI agent gains these capabilities right away.
Use cases
- Compare data before and after a database migration to verify nothing was lost or corrupted
- Reconcile bank statements against your internal transaction records for monthly close
- Match customer records between your CRM and billing system to find sync failures
- Validate that an ETL pipeline output matches the expected results from the source system
Installation
Run this command to install the skill on your OpenClaw agent:
npx clawhub@latest install data-reconciliation-exceptionsSecurity scan
The skill's instructions, files, and requirements are coherent with its stated purpose (data reconciliation and exception reporting); it is instruction-only, requests no credentials, and has no install steps.
SKILL.md
--- name: data-reconciliation-exceptions description: Reconciles data sources using stable identifiers (Pay Number, driving licence, driver card, and driver qualification card numbers), producing exception reports and “no silent failure” checks. Use when you need weekly matching with explicit reasons for non-joins and mismatches. --- # Data quality & reconciliation with exception reporting and no silent failure ## PURPOSE Reconciles data sources using stable identifiers (Pay Number, driving licence, driver card, and driver qualification card numbers), producing exception reports and “no silent failure” checks. ## WHEN TO USE - TRIGGERS: - Reconcile these two data sources and produce an exceptions report with reasons. - Match names and payroll numbers across files and flag anything that does not join. - Build a ‘no silent failure’ check that stops the pipeline if counts do not match. - Create a weekly variance report for missing records, duplicates, and date gaps. - Design a data quality scorecard with thresholds and red flags. - DO NOT USE WHEN… - You need open-ended fuzzy matching without acceptance criteria. - There are no stable identifiers in any source. ## INPUTS - REQUIRED: - At least two datasets (CSV/XLSX) with Pay Number and/or driver document numbers. - Which fields must match (e.g., Name, expiry date). - OPTIONAL: - Normalization rules (case, spaces, punctuation). - Thresholds for gates/scorecard (max % missing, etc.). - EXAMPLES: - Payroll export + compliance register - Two weekly exports from different systems ## OUTPUTS - Reconciliation plan (matching rules, normalization, join strategy). - Exceptions report spec (CSV columns + reason codes) and variance checks. - Optional artifacts: `assets/exceptions-report-template.csv` + `references/matching-rules.md`. Success = every record is categorized (matched/missing/duplicate/mismatch/invalid) with an explicit reason; pipelines stop on anomalies. ## WORKFLOW 1. Confirm sources and key priority (Pay Number → Driver Card → Driving Licence → DQC). 2. Normalize columns: - trim spaces; standardize case; strip common punctuation for document numbers. 3. Validate keys: - flag blanks/invalid formats; identify duplicates per source. 4. Join: - exact join on Pay Number; then attempt secondary joins only for remaining unmatched items. 5. Produce exception categories with reasons: - Missing in A/B, Duplicate key, Field mismatch, Invalid key. 6. “No silent failure” gates: - counts within tolerance; unmatched rate below threshold; duplicate spikes flagged. 7. STOP AND ASK THE USER if: - columns are not mapped, - multiple competing IDs exist with no priority, - expected tolerances are unspecified. ## OUTPUT FORMAT ```csv exception_type,reason,source_a_id,source_b_id,pay_number,name,field,source_a_value,source_b_value ``` Reason codes: `MISSING_IN_A`, `MISSING_IN_B`, `MISMATCH`, `DUPLICATE_KEY`, `INVALID_KEY`. ## SAFETY & EDGE CASES - Read-only by default; don’t auto-edit source data. Route exceptions to review. - Deterministic matching rules first; avoid fuzzy matching unless explicitly requested. - Always produce an exceptions report; never drop unmatched rows. ## EXAMPLES - Input: “Payroll vs compliance; match by Pay Number; flag name mismatch.” Output: join plan + mismatch reasons + exceptions report schema. - Input: “Some rows have blank Pay Number.” Output: secondary key matching + invalid-key exceptions for truly unmatchable rows.
Version history
- Initial release of the data-reconciliation-exceptions skill. - Reconciles multiple data sources using stable identifiers (Pay Number, driver documents). - Produces comprehensive exception reports with explicit reasons for each non-match or mismatch. - Implements “no silent failure” checks—pipelines stop when anomalies or tolerance breaches are detected. - Provides clear input requirements, configurable normalization, and threshold options. - Outputs a detailed CSV report categorizing every record (matched, missing, duplicate, mismatch, invalid).
Frequently asked questions
CSV, TSV, Excel (xlsx), JSON, and it can also work with data your agent fetches from databases or APIs. Basically anything that can be represented as rows and columns.
Installation method
Send this prompt to your agent to install the skill
npx clawhub@latest install data-reconciliation-exceptionsSkill data sourced from ClawHub