Skip to content

List invoices for the authenticated organization, newest first

GET
/invoices
curl --request GET \
--url 'https://api.invogi.com/v1/invoices?limit=50&offset=0&decision=PASS&severity=INFO&company_source=EXPLICIT&finding_type=EXACT_DUPLICATE' \
--header 'Authorization: Bearer <token>'

Offset-paginated (limit/offset; the response carries the filtered total). decision filters on the invoice’s latest decision, severity on its highest-severity finding, and finding_type on any of its findings. All filters apply before paging.

limit
integer
default: 50 >= 1 <= 200
offset
integer
0
q
string
>= 1 characters <= 100 characters

Case-insensitive match on invoice number or supplier name

decision
string
Allowed values: PASS REVIEW BLOCK
severity
string
Allowed values: INFO LOW MEDIUM HIGH CRITICAL

Severity of the invoice’s highest-severity finding

supplier_id
string format: uuid
company_id
string format: uuid
company_source

How an invoice’s company was chosen. BUYER_UNMATCHED: the buyer VAT ID matched no company, so the invoice fell back to the default company and awaits confirmation or a move.

string
Allowed values: EXPLICIT ERP BUYER_MATCH BUYER_UNMATCHED DEFAULT

How the company was chosen; BUYER_UNMATCHED lists invoices whose buyer VAT ID matched no company and fell back to the default

finding_type
string
Allowed values: EXACT_DUPLICATE FUZZY_DUPLICATE AMOUNT_ANOMALY FREQUENCY_ANOMALY BANK_ACCOUNT_CHANGED DUPLICATE_PAYMENT PO_PRICE_VARIANCE PO_QUANTITY_VARIANCE PO_TOTAL_EXCEEDED INVALID_TOTALS EXTRACTION_LOW_CONFIDENCE STRUCTURED_INVOICE_INVALID SUPPLIER_IDENTITY_MISMATCH CURRENCY_UNKNOWN CROSS_CURRENCY_DUPLICATE PO_CURRENCY_MISMATCH

Invoices with at least one finding of this type

from
string format: date

Earliest issue date (inclusive)

to
string format: date

Latest issue date (inclusive)

Invoice page

Media typeapplication/json
object
items
required
Array<object>
object
id
required
string format: uuid
invoiceNumber
required
string
issueDate
required
string format: date
currency
required
string
>= 3 characters <= 3 characters
grossAmount
required
string
/^-?[0-9]+(\.[0-9]{1,6})?$/
status
required
string
Allowed values: UPLOADED EXTRACTING NORMALIZING ANALYZING COMPLETE FAILED
supplierId
required
string | null format: uuid
supplierName
required
string | null
companyId
required
string format: uuid
companyName
required
string
companySource
required

How an invoice’s company was chosen. BUYER_UNMATCHED: the buyer VAT ID matched no company, so the invoice fell back to the default company and awaits confirmation or a move.

string
Allowed values: EXPLICIT ERP BUYER_MATCH BUYER_UNMATCHED DEFAULT
decision
required
One of:
string
Allowed values: PASS REVIEW BLOCK
riskScore
required
integer | null
<= 100
topFinding
required
One of:
object
type
required
string
severity
required
string
Allowed values: INFO LOW MEDIUM HIGH CRITICAL
findingCount
required

All findings on the invoice

integer
openFindingCount
required

Findings still awaiting review. Reviewing a finding never changes the invoice decision.

integer
total
required

Invoices matching the filters

integer
limit
required
integer
offset
required
integer

Example

{
"items": [
{
"status": "UPLOADED",
"companySource": "EXPLICIT",
"decision": "PASS",
"topFinding": {
"severity": "INFO"
}
}
]
}

Missing or invalid API key

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: NOT_FOUND UNAUTHORIZED FORBIDDEN INVALID_REQUEST CONFLICT RATE_LIMITED USAGE_LIMIT_EXCEEDED PROCESSING_FAILED
message
required
string
request_id
required
string

Example

{
"error": {
"code": "NOT_FOUND"
}
}