ap-duplicate-payment-preflight-8d996e — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited ap-duplicate-payment-preflight-8d996e (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use this skill to turn an accounts payable export into a reviewable duplicate-payment exception report. The goal is to stop risky payments before release while preserving enough evidence for AP staff to decide whether each exception is a true duplicate, a credit/rebill, or an intentional recurring charge.
Use for:
INV-1007, INV1007, 1007, and OCR spacing differences.Do not use for:
Ask only for missing inputs that materially affect the decision:
vendor_name, vendor_id, invoice_number, invoice_date, payment_date, amount, currency, status, po_number.If the user only has a screenshot or a short sample, produce a sample-limited review and do not give a release decision for the full payment run.
Before classifying a duplicate, capture:
Read references/duplicate-payment-rules.md before classifying vendor aliases, recurring charges, credits, rebates, or tax/utility invoices.
Use the bundled script with explicit paths:
python3 ap-duplicate-payment-preflight/scripts/ap_duplicate_payment_preflight.py \
--payments /absolute/path/ap_export.csv \
--date-window-days 14The script accepts CSV or JSON. JSON may be a list of payment objects or an object containing payments, invoices, bills, or rows.
Use one primary action:
hold_payment: same vendor or vendor alias, same normalized invoice number, same amount and currency, or a paid-versus-pending collision.ap_review: near match with same amount and close dates, missing invoice number, vendor alias, or same PO.allow_with_note: recurring, credit/rebill, tax, utility, rent, or subscription pattern that still needs the reviewer note recorded.no_exception: no meaningful duplicate signal.Use one primary risk:
high: exact invoice/amount match, paid-versus-pending collision, or vendor alias with same invoice and amount.medium: same amount within the review window with similar vendor or invoice, missing invoice number, or same PO with different invoice number.low: weak same-amount signal, common vendor, recurring context, or insufficient metadata.Never recommend release when high-risk exceptions remain unresolved.
Return:
## Payment Run Decision
[Hold payment run / Release after AP review / No material duplicate risk found]
## Duplicate Exceptions
| Risk | Action | Rows | Vendor | Invoice | Amount | Evidence | Reviewer next step |
|---|---|---|---|---|---:|---|---|
## Controls Checked
[Exact invoice match, normalized invoice match, vendor alias, same amount/date window, paid-versus-pending collision, PO collision]
## Safe Release Steps
[Rows to hold, rows to confirm, rows allowed with reviewer note, export/archive instruction]
## Open Questions
[Only items that affect payment release safety]Use templates/exception-report.md when the user asks for a reusable AP review artifact.
Do not advise release until:
Positive example: "Use $ap-duplicate-payment-preflight on this QuickBooks bills export before we approve ACH." The skill should run the script, catch normalized invoice duplicates, paid-versus-pending collisions, and produce hold/review rows.
Positive alias example: "Our vendor master has Acme Services LLC and Acme Services as separate vendors." The skill should compare normalized vendor names and IDs, then mark same invoice/amount pairs for AP review.
Negative example: "Pay all invoices that look okay." Do not approve payments or operate a live AP system; produce a review report only.
Boundary example: "I pasted five rows from a screenshot." Produce sample-limited observations and ask for the export before making a payment-run decision.
Smoke-test the bundled fixture:
python3 ap-duplicate-payment-preflight/scripts/ap_duplicate_payment_preflight.py \
--payments ap-duplicate-payment-preflight/scripts/fixtures/ap_payments.csv \
--date-window-days 14Expected result: a Markdown report with Payment Run Decision, at least one hold_payment, at least one ap_review, paid_vs_pending_collision, and row numbers for reviewer follow-up.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.