actualbudget/actual · error · Error

Unable to create category: ${errorMsg}

Error message

Unable to create category: ${errorMsg}

What it means

Error "Unable to create category: ${errorMsg}" thrown in actualbudget/actual.

Source

Thrown at packages/loot-core/src/server/importers/ynab5.ts:369

  async function createCategoryWithUniqueName(params: {
    name: string;
    group_id: string;
    hidden: boolean;
  }) {
    const baseName = params.hidden ? `${params.name} (hidden)` : params.name;
    let count = 0;

    while (true) {
      const name = count === 0 ? baseName : `${baseName} (${count})`;
      try {
        const id = await send('api/category-create', {
          category: { ...params, name },
        });
        return { id, name };
      } catch (e) {
        if (count >= MAX_RETRY) {
          const errorMsg = normalizeError(e);
          throw Error('Unable to create category: ' + errorMsg);
        }
        count += 1;
      }
    }
  }

  for (const group of data.category_groups) {
    if (!group.deleted) {
      let groupId: string;
      // Ignores internal category and credit cards
      if (
        !equalsIgnoreCase(group.name, 'Internal Master Category') &&
        !equalsIgnoreCase(group.name, 'Credit Card Payments') &&
        !equalsIgnoreCase(group.name, 'Hidden Categories') &&
        !equalsIgnoreCase(group.name, 'Income')
      ) {
        const createdGroup = await createCategoryGroupWithUniqueName({
          name: group.name,

View on GitHub (pinned to d4334cb6e6)

When it happens

Trigger: Thrown at packages/loot-core/src/server/importers/ynab5.ts:369 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of actualbudget/actual@d4334cb6e6 (2026-08-29). Data as JSON: /api/errors/a1549b04882cc73a. Report an issue: GitHub.