feat(quickbooks): add master data and simple CRUD - #6119
feat(quickbooks): add master data and simple CRUD#6119BillLeoutsakosvl346 wants to merge 10 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
PR SummaryMedium Risk Overview The QuickBooks block, integration catalog, OAuth copy, and docs are aligned with grouped operation labels and the new inputs (record type, read mode, mutation fields, conditional pagination). Security redaction is adjusted so workflow-state tokens such as Templates and block skills shift toward onboarding, catalogue maintenance, and master-data audit rather than vendor-only read workflows. Reviewed by Cursor Bugbot for commit 30c9e12. Bugbot is set up for automated code reviews on this repo. Configure here. |
Greptile SummaryAdds consolidated QuickBooks master-data reads and explicit customer, vendor, and item mutations.
Confidence Score: 4/5This PR should not merge until legacy vendor-list workflows remain executable and Employee responses are filtered before entering workflow or agent output. Removing the persisted operation ID creates wrong-tool or missing-tool execution paths, and raw Employee API objects can propagate sensitive fields that the public output schema intentionally omits. Files Needing Attention: apps/sim/blocks/blocks/quickbooks.ts, apps/sim/tools/quickbooks/read_master_data.ts, apps/sim/tools/quickbooks/utils.ts, apps/sim/tools/quickbooks/types.ts
|
| Filename | Overview |
|---|---|
| apps/sim/blocks/blocks/quickbooks.ts | Expands the block to ten operations and maps their inputs, but removing the legacy vendor-list operation breaks persisted workflows. |
| apps/sim/tools/quickbooks/read_master_data.ts | Adds list and by-ID reads for five entity types, including Employee records whose raw sensitive properties are not sanitized. |
| apps/sim/tools/quickbooks/utils.ts | Adds shared entity, mutation, parsing, and validation helpers; the entity transform passes complete provider objects through unchanged. |
| apps/sim/tools/quickbooks/create_customer.ts | Adds a bounded, non-retrying customer creation request with normalized optional fields. |
| apps/sim/tools/quickbooks/update_customer.ts | Adds explicit SyncToken-based sparse customer updates and active-status changes. |
| apps/sim/tools/quickbooks/create_vendor.ts | Adds vendor creation with normalized contact, address, account, and 1099 fields. |
| apps/sim/tools/quickbooks/update_vendor.ts | Adds explicit SyncToken-based sparse vendor updates and active-status changes. |
| apps/sim/tools/quickbooks/create_item.ts | Adds Service and Non-inventory item creation with account-reference and purchase-field validation. |
| apps/sim/tools/quickbooks/update_item.ts | Adds sparse item updates with SyncToken concurrency control and numeric validation. |
| apps/sim/tools/quickbooks/types.ts | Expands QuickBooks entity and output types, including sensitive Employee properties that can remain present at runtime. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
Workflow[QuickBooks block] --> Selector{Operation}
Selector --> Read[Master-data read]
Selector --> Mutate[Customer, vendor, or item mutation]
Read --> QB[QuickBooks Online API]
Mutate --> QB
QB --> Transform[Response transform]
Transform --> Output[Workflow output]
Reviews (1): Last reviewed commit: "docs(quickbooks): document master data a..." | Re-trigger Greptile
6ccec84 to
f62cd5f
Compare
f62cd5f to
bf2a856
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 3 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 4fd99eb. Configure here.
2bb5623 to
30c9e12
Compare

Summary
Adds the first stacked QuickBooks expansion on top of
feat/quickbooks-integration:SyncTokensparse updatesThe block now exposes exactly ten operations. This PR does not add arbitrary queries, filtering infrastructure, remote selectors, inventory/category writes, or new OAuth scopes.
Validation
git diff --checkSyncTokenfaults verifiedSandbox note
The local environment had one connected QuickBooks company, so the existing multi-company isolation behavior was not re-exercised in this child PR. No credentials or unsanitized accounting records are committed.
Stack
feat/quickbooks-integrationat the frozen parent SHA970d3b1e4feat/quickbooks-01-master-dataThis PR must not be merged automatically.