invoice-three-way-match-preflight-da9d6f — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited invoice-three-way-match-preflight-da9d6f (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 local invoice, purchase-order, and receipt exports into a reviewable three-way match exception report. The goal is to keep AP from paying invoices that do not match what was ordered, approved, and received while giving each exception a clear owner and next step.
Use for:
Do not use for:
Ask only for missing inputs that materially affect payment-release safety:
invoice_number, vendor_id, po_number, line_id, item_sku, quantity, unit_price, line_amount, currency, approval_status.5.00 amount and 2% unit-price variance.If the user provides only partial data, state the review boundary and do not give a full payment-release decision.
Before classifying an exception, capture:
Read references/three-way-match-rules.md before classifying missing receipts, partial receipts, price variance, or closed-PO exceptions.
Use explicit paths:
python3 invoice-three-way-match-preflight/scripts/invoice_three_way_match_preflight.py \
--invoices /absolute/path/invoices.csv \
--purchase-orders /absolute/path/purchase_orders.csv \
--receipts /absolute/path/receipts.csv \
--amount-tolerance 5.00 \
--percent-tolerance 0.02The script accepts CSV or JSON. JSON may be a list or an object containing invoices, invoice_lines, purchase_orders, po_lines, receipts, receipt_lines, or rows.
Use one primary action:
hold_invoice: high-risk mismatch that should not be released until the owner records a disposition.route_exception: medium-risk mismatch that needs AP, procurement, receiving, or requester review.review_note: weak or policy-dependent exception that needs a reviewer note.no_exception: no material match exception found in the provided data.Use one primary owner:
AP: math, currency, invoice metadata, coding, duplicate approval state.procurement: missing, closed, unapproved, or changed PO; price or vendor mismatch.receiving: missing receipt, partial receipt, rejected goods, or service acceptance gap.requester_or_procurement: no-PO invoice that needs owner confirmation or retroactive approval.Never recommend payment release when high-risk exceptions remain unresolved.
Return:
## Three-Way Match Decision
[Hold affected invoices / Route exceptions before payment / No material three-way match exceptions found]
## Exceptions
| Risk | Action | Invoice | PO | Vendor | Amount | Flags | Owner | Reviewer next step |
|---|---|---|---|---|---:|---|---|---|
## Controls Checked
[PO status, vendor, currency, quantity, price, line amount, receipt coverage, approved-with-exception gate]
## Safe Release Gate
[Rows to hold, rows to route, owners, evidence still missing]
## Open Questions
[Only questions that affect payment-release safety]Use templates/exception-report.md when the user asks for a reusable review artifact.
Do not advise release until:
Positive example: "Use $invoice-three-way-match-preflight on these AP invoice, PO, and receipt exports before our payment run." The skill should run the script, flag missing receipts, PO/vendor mismatches, price/quantity variance, and produce owner-specific next steps.
Positive partial-receipt example: "The vendor shipped part of the PO and invoiced the full amount." The skill should mark invoice quantity above received quantity as high risk and route to receiving before AP release.
Negative example: "Just approve anything under $500." Do not approve live payments; produce an exception report and apply the user's documented tolerance policy.
Boundary example: "I only have an invoice PDF screenshot." Provide sample-limited observations and ask for structured invoice, PO, and receipt exports before making a payment-run decision.
Smoke-test the bundled fixture:
python3 invoice-three-way-match-preflight/scripts/invoice_three_way_match_preflight.py \
--invoices invoice-three-way-match-preflight/scripts/fixtures/invoices.csv \
--purchase-orders invoice-three-way-match-preflight/scripts/fixtures/purchase_orders.csv \
--receipts invoice-three-way-match-preflight/scripts/fixtures/receipts.csvExpected result: a Markdown report with Three-Way Match Decision, at least one hold_invoice, invoice_quantity_exceeds_received, unit_price_variance, vendor_mismatch, and closed_or_cancelled_po.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.