Invoice statuses
Every invoice has a status that tells you where it is in the workflow. This page explains each status and what to do.

Invoices list showing the Status column with multiple invoices in different states.
Status reference
| Status | What it means | What to do |
|---|---|---|
| Processing | The agent is reading the document. | Wait. Usually 30 to 60 seconds. |
| Pending Validation | Extraction is complete and the invoice is ready for human review. Validation rules and integration hooks have run; if anything blocking surfaced, it shows as a validation failure notice on the invoice. | Open the invoice, review the extracted data, correct any errors, resolve any notices. Click Validate after corrections to re-run rules. See Soft Revalidation. |
| Pending Approval | The invoice is routed for approval. | If you are an approver, approve or reject. Otherwise, wait. |
| On Hold | Temporarily paused. | Open the invoice and resume when ready. |
| Approved | All required approvals completed. The invoice is ready for ERP export. | No action. |
| Cancelled | Cancelled by user action. | Terminal. |
| Voided | Voided and no longer valid. | Terminal. Voided invoices remain for audit. |
| Paid | Payment completed (synced from your ERP). | Terminal. |
Status flow
The typical path:
Processing → Pending Validation → Pending Approval → Approved → Paid
Common detours:
- The invoice can be put On Hold from any non-terminal status and resumed later.
- An approver rejecting an invoice routes it back through the approval chain or returns it to Pending Validation for correction, depending on the policy.
- An invoice can be moved to Cancelled or Voided from most statuses.
How status changes happen
Automatic transitions
- Processing → Pending Validation when extraction finishes.
- Approved → Paid when payment status comes back from your ERP (if your integration supports payment sync).
Manual transitions
- Pending Validation → Pending Approval when you submit for approval.
- Pending Approval → Approved when the last required approver approves.
- Any non-terminal status → On Hold when you pause the invoice.
- On Hold → previous status when you resume.
If an invoice is stuck somewhere unexpected, open the Activity tab for the full history. If you cannot figure out why it is stuck, email support@usemod.ai.
Older Mod AI deployments surfaced statuses called Needs Review, Synced, Error, and Rejected. The platform consolidated those into the eight current statuses above. If you have an invoice in a legacy state from before that change, contact support - the team can move it forward into the current model without losing audit history.
Filter by status
Use filters on the invoices list to find invoices in specific statuses fast. See Searching and Filtering.