The only API that combines OCR + AI extraction + NIF/VAT validation + IBAN verification in a single endpoint. Built for European invoices.
Upload any European invoice. Get validated, structured JSON. No multi-step workflows, no session tokens.
PDF, JPEG, PNG, or TIFF. Up to 10MB. Any European invoice.
POST /v1/extract
OCR + LLM extraction. NIF/VAT checksum validation for 28 EU countries. IBAN MOD-97 verification. Totals cross-check.
Issuer, recipient, line items, totals, payment — all validated with per-field confidence scores.
Select a sample European invoice and explore the extracted JSON response. Hardcoded samples — no API calls.
The only invoice API with built-in EU fiscal validation.
Checksum validation for 28 EU countries. Not just extraction — verification that the tax ID is structurally valid.
MOD-97 checksum + country length check + bank code identification. BIC and bank name enrichment included.
Handles PDFs and photos. Quality detection with adaptive prompts for degraded images. Fallback model chain.
Per-field confidence (0.0–1.0) so you know exactly which data to trust. Global and per-line-item scores.
Portuguese, Spanish, French, German, Italian, English invoices. Auto-detected, no configuration needed.
One POST, one JSON response. No multi-step workflows, no session tokens, no SDKs required.
SDKs, tools, and integrations for every workflow. All open-source.
TypeScript-first, zero dependencies, file upload helper, ESM + CJS.
npm install @vericorp/invoice-extract
View on npm →
Sync + async clients, Pydantic v2 models, httpx, full type hints.
pip install vericorp-invoice-extract
View on PyPI →
Tool extract_invoice for Claude Desktop, Cursor, or any MCP client.
Add to claude_desktop_config.json
Setup guide →
3 pre-built requests, test scripts, environment variables. Import and start testing.
Import collection JSON
Download →
Offline MOD-97 validation, 80+ countries, bank BIC lookup, <5KB core.
npm install eu-iban-validator
View on npm →
Offline NIF/VAT validation for 30 countries. Checksums, format checks, zero deps.
npm install eu-tax-id-validator
View on npm →
The only invoice API with built-in NIF/VAT checksum and IBAN MOD-97 verification.
| Feature | AWS Textract | Google Doc AI | Mindee | Veryfi | VeriCorp |
|---|---|---|---|---|---|
| Price / page | $0.01 | $0.01 | $0.10 | $0.08–0.16 | €0.025–0.097 |
| NIF/VAT validation | ✗ | ✗ | ✗ | ✗ | ✓ |
| IBAN validation | ✗ | ✗ | ✗ | ✗ | ✓ |
| Structured JSON | Partial | Partial | ✓ | ✓ | ✓ |
| EU invoice focus | ✗ | ✗ | Partial | ✗ | ✓ |
| Confidence per field | ✓ | ✓ | ✓ | ✗ | ✓ |
| Image quality handling | ✗ | ✗ | ✗ | ✗ | ✓ |
| Single endpoint | ✗ | ✗ | ✓ | ✓ | ✓ |
| Free tier | ✗ | ✗ | 250/mo | ✗ | 25/mo |
curl -X POST "https://vericorp-invoice.p.rapidapi.com/v1/extract" \ -H "X-RapidAPI-Key: YOUR_API_KEY" \ -H "X-RapidAPI-Host: vericorp-invoice.p.rapidapi.com" \ -F "file=@invoice.pdf" \ -F 'options={"validate_nif":true,"validate_iban":true}'
import { VeriCorpInvoice } from '@vericorp/invoice-extract'; const client = new VeriCorpInvoice({ apiKey: 'YOUR_API_KEY' }); const result = await client.extract( fs.readFileSync('invoice.pdf'), { validateNif: true, validateIban: true } ); console.log(result.issuer.tax_id_valid); // true console.log(result.totals.total); // 13542.30 console.log(result.payment.iban_valid); // true
from vericorp_invoice import VeriCorpInvoice client = VeriCorpInvoice(api_key="YOUR_API_KEY") result = client.extract( "invoice.pdf", validate_nif=True, validate_iban=True ) print(result.issuer.tax_id_valid) # True print(result.totals.total) # 13542.30 print(result.payment.iban_valid) # True
Start free. Scale as you grow. All tiers include full extraction + validation. No feature gating.
Multi-page PDFs count as 1 extraction. No per-page charges.
Upload an invoice, get validated structured JSON. No credit card required.