Skip to main content
PUT
Update Client

Authorizations

X-Auth-Token
string
header
required

Authentication token for API access

Path Parameters

clientId
string
required

Body

application/json

Updatable client DTO

typeDiscriminator
string
required
id
string

ID

name
string | null

Name. Validated in code (see ClientDtoValidator) rather than via the required modifier so a missing value surfaces a friendly validation message instead of a model-binding failure.

poRequirement
enum<string>

PO requirement

Available options:
None,
Warning,
Required
attachmentRequirement
enum<string>

Attachment requirement

Available options:
None,
Warning,
Required
invoiceFormat
enum<string>

Invoice format

Available options:
None,
Date,
PayElementId,
PoNumber,
TagGroup,
PayrollConfigId
invoiceFormatTagGroup
string | null

Invoice format tag group (e.g. "System"). Paired with InvoiceFormatTagName to identify a tag uniquely.

invoiceFormatTagName
string | null

Invoice format tag name (e.g. "Invoice No"). Required when InvoiceFormat is TagGroup; paired with InvoiceFormatTagGroup to identify a tag uniquely.

invoiceNumberFormat
enum<string>

Strategy for auto-populating Invoice Number at invoice-creation time. Default None (nothing is auto-filled); TagLookup reads a tag value.

Available options:
None,
TagLookup
invoiceNumberTagGroup
string | null

Tag group to read when InvoiceNumberFormat is TagLookup (e.g. "System"). Case-insensitive.

invoiceNumberTagName
string | null

Tag name to read when InvoiceNumberFormat is TagLookup (e.g. "Invoice No"). Case-insensitive.

subtotalGroupBy
enum<string>

Subtotal grouping for invoice line items (None, PayElement, TagGroup).

Available options:
None,
PayElement,
TagGroup
subtotalTagGroupName
string | null

Tag group name used when SubtotalGroupBy is TagGroup. Required when SubtotalGroupBy is TagGroup.

rebatePercentage
number<double> | null

Rebate percentage

vatNumber
string | null

VAT number

registrationNumber
string | null

Registration number

contacts
object[] | null

Contacts

tags
object[] | null

Tags

status
enum<string>

Client status (Active or Archived). Default Active.

Available options:
Active,
Archived
defaultRevenueAccountCode
string | null

Default revenue account code for Quick Credit (e.g. from Finance Settings). When set, Quick Credit uses this account; otherwise first active revenue account is used. Optional on Create when organisation finance defaults are configured; omitted values are auto-filled from org defaults.

defaultTaxType
string | null

Default tax type for Quick Credit (e.g. from Finance Settings). When set, Quick Credit uses this tax; otherwise first active tax rate is used. Optional on Create when organisation finance defaults are configured; omitted values are auto-filled from org defaults.

providerId
string | null

The accounting system's own id for this contact. Sending it back is what makes a re-send an update rather than a duplicate.

externalProvider
string | null

Which accounting system holds it, as the integrations hub named it.

syncStatus
enum<string> | null

Sync status with external accounting provider.

Available options:
NotSynced,
Synced,
SyncFailed,
Syncing,
NeedsAttention
lastSyncedAt
string | null

When the accounting system last synced this (UTC, ISO 8601).

The provider's own moment, not when this service recorded the answer, so it is safe to reconcile against the provider's records and does not move with our internal queue timings. Null until a send has succeeded.

syncErrorMessage
string | null

Last sync error message when SyncStatus is Failed.

billingAddress
object
physicalAddress
object

Response

OK

Billing's response envelope: the platform's (message.text + message.token, content.data + content.metadata, validationIssues) plus the fields billing sent before it (PRODLAUNCH-416). Those are deprecated, removed on 31 December 2026, and are projections of their replacements so the two cannot disagree.

message
object
required

What happened, as English text and a stable snake_case token to translate from.

content
object
validationIssues
object[] | null
errors
object[] | null
deprecated
read-only

Deprecated: the same issues as validationIssues (reasonText is reason, reasonId is reasonToken, reasonParameters is reasonTokenArguments). Read validationIssues; this will be removed.

metadata
object
deprecated

Deprecated: the same values as content.metadata. Read that; this will be removed.