FireFly III icon

FireFly III

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

Overview

This node integrates with the FireFly III API to create a new financial account within the user's FireFly III instance. It is useful for automating the management of personal or organizational finances by programmatically adding accounts such as assets, expenses, liabilities, cash wallets, credit cards, and more.

Typical use cases include:

  • Automatically setting up new accounts when onboarding new users or clients.
  • Synchronizing external financial systems with FireFly III by creating corresponding accounts.
  • Batch creation of multiple accounts via workflows.

For example, you could create an "Asset" type account named "Savings Account" with a specific currency and opening balance, enabling subsequent transactions to be tracked against it.

Properties

Name Meaning
X-Trace-ID A unique UUID identifier for the request, used for debugging and tracing. Example: 123e4567-e89b-12d3-a456-426614174000.
Name The name of the new account to be created. This is a required field.
Account Type The type/category of the account. Options include: Asset, Expense, Import, Revenue, Cash, Liability, Liabilities, Initialbalance, Reconciliation. Required field.
Account Fields Additional optional fields to specify detailed account information. These include:
- Update Account Name (Only for updates, not creation) New name for the account.
- 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 initial balance of the account, e.g., -1012.12.
- Opening Balance Date Date of the opening balance in ISO format, 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 if the account is active. Default is true.
- Account Order Numeric order for sorting accounts, e.g., 1.
- Include in Net Worth Boolean indicating whether to include this account in net worth calculations. Default is true.
- Account Role Role of the account, mandatory if type is asset. Options: Default Asset, Shared Asset, Saving Asset, Credit Card, Cash Wallet, None.
- Credit Card Type Type of credit card, mandatory if applicable. Options: Monthly Full, None.
- Monthly Payment Date Mandatory if account role is credit card. Specifies the date when credit card payments are requested by the bank.
- Liability Type Mandatory if type is liability. Options: Loan, Debt, Mortgage, None.
- Interest Interest percentage for liability accounts, e.g., 5.3.
- Interest Period Period for interest calculation on liability accounts. Options: Monthly, Quarterly, Yearly, None.
- Notes Additional notes about the account.
- 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 node outputs a JSON object representing the newly created account as returned by the FireFly III API. This typically includes all details of the account such as its unique ID, name, type, balances, currency, status, and any other metadata provided by the API.

No binary data output is produced by this operation.

Example output structure (simplified):

{
  "data": {
    "id": "123",
    "name": "Savings Account",
    "type": "asset",
    "iban": "GB98MIDL07009312345678",
    "bic": "BOFAUS3N",
    "account_number": "7009312345678",
    "opening_balance": "-1012.12",
    "currency_code": "EUR",
    "active": true,
    "notes": "Some example notes"
    // ... other account details
  }
}

Dependencies

  • Requires an authenticated connection to the FireFly III API using an appropriate API authentication token or OAuth2 credentials configured in n8n.
  • The node depends on the FireFly III API being accessible and properly configured to accept account creation requests.
  • No additional external services are required beyond the FireFly III API.

Troubleshooting

  • Missing Required Fields: If the "Name" or "Account Type" properties are missing or empty, the API will reject the request. Ensure these are provided.
  • Invalid Account Type or Role: Selecting incompatible combinations (e.g., missing mandatory account role for asset type) may cause errors. Verify that required fields for the chosen account type are set.
  • Incorrect Data Formats: Fields like dates must be in ISO 8601 format; numeric fields should be valid numbers. Invalid formats can lead to API errors.
  • Authentication Errors: If the API key or OAuth token is invalid or expired, the node will fail to authenticate. Check credentials configuration.
  • API Rate Limits or Connectivity Issues: Network problems or rate limiting by the FireFly III server can cause failures. Retry after some time or check network connectivity.
  • X-Trace-ID Usage: Providing a unique X-Trace-ID helps trace and debug requests on the server side. If troubleshooting, consider supplying this value.

Links and References

Discussion