Skip to content

Change control settings (OWNER only)

PATCH
/organizations/current/control-settings
curl --request PATCH \
--url https://api.invogi.com/v1/organizations/current/control-settings \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'

A partial document, merged onto the current settings and validated as a whole (unknown fields and out-of-range values are 400). Objects merge, arrays replace; null removes a per-finding action override. A company number is optional by default; uk.companyRegister.requireCompanyNumber makes UK suppliers need one. Every change is audited with the paths it touched.

Media typeapplication/json
object

Example generated

{}

Settings saved

Media typeapplication/json
object
settings
required

Settings for the deterministic controls. Percent-like values are fractions (0.05 = 5%) except VAT rates, which are percent.

object
common
object
duplicates
object
invoiceNumberSimilarityMin
number
>= 0.5 <= 1
amountNearMatchPct
number
<= 0.2
dateDistanceDaysMax
integer
<= 90
crossCurrencyAmountTolerancePct
number
<= 0.5
anomalies
object
minHistoryCount
integer
>= 2 <= 50
madMultiplier
number
>= 1 <= 10
purchaseOrders
object
unitPriceTolerancePct
number
<= 0.5
quantityTolerancePct
number
<= 0.5
fxTolerancePct
number
<= 0.2
actions

Finding type to OFF, INFORM, REVIEW or BLOCK. Absent keeps the built-in behaviour.

object
key
additional properties
string
Allowed values: OFF INFORM REVIEW BLOCK
uk
object
enabled
boolean
vatNumberCheck
boolean
vatRateCheck
boolean
allowedVatRates
Array<number>
>= 1 items <= 8 items
missingVatNumberCheck
boolean
companyRegister
object
unchecked
string
Allowed values: NEW_SUPPLIERS ALWAYS INFORM_ONLY
requireCompanyNumber
boolean
uae
object
enabled
boolean
trnCheck
boolean
vatRateCheck
boolean
allowedVatRates
Array<number>
>= 1 items <= 8 items
missingTrnCheck
boolean
version
required
string
changed
required
Array<string>

Example

{
"settings": {
"common": {
"actions": {
"additionalProperty": "OFF"
}
},
"uk": {
"companyRegister": {
"unchecked": "NEW_SUPPLIERS"
}
}
}
}

Invalid request

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"
}
}

API key lacks required scope/role

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"
}
}