Stripe

Connect Stripe so Blake can answer revenue, balance and payout questions from your real numbers. Read-only by construction — no charge, refund or payout can ever be created.

Connect Stripe and ask Blake, your data agent, what your business actually made — in plain English, from your real numbers.

Stripe is the most sensitive integration Unyo offers. So it's the one where the boundary matters most, and where we'd rather show you the limit than tell you you're safe.

Unyo cannot move your money — the code to do it doesn't exist

Unyo's Stripe integration is read-only by construction. Exactly four tools exist: revenue summary, recent charges, balance, and payouts. There is no charge, refund, or payout-creation code path anywhere in Unyo — not disabled, not permission-gated, not behind a flag. It was never written. An agent cannot misuse a capability that doesn't exist.

What you can do once it's connected

Ask Blake in the chat. He reads, computes and reports — nothing else.

Ask him forWhat he reads
Revenue summaryGross collected, net after refunds, number of successful payments, average payment — grouped by currency, over the last 30 days (up to 90).
Recent chargesAmount, currency, status, description, customer and date for your latest payments.
BalanceWhat's available and what's pending, by currency.
PayoutsAmount, currency, status and arrival date for recent payouts to your bank.

Because Blake also runs real Python and can build spreadsheets, those numbers don't have to stay as a chat answer — he can chart them or hand you a downloadable workbook in the same conversation.

How much did I make this month?

Show me my last 20 Stripe charges and flag anything unusual.

What's my available Stripe balance right now, and when's my next payout landing?

Compare my revenue over the last 90 days by currency and chart the trend.

Only Blake can see your Stripe

This isn't a prompt instruction — it's a runtime mount condition. The Stripe toolbox is loaded only when the agent is Blake. Ashley, Maya, Alex, Sam, Lucy, Riley, Tyron, Ema and Steve never receive the Stripe tool definitions at all. They can't call what was never handed to them.

If you ask Ashley about your revenue, she doesn't get access — she hands off to Blake.

Connect Stripe

  1. Open /integrations from the sidebar. (Not Settings — Integrations is its own page.)
  2. Filter to E-commerce or search for Stripe.
  3. Click Connect.
  4. You're taken to Stripe's own authorisation screen — sign in there, never in Unyo.
  5. Approve, and you land back on /integrations with the card showing Live mode or Test mode.

That badge is not decoration. Unyo displays whether the account you connected is your real one or a test one, so you always know which numbers Blake is reading.

Test it in Test mode first

If you want to see how Blake reports before pointing him at real revenue, connect a Stripe test account. The card will read Test mode, and every figure he quotes comes from that sandbox account.

Permissions — and the one we're forced to ask for

Here's the honest version, because you'll see it on Stripe's consent screen and we'd rather explain it than have you discover it.

What Stripe grantsWhat Unyo actually does with it
read_write — full read and write access to the connected accountReads only. Four get_/list_ endpoints: charges, balance, payouts. Nothing writes.

Why we ask for a scope we don't use: Stripe gates its read_only OAuth scope behind a manual support request. The only option available without it is read_write. So the broader grant is forced by Stripe, not chosen by Unyo — and it is not used. The moment Stripe enables read-only connections for us, narrowing it is a one-line change.

Say it precisely

Unyo's Stripe access is read-only by implementation, not read-only by scope. We won't tell you the grant is narrow when it isn't. What we can tell you — and what you can verify — is that the write half of that grant is dead code that was never written.

Deliberately not requested elsewhere, for contrast: we dropped Gmail's send scope (a broader one already covered it), retired Drive's read-everything scope in favour of per-file access, and omit unused Instagram, Facebook, LinkedIn, Slack, Trello and X permissions entirely. Every scope Unyo asks for carries a written justification. Stripe is the one place a provider's own policy stops us going narrower.

