Repository navigation
Return Fudo expense, category and provider fields; add stock and supplier tools - #1517
Merged
Merged
Conversation
…lier tools Fudo answers expenses and expense categories with ids only, and providers with the name only, unless the request names the fields. The connector now asks for them, so amount, date, receipt number, status and the purchased lines (expense items) come back. New read tools: fudo_get_ingredient, fudo_get_provider, fudo_list_roles. New filters: expense status, payment expense_id, ingredient ids. New writes, installed off: fudo_update_expense, fudo_create_expense_payment, fudo_create_expense_category, fudo_create_provider, fudo_update_provider, fudo_update_ingredient. The instructions explain that the API cannot create expense items and how to book purchases into stock.
helpcodeai
enabled auto-merge (squash)
November 4, 2026 18:22
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Fixes the Fudo connector reads and adds the tools a customer needs to load purchase invoices.
Why
A Cloud customer reported that
fudo_list_expenses,fudo_get_expenseandfudo_list_expense_categoriesreturn only ids. I checked the official spec (https://api.fu.do/v1alpha1/openapi.yml) and the customer's account with read-only calls. Fudo leaves out attributes unless the request names them infields[...]. This hits expenses and expense categories, which come back with ids only, and providers, which come back with the name only. The connector now asks for the fields itself.The customer also asked for expense items that update stock. The API cannot do that:
POSTandPATCH /expensesaccept no items, and there is no endpoint for them. Items can only be read. The instructions now say so, andfudo_update_ingredientlets the model book a purchase into stock.Changes
fudo_get_ingredient,fudo_get_provider,fudo_list_roles(to explain a 403).status, paymentexpense_id(sale payments and expense payments are mixed), ingredientids.fudo_update_expense,fudo_create_expense_payment,fudo_create_expense_category,fudo_create_provider,fudo_update_provider,fudo_update_ingredient.include=unit), duplicate check.Cloud and self-hosted behave the same: this only changes the adapter JSON.
Tests
node scripts/validate-adapters.mjs --warn(root): no Fudo warnings.node scripts/regenerate-catalog.mjs(root): 710 adapters, no catalog.ts diff.node scripts/adapter-count.mjs --check(root): OK.npx jest src/adapters/intl/fudo.live.spec.ts --maxWorkers=2(packages/backend): 8 passed, including 2 new static tests.src/adapters/catalog.spec.tscould not run locally. The shared node_modules has a Prisma client generated from another branch, so the suite fails to compile inoauth2-token.service.ts, which this PR does not touch. CI runs it.