AGENT SKILL

invoice-reconciliation

Activate for: invoice, reconcile, reconciliation, three-way match, two-way match, invoice processing, AP, accounts payable, purchase order match, goods receipt match, invoice exception, price variance, quantity variance, duplicate invoice, invoice approval, invoice hold, invoice dispute, PO mismatch, over-invoiced, under-delivered, missing PO. NOT for: bank reconciliation (use banking plugin), vendor assessment (use vendor-assessment), spend category analysis (use spend-analysis).

适用职业财务
License 许可
Apache-2.0
最近更新
2026-08-25
Stars
★ 0
Forks
0

01 前言 Front Matter

name
invoice-reconciliation
license
Apache-2.0
metadata
{ "author": "Panaversity", "version": "1.0", "plugin-commands": "/invoice-reconcile", "mcp-integrations": "ERP, AP system, email-inbox MCP" }
description
Activate for: invoice, reconcile, reconciliation, three-way match, two-way match, invoice processing, AP, accounts payable, purchase order match, goods receipt match, invoice exception, price variance, quantity variance, duplicate invoice, invoice approval, invoice hold, invoice dispute, PO mismatch, over-invoiced, under-delivered, missing PO. NOT for: bank reconciliation (use banking plugin), vendor assessment (use vendor-assessment), spend category analysis (use spend-analysis).

03 SKILL.md 正文

UNIVERSAL RULES (apply to every reconciliation task)

  • NEVER approve an invoice that has not been matched against a PO (above the configured materiality threshold)
  • NEVER process a duplicate invoice -- always check against prior submissions before authorising payment
  • ALWAYS include specific recommended actions with deadlines in every output -- observations without actions are not acceptable

THREE-WAY MATCH ENFORCEMENT

Three-way match requires: Document 1: Invoice (from vendor) Document 2: Purchase Order (from ERP) Document 3: Goods Receipt / Service Confirmation (from operations)

TWO-WAY MATCH (acceptable only for):

  • Services (no goods receipt exists)
  • Utilities (no PO in advance)
  • Invoices below configured materiality threshold

NEVER approve a direct materials invoice without goods receipt confirmation.

MANDATORY OUTPUT HEADER

TASK:          [e.g. Invoice Reconciliation -- INV-2024-0847]
VENDOR TIER:   [Strategic / Tactical / Commodity / Bottleneck / Unclassified]
CONFIGURATION: [Loaded: supply-chain.local.md / Not configured]
DATA SOURCES:  [ERP / AP system / Manual input]

RECONCILIATION WORKFLOW -- FOUR-STAGE PROCESS

Stage 1: Document Intelligence

Extract structured data from invoice (PDF, email, EDI, manual entry):

MANDATORY FIELDS TO EXTRACT: Vendor name: [Exact legal name -- match against vendor master] Vendor ID: [Cross-reference ERP vendor master] Invoice number: [For duplicate detection] Invoice date: [Check against late submission rules] PO reference: [Required for matching -- flag if absent] Line items: [Description / quantity / unit / unit price / line total] Total amount: [Verify arithmetic: sum of lines + tax = total] Payment terms: [Match against contracted terms] Bank details: [Flag if different from vendor master -- fraud risk]

VALIDATION CHECKS AT EXTRACTION: Arithmetic check: do line items sum to invoice total? Vendor name match: does invoice name match ERP vendor master? Duplicate check: has this invoice number been submitted before? Late submission: is invoice date within the configured day limit? Bank detail change: are bank details the same as vendor master?

FLAG IMMEDIATELY IF: RED Bank details differ from vendor master -> FRAUD ALERT -- do not process; contact vendor by phone (not email) to verify; escalate to Finance Director RED Duplicate invoice number -> REJECT; notify vendor RED Invoice > configured days old -> REJECT; notify vendor of late submission policy RED Vendor not in approved vendor list -> HOLD; escalate to Procurement

Stage 2: Three-Way Match

MATCH EACH LINE ITEM AGAINST: Document A: Invoice line (what vendor claims to be owed) Document B: Purchase Order line (what was authorised to buy) Document C: Goods Receipt / Service Confirmation (what was actually received)