What Unyo does with your data

  • Your Stripe token is never stored or read as a plain column. It's encrypted at rest, and Blake's tools fetch it only through a dedicated decrypt function that runs with elevated privileges — never a direct table read.
  • The token never leaves the server. It never appears in a tool result, a log line, an error message, or anything streamed to your browser.
  • Your connection row is yours alone. Row-level security ties it to your user id; no other account can read it.
  • Nothing is used to train models. Every model Unyo runs operates under a no-training guarantee. Your revenue figures are used to answer your question and nothing else.
  • Only what you asked for is fetched. Blake calls Stripe when you ask a money question. There's no background sync, no mirror of your Stripe data, no nightly scrape.

Limits worth knowing

  • Charges and payouts: 10 rows by default, 50 maximum per request.
  • Revenue summary: a 30-day window by default, 90 days maximum. It samples up to 100 charges in that window and will tell you when the result was truncated — so a very high-volume account gets a flagged sample, not a silently wrong total.
  • Amounts come back per currency, already converted to major units. Blake reports each currency separately rather than inventing a blended total.
  • No invoices, subscriptions, customers, disputes or tax data. Those tools don't exist. If you ask, Blake will tell you he can't.

Disconnecting and revoking

Click Disconnect on the Stripe card at /integrations.

Unlike some integrations, here Unyo really can revoke for you: Disconnect calls Stripe's deauthorize endpoint to drop the connection at Stripe's end, then clears your stored token regardless of whether that call succeeded — so a Stripe-side outage can never leave you with an orphaned token in Unyo.

If you delete your whole account

Account deletion purges your Stripe connection row along with everything else, so Unyo retains nothing and holds no usable token. It does not call Stripe's deauthorize endpoint on the way out. If you want the grant explicitly revoked at Stripe's end, click Disconnect first, or remove Unyo from your Stripe dashboard under Settings → Connected apps.

Troubleshooting

The card says "Test mode" but I connected my real account. You authorised a test-mode account on Stripe's screen. Disconnect, and make sure you're signed into the live account before approving.

Blake says Stripe isn't connected. The connection was cleared, usually because the token was revoked on Stripe's side. Reconnect from /integrations — Unyo detects a dead token, clears it and asks you to reconnect rather than failing silently.

"How much did I make?" returns nothing. There were no succeeded payments in the window. Blake says so plainly instead of guessing — try widening the window ("over the last 90 days").

The revenue total looks low for a busy month. The summary samples up to 100 charges and flags when it truncated. Ask Blake for a narrower window, or for the raw charges, and he'll work from the detail.

Another agent won't answer a revenue question. That's the boundary working — only Blake has Stripe. Ask Blake directly, or ask the other agent to hand off to him.

Can Unyo issue a refund or move money out of my Stripe account?

No — and not because we blocked it. Unyo's entire Stripe surface is four read-only tools: revenue summary, recent charges, balance, and payouts. No charge, refund, or payout-creation code exists anywhere in the product. There is nothing to switch on, jailbreak, or trick an agent into.

Then why does Stripe ask me to approve read AND write access?

Because Stripe gates its read-only OAuth scope behind a manual support request — the ungated option is read_write. That broader grant is forced by Stripe's policy, and Unyo simply doesn't use the write half. We'd rather explain this than let you find it on the consent screen and wonder.

Which agents can see my Stripe data?

Only Blake. The Stripe toolbox is mounted at runtime for Blake and no one else — the other nine agents never even receive the tool definitions. If you ask another agent about revenue, it hands off to Blake rather than reaching for your account.

Is my Stripe data used to train AI models?

No. Every model Unyo runs operates under a no-training guarantee. Your figures are fetched to answer the question you asked, and your access token is encrypted at rest and never appears in a log, an error, or anything sent to your browser.

Does connecting Stripe copy my transactions into Unyo?

No. There's no background sync and no mirror of your Stripe data. Blake calls Stripe's API at the moment you ask a money question, reports the answer, and that's it.

Does disconnecting actually revoke Unyo's access at Stripe?

Yes. Disconnect calls Stripe's deauthorize endpoint and then clears your stored token either way, so you're never left with a token in Unyo that Stripe still honours. Note that deleting your entire Unyo account purges the connection but doesn't call deauthorize — disconnect first if you want the grant explicitly revoked at Stripe.