Metadata-Version: 2.4
Name: vericorp-invoice-extract
Version: 1.0.0
Summary: Python SDK for the VeriCorp Invoice Extract API — extract structured data from European invoices using AI
Project-URL: Homepage, https://github.com/vericorptest-collab/vericorp-invoice-python
Project-URL: Documentation, https://rapidapi.com/vericorptestcollab/api/vericorp-invoice-extract
Author: VeriCorp
License-Expression: MIT
Keywords: ai,europe,extract,iban,invoice,ocr,pdf,vat,vericorp
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Python: >=3.9
Requires-Dist: httpx>=0.24
Requires-Dist: pydantic>=2.0
Description-Content-Type: text/markdown

# vericorp-invoice-extract

Official Python SDK for the [VeriCorp Invoice Extract API](https://rapidapi.com/vericorptestcollab/api/vericorp-invoice-extract) — extract structured data from European invoices using AI.

## Install

```bash
pip install vericorp-invoice-extract
```

## Quick Start

```python
from vericorp_invoice import VeriCorpInvoice

client = VeriCorpInvoice(api_key="your-rapidapi-key")

# Extract data from an invoice
invoice = client.extract("invoice.pdf")

print(invoice.issuer.name)
print(invoice.totals.total_amount)
print(invoice.line_items)
```

## Async Support

```python
from vericorp_invoice import AsyncVeriCorpInvoice

async with AsyncVeriCorpInvoice(api_key="your-rapidapi-key") as client:
    invoice = await client.extract("invoice.pdf")
```

## API

### `VeriCorpInvoice(api_key, *, timeout=30.0, max_retries=1)`

### Methods

- **`extract(file, *, validate_nif=True, validate_iban=True, include_raw_text=False)`** — Extract structured data from an invoice (PDF, PNG, JPG, WebP)
- **`health()`** — API health and budget status
- **`supported_formats()`** — List supported file formats and limits

### Error Handling

```python
from vericorp_invoice import VeriCorpInvoice
from vericorp_invoice.errors import (
    InvalidFileError,
    RateLimitError,
    ExtractionFailedError,
)

try:
    invoice = client.extract("invoice.pdf")
except InvalidFileError:
    print("Invalid file format")
except RateLimitError:
    print("Rate limited, try again later")
except ExtractionFailedError:
    print("AI could not extract data")
```

## License

MIT
