FireFly III icon

FireFly III

Read, update, write and delete data using the powerful FireFly III API

Overview

The "Update Account" operation in the Accounts API allows users to modify existing account details within the FireFly III system. This node is useful for keeping account information current, such as updating bank account numbers, changing account names, adjusting balances, or modifying account roles and statuses.

Common scenarios include:

  • Correcting or updating an account's IBAN or BIC after a bank change.
  • Changing the account name to reflect a new purpose or owner.
  • Adjusting opening balances or virtual balances to correct bookkeeping errors.
  • Activating or deactivating accounts based on their usage status.
  • Updating credit card details like payment dates or types.
  • Modifying account roles (e.g., asset type) or liability specifics (e.g., loan interest).

Practical example: A user wants to update the opening balance and currency code of a savings account after receiving updated financial statements from their bank.

Properties

Name Meaning
X-Trace-ID A unique UUID identifier for the request, used for debugging and tracing. Example: 123e4567-e89b-12d3-a456-426614174000.
Account ID The unique identifier of the account to update. This is required.
Account Fields Collection of fields to update for the account. These include:
- Update Account Name New name for the account (only when updating, not creating).
- IBAN International Bank Account Number, e.g., GB98MIDL07009312345678.
- BIC Bank Identifier Code, e.g., BOFAUS3N.
- Account Number Account number, e.g., 7009312345678.
- Opening Balance The opening balance amount, e.g., -1012.12.
- Opening Balance Date Date of the opening balance, e.g., 2018-09-17T12:46:47+01:00.
- Virtual Balance Virtual balance amount, e.g., 123.45.
- Currency ID Currency identifier; use either this or Currency Code. Defaults to user's default currency if omitted.
- Currency Code Currency code (e.g., USD, EUR); use either this or Currency ID. Defaults to user's default currency if omitted.
- Account Active? Boolean indicating whether the account is active. Example: false.
- Account Order Numeric order of the account, e.g., 1.
- Include in Net Worth Boolean indicating if the account should be included in net worth calculations. Example: true.
- Account Role Role of the account with options: Default Asset, Shared Asset, Saving Asset, Credit Card, Cash Wallet, or None. Mandatory if the account type is asset.
- Credit Card Type Type of credit card with options: Monthly Full or None.
- Monthly Payment Date Required if account role is credit card; specifies the date when credit card payments are requested by the bank.
- Liability Type Specifies liability type with options: Loan, Debt, Mortgage, or None. Mandatory if account type is liability.
- Interest Interest percentage for liabilities, e.g., 5.3.
- Interest Period Period for interest calculation with options: Monthly, Quarterly, Yearly, or None.
- Notes Additional notes about the account. Example: Some example notes.
- Location Latitude Latitude coordinate of the account's location, e.g., 51.983333.
- Location Longitude Longitude coordinate of the account's location, e.g., 5.916667.
- Zoom Level Zoom level for map display, e.g., 6.

Output

The output JSON contains the updated account object as returned by the FireFly III API after the update operation. This typically includes all account details reflecting the changes made, such as updated balances, names, roles, and other metadata.

No binary data output is produced by this operation.

Dependencies

  • Requires an authenticated connection to the FireFly III API using OAuth2 or another supported authentication method.
  • The node depends on the FireFly III API being accessible and the user having appropriate permissions to update accounts.
  • No additional external services or environment variables are explicitly required beyond the API credentials.

Troubleshooting

  • Invalid Account ID: If the provided Account ID does not exist, the API will return an error. Verify that the Account ID is correct.
  • Missing Required Fields: Some fields are mandatory depending on account type (e.g., account_role for assets, liability_type and interest for liabilities). Omitting these may cause validation errors.
  • Incorrect Field Formats: Fields like dates (opening_balance_date, monthly_payment_date) must be in ISO 8601 format. Invalid formats can cause request failures.
  • Permission Denied: Ensure the API credentials have sufficient rights to update accounts.
  • Network Issues: Connectivity problems with the FireFly III API endpoint will prevent successful updates.
  • X-Trace-ID Usage: Providing a unique X-Trace-ID helps trace requests in logs for debugging but is optional.

Links and References

Discussion