meta { name: Imports seq: 7 } auth { mode: bearer } auth:bearer { token: {{token}} } docs { ## Import OCR — batch + drafts Flow : 1. POST /invoices/upload (V1 mock : `{ filenames: [...] }`) → crée un batch + N drafts. Le `MockOcrProvider` invente des champs plausibles depuis le filename. 2. GET /invoices/import-batch/:id → état courant du batch (le SPA poll pendant la review). 3. Pour chaque draft `pending` : - POST .../drafts/:draftId/validate → crée l'Invoice (résolution client identique à POST /invoices) → marque le draft `validated` - POST .../drafts/:draftId/skip → marque le draft `skipped` 4. DELETE /invoices/import-batch/:id → annule le batch entier (cascade sur les drafts ; les invoices déjà créées restent). ⚠️ V1 : OCR_PROVIDER=mock. Mistral arrive en commit séparé (cf. ADR-020). }