Update an account
PUT
https://app.speybooks.com/api/v1/accounts/{id}Updates one or more fields on an existing account. Only the fields included in the request body are modified (partial update semantics).
System accounts can only have their isActive flag changed; any
other modification is rejected. Account code changes are validated
for uniqueness within the organisation.
Path parameters
idstringrequiredPrefixed account ID (e.g. acc_1200).
Body parameters
accountTypestringoptionalAccount type. Cannot be changed on system accounts.
assetliabilityequityrevenueexpensecodestringoptionalNew account code (max 20 characters). Must be unique within the organisation.
controlTypestringoptionalnullableControl account type identifier (e.g. trade_debtors).
defaultVatRateintegeroptionalnullableDefault VAT rate as a whole percentage (e.g. 20 for 20%).
descriptionstringoptionalnullableUpdated description (max 500 characters).
isActivebooleanoptionalWhether the account is active. This is the only field editable on system accounts.
isControlAccountbooleanoptionalWhether this is a control account.
namestringoptionalNew display name (max 200 characters).
parentIdstringoptionalnullablePrefixed ID of the new parent account (e.g. acc_100), or null to make a root account.
Response
200Account updated successfully.
Show response fields
updatedbooleanAlways true on success.
Error codes
400Validation failed, invalid ID format, or cannot modify system account.
404Account not found.
409An account with this code already exists in the organisation.