Skip to content

What Katara does not do

Where the money sits depends on how you pay.

Account credits are a balance Katara keeps for your account. A request paid with credits holds what it might cost while it runs, then is charged for what was delivered, and the rest is released; a request that fails is charged nothing. Credits pay for Katara’s own models and, while Katara Community is on, for Community providers, which Katara pays itself so the provider never learns who you are. Purchased credits do not expire. Signup credit is spent first, expires 90 days after it is granted, and cannot be withdrawn or refunded.

USDC stays in an account only your passkey controls, and the prepaid balance in the settlement contract can only ever be debited for replies you received or paid back to you. Nobody at Katara can move it anywhere else. Withdrawals pay out after a one-hour delay so replies in flight are charged first; nothing is ever served against money that is not already in the contract.

Two rules hold whatever you pay with. They are enforced in code and covered by tests that must keep passing.

Your prompts and replies never go on-chain or into our logs. Some Katara features keep them: the chat app keeps your conversations under your account, and any other feature that needs content keeps it in a store of its own, with its own retention period. The marketplace itself records tokens, price, timing, and who served the request. Providers on Katara Community see the request they serve and nothing about who sent it, and they may not keep it.

Providers never learn who you are. Requests reach a provider under a job ticket, not an account. The provider is paid from the settlement contract, not by you.

When a request names Katara Cortex, the text of its latest message, cut to its first 300 words, goes to a decision model that Cloudflare runs for us on Workers AI. It answers three questions: does the request need step-by-step reasoning, is it code, conversation or extraction, and is it asking about Katara. The answers decide whether Katara’s own models think before replying and which model fits. In Katara’s chat apps, a question about Katara also gets passages from Katara’s documentation. Cloudflare already carries every request on its way to Katara, and it does not store or train on what the model reads. Requests that name a model, or set thinking themselves, skip the first two questions; in Katara’s chat apps the decision model still asks whether the question is about Katara.

Every reply is backed by a receipt the provider signs. The router checks the receipt against what it observed, token by token, before anything is settled. A receipt that does not match is not paid, and the provider is struck.

The contracts and services were reviewed against adversarial scenarios before launch, with every high-severity finding fixed. Report a vulnerability to [email protected].