QUERY ERP via MCP:

  1. Find PO by reference number
  2. Retrieve all PO line items with authorised quantities and prices
  3. Find Goods Receipt(s) matched to this PO
  4. Retrieve confirmed received quantities from GR

MATCH CLASSIFICATION PER LINE ITEM:

MATCHED -- all within tolerance Invoice qty = GR qty (within tolerance) Invoice price = PO price (within tolerance) -> Auto-approve this line

PRICE VARIANCE -- OUTSIDE TOLERANCE Invoice price != PO price, outside tolerance -> Route to Procurement; require vendor price justification

PRICE VARIANCE -- WITHIN TOLERANCE Invoice price != PO price, but within configured tolerance -> Auto-approve with flag to Finance (audit trail)

QUANTITY VARIANCE -- OVER-INVOICED Invoice quantity > GR confirmed quantity -> Hold over-invoiced portion; investigate with warehouse/vendor

QUANTITY VARIANCE -- GOODS RECEIPT PENDING Invoice quantity matches PO but GR not yet received/confirmed -> Hold invoice; alert warehouse for GR confirmation; set 5-day follow-up reminder

PO NOT FOUND Invoice references a PO that does not exist in ERP -> Hold entire invoice; route to Procurement for retrospective PO or rejection decision

DUPLICATE DETECTED Same vendor, same amount, within configured days of prior invoice -> Reject; notify vendor; log as potential fraud attempt if persistent

UNAUTHORISED CHARGE Line item has no corresponding PO line -> Reject this line; notify vendor; request credit note

Stage 3: Exception Routing

FOR EACH EXCEPTION TYPE, APPLY ROUTING RULES:

Price variance -- within tolerance: Action: Auto-approve with Finance notification Log: Exception register (for pattern monitoring) Owner: Finance (automated)

Price variance -- outside tolerance (< escalation threshold): Action: Route to category manager for approval Deadline: 3 business days Owner: Category manager + Procurement

Price variance -- outside tolerance (> escalation threshold): Action: Route to CPO for approval Deadline: 5 business days Owner: CPO

Quantity variance -- over-invoiced: Action: Hold excess; investigate with warehouse team Deadline: 5 business days to confirm GR or reject Owner: Warehouse + Finance

GR pending: Action: Hold invoice; alert warehouse; 5-day auto-reminder If unresolved at 10 days: escalate to Operations Manager Owner: Warehouse -> Finance on resolution

PO not found (> materiality threshold): Action: Route to Procurement for retrospective PO or rejection Deadline: 3 business days Owner: Procurement

Duplicate invoice: Action: Reject immediately; notify vendor; log incident Owner: Finance (automated)

Fraud alert (bank details changed): Action: STOP all processing; escalate to Finance Director immediately Owner: Finance Director

Stage 4: Audit and Pattern Monitoring

LOG FOR EVERY INVOICE:

  • Invoice number, vendor, date, amount
  • Match outcome: APPROVED / EXCEPTION TYPE / REJECTED
  • Exception resolution: action taken, approver, date resolved
  • Payment amount approved vs. original invoice amount

PATTERN DETECTION (run weekly): Same exception from same vendor > 3x in 30 days: -> Flag as systematic issue; recommend vendor data alignment meeting

Price variance on same line item > 2 consecutive invoices: -> Flag as contract non-compliance; initiate commercial review

GR pending rate > 15% of invoices from one vendor: -> Flag as goods receipt process issue (warehouse or vendor despatch?)

RECONCILIATION OUTPUT FORMAT

INVOICE RECONCILIATION: [Invoice Number] | [Vendor]
================================================================
Invoice date:  [Date]   PO matched:    [PO number or NOT FOUND]
Processing:    [Date]   GR matched:    [GR number or PENDING/NONE]

LINE ITEM ANALYSIS:
Item [N]: [Description] -- [Qty] @ [Price]
  PO price:      [X]    Invoice price: [X]
  Price variance: [+/-X] ([+/-X]%)
  GR qty:        [N] confirmed
  Invoice qty:   [N]
  Qty variance:  [+/-N units]
  TOLERANCE:     [+/-X% configured for this category]
  STATUS:        [MATCHED / WITHIN TOLERANCE / EXCEPTION TYPE]
  Action:        [Specific action required]

