Invoice processing
Skill BuilderCed/agent-skills/skills/documents/invoice-processing
31 cross-platform AI agent skills for regulated industries & underserved markets. EU compliance (AI Act, NIS2, DORA, GDPR), French professional (accounting, tax, notary, real estate), security audit, agent evaluation, Africa mobile money, offline-first.
npx -y skills add BuilderCed/agent-skills --skill invoice-processingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Extract, validate, and classify invoices from PDF, Factur-X, and UBL formats. Multi-country support with field mapping and anomaly detection.
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
3.1 KB, as published. Nobody here has run it
Invoice Processing
When to Use
- Extracting data from PDF invoices
- Validating Factur-X or UBL structured invoices
- Classifying invoices by type, vendor, or account
- Detecting anomalies (duplicates, unusual amounts, missing fields)
- Mapping invoice fields to accounting entries
Extraction Pipeline
1. INPUT: PDF / Factur-X / UBL / image
2. DETECT FORMAT: structured XML embedded? → parse directly
No XML? → OCR + field extraction
3. EXTRACT FIELDS: map to canonical schema
4. VALIDATE: required fields, amounts, VAT consistency
5. CLASSIFY: expense category, accounting account, vendor
6. OUTPUT: structured JSON + confidence scores
Canonical Invoice Schema
{
"invoice_number": "FA-2026-042",
"invoice_date": "2026-04-15",
"due_date": "2026-05-15",
"supplier": {
"name": "Fournisseur SAS",
"tax_id": "FR12345678901",
"address": "12 rue Example, 75001 Paris"
},
"buyer": {
"name": "Client SARL",
"tax_id": "FR98765432109"
},
"lines": [
{
"description": "Prestation conseil",
"quantity": 5,
"unit_price": 200.00,
"vat_rate": 20.0,
"line_total": 1000.00
}
],
"subtotal": 1000.00,
"vat_amount": 200.00,
"total": 1200.00,
"currency": "EUR",
"payment_terms": "30 jours net"
}
Validation Rules
| Rule | Check | Severity |
|---|---|---|
| Required fields | invoice_number, date, supplier, total | Critical |
| Math consistency | sum(lines) = subtotal, subtotal + VAT = total | Critical |
| VAT rate validity | Rate matches country standard rates | Warning |
| Duplicate detection | Same number + supplier + amount | Critical |
| Date logic | due_date >= invoice_date | Warning |
| Currency | Valid ISO 4217 code | Warning |
Anomaly Detection
| Anomaly | Signal | Action |
|---|---|---|
| Duplicate invoice | Same number + supplier + amount +/- 5% | Block, flag for review |
| Round amount | Total is exact round number (1000, 5000) | Flag (common in fraud) |
| Weekend/holiday date | Invoice dated on non-business day | Flag |
| Unusual amount | > 3 standard deviations from vendor average | Flag for review |
| Missing VAT | Taxable transaction with 0% VAT | Flag, check exemption |
What This Skill Does NOT Do
- Does not perform OCR (uses existing OCR output or structured XML)
- Does not approve or pay invoices (validation and extraction only)
- Does not connect to ERP systems (outputs structured data)
- Does not handle tax compliance (see
fr-comptabilite)