Update a banking account
Scope: accounting:banks.write https://api.alladdin.com/api/v2/treasury/accounts/{id}
Updates an existing banking account (manual or bank-connected).
You can change the name, currency, accounting account, default flag, auto-sync flag and bank details (IBAN, BIC, creditor/issuer IDs).
For bank-connected accounts (synced via Bridge / Account Bridge), changing iban, bic or currency may disrupt incoming-movement matching — modify only when you understand the impact. The auto_sync flag has no effect on manual accounts.
Changing the currency does not convert existing transaction amounts — it only affects how new transactions are displayed.
Parameters
Path parameters
id string required
Banking account identifier
Request body
object name string required
Display name for the banking account
currency string required
ISO 4217 currency code
accounting_account_id string required
Linked accounting account identifier
auto_sync boolean required
Whether to automatically sync transactions from the bank
iban string | null optional
International Bank Account Number
bic string | null optional
Bank Identifier Code (SWIFT)
creditor_id string | null optional
SEPA creditor identifier for direct debits
issuer_id string | null optional
Issuer identifier for payment orders
default_account boolean optional
Whether this is the default banking account
Request
import requests
url = "https://api.alladdin.com/api/v2/treasury/accounts/{id}"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
payload = {
"name": "string",
"currency": "EUR",
"accounting_account_id": "507f1f77bcf86cd799439011",
"auto_sync": false,
"iban": "string",
"bic": "string",
"creditor_id": "string",
"issuer_id": "string",
"default_account": false
}
response = requests.put(url, headers=headers, json=payload)
print(response.json())Responses
Response
{
"id": "507f1f77bcf86cd799439011",
"name": "Main bank account",
"type": "bank",
"currency": "EUR",
"balance": "15230.50",
"iban": "ES9121000418450200051332",
"bic": "CAIXESBBXXX",
"account_number": "string",
"creditor_id": "string",
"issuer_id": "string",
"archived": false,
"synced_at": "2024-01-15T10:30:00Z",
"transactions_pending_to_reconcile": 148
}Success responses
200 Banking account updated application/json object id string
Unique identifier of the banking account
name string
Display name of the banking account
type string
Type of banking account
Enum: bank card gateway cash currency string
ISO 4217 currency code of the account
balance string
Decimal as string for precision
iban string | null
IBAN number of the bank account
bic string | null
SWIFT/BIC code of the bank
account_number string | null
Bank account number when IBAN is not available
creditor_id string | null
SEPA creditor identifier for direct debits
issuer_id string | null
Issuer identifier used in remittances
archived boolean
Whether the banking account is archived
synced_at string<date-time> | null
Timestamp of the last bank synchronization
transactions_pending_to_reconcile integer
Number of transactions pending reconciliation in the last 12 months for this account (precomputed, not a live count).
Error responses
400 Bad request application/json 401 Invalid or missing API key application/json 403 Insufficient permissions application/json 404 Banking account not found application/json 422 Validation error application/json 429 Rate limit exceeded application/json