RECONCILIATION SUMMARY:
Approved for payment:    [X]
On hold (pending GR):    [X]
Disputed (variance):     [X]
Rejected (unauthorised): [X]
Original invoice total:  [X]
RECOMMENDED PAYMENT:     [X]

VENDOR COMMUNICATION: [Drafted -- see /vendor-communicate]
AUDIT LOG:             [Saved to exception register]
================================================================

NEVER DO THESE

  • NEVER approve a direct materials invoice without a goods receipt confirmation
  • NEVER process an invoice where bank details differ from vendor master without phone verification -- this is the primary invoice fraud vector
  • NEVER approve a duplicate invoice -- always reject and notify vendor
  • NEVER approve a PO-not-found invoice above materiality threshold without a retrospective PO or documented exception approval
  • NEVER process an invoice from a vendor not on the approved vendor list without Procurement escalation
  • NEVER mark a GR as confirmed without system evidence -- verbal confirmation from warehouse is not sufficient for audit purposes

ALL OUTPUTS REQUIRE REVIEW BY A QUALIFIED PROFESSIONAL BEFORE USE IN BUSINESS DECISIONS.

04 同仓库更多 Skills

JiayiV
JiayiV/question_mixing

webmcpify

Make a web app agent-ready — propose a WebMCP tool manifest, integrate, verify in a real browser, heal; unrelated code stays untouched. Use for "webmcpify", "add WebMCP", or "expose app actions to AI agents".

★ 0
JiayiV
JiayiV/question_mixing

vardoger-analyze

Use when the user asks to personalize the GitHub Copilot CLI assistant, adapt Copilot to their style, use vardoger, or analyze their Copilot CLI conversation history. Reads the local session directory at `~/.copilot/session-state/`, extracts recurring preferences and conventions, and writes a fenced personalization block into `~/.copilot/copilot-instructions.md`. Runs entirely on the user's machine via the local `vardoger` CLI (`pipx install vardoger`); no network calls and no uploads. Triggers: 'personalize my copilot', 'analyze my copilot history', 'tailor copilot to me', 'run vardoger', 'update my copilot instructions from history', 'make copilot learn my style'.

★ 0
JiayiV
JiayiV/question_mixing

transloadit-media-processing

Process media files (video, audio, images, documents) using Transloadit. Use when asked to encode video to HLS/MP4, generate thumbnails, resize or watermark images, extract audio, concatenate clips, add subtitles, OCR documents, or run any media processing pipeline. Covers 86+ processing robots for file transformation at scale.

图像与多媒体Skill与智能体开发
★ 0
JiayiV
JiayiV/question_mixing

terraform-azurerm-set-diff-analyzer

Analyze Terraform plan JSON output for AzureRM Provider to distinguish between false-positive diffs (order-only changes in Set-type attributes) and actual resource changes. Use when reviewing terraform plan output for Azure resources like Application Gateway, Load Balancer, Firewall, Front Door, NSG, and other resources with Set-type attributes that cause spurious diffs due to internal ordering changes.

运维与部署
★ 0
JiayiV
JiayiV/question_mixing

technical-job-search

Use this skill when a software engineer asks for help with job search tasks: parsing or analyzing a job description, tailoring a CV/resume, writing a cover letter, evaluating a job offer, or drafting a post-interview follow-up email. Do not activate for general career advice unrelated to an active job search action.

内容创作者人力资源写作与文案
★ 0
JiayiV
JiayiV/question_mixing

steno-mode

Shorthand-first response compression that cuts ~40% of response tokens while preserving technical precision and exact literals. Use when the user says "steno mode", "shorthand mode", "compressed responses", "token reduction", "brief structured output", or invokes /steno. Supports four compression levels: lite, brief, court, machine. Do not trigger for requests needing polished prose such as onboarding/tutorial content, stakeholder or customer-facing copy, or teaching-focused explanations.

★ 0