This policy explains what data the QuickBooks AI Categorizer ("the Service") accesses, how it is used, and how it is protected. The Service is operated by Dilan Del Valle Mijangos, an independent software developer ("we", "us").
The Service connects to a customer's QuickBooks Online company, reads transactions that have not yet been assigned an account, proposes a category for each one, and — only after the customer approves — writes that category back to QuickBooks.
Through Intuit's official API, and only with the customer's explicit authorization, the Service reads:
The Service writes back exactly one thing: the account assigned to a transaction, and only after that assignment has been approved by the customer.
We never request, receive or store: QuickBooks passwords, bank or credit card login credentials, full card or account numbers, payroll or employee records, or Social Security numbers. Authorization happens entirely on Intuit's own pages, so credentials are never entered into, or transmitted through, our systems.
To propose a category, the Service may transmit a limited description of a transaction — typically the vendor or payee name, the description text, and the amount — to a third-party large language model provider for analysis. The provider currently in use is DeepSeek, a company based in China; Anthropic (United States) is available as an alternative and can be switched on request. Your dashboard always names the model that actually ran. This is disclosed plainly because it is a real transfer of data outside our systems.
Authorization uses OAuth 2.0. We store the access and refresh tokens issued by Intuit solely to maintain the connection, and never share them with third parties. They are deleted on request, and revoking the app in QuickBooks makes them useless immediately.
Where the tokens are kept, stated precisely:
data/qb_tokens.json) on the machine performing the run. That file is not encrypted: it is protected by operating-system file permissions and by the fact that the machine is not publicly reachable. On the scheduled runner the copy is destroyed when the run ends; on a maintainer's computer it persists until deleted.We state this plainly rather than describing the storage as encrypted, because it is not. A token in that file grants the same access to a QuickBooks company as the token in KV. Encrypting it at rest, so that the plain-text copy stops existing, is planned work and is not done yet.
Data is used exclusively to operate the Service for the customer it belongs to: proposing categories, learning that customer's correction rules, and producing reports and dashboards for that customer. We do not sell, rent, license or share customer data with any party for advertising, profiling, resale or any purpose unrelated to providing the Service.
A customer may disconnect the Service at any time from QuickBooks under Settings → Apps, or by contacting us. Revocation immediately ends all access; no further data can be read or written.
All communication with Intuit and with third-party providers occurs over encrypted HTTPS connections, and access is limited to what is required to operate the Service.
Storage is not uniformly encrypted, and we would rather say so than imply otherwise: the tokens held in Cloudflare Workers KV are encrypted at rest, while the working copy written during a scheduled run is plain text on disk, as described in section 4. The dashboard password is stored as a salted PBKDF2 hash, never in plain text.
No system is perfectly secure, and we make no claim otherwise; we do commit to notifying affected customers promptly if we become aware of a breach involving their data.
The Service is a business accounting tool and is not directed to, or intended for use by, anyone under 18.
If this policy changes in a way that materially affects how customer data is handled, connected customers will be notified before the change takes effect.
Questions, deletion requests, or privacy concerns: dilandelvallemijangos@gmail.com