Stripe
Connect each brand's Stripe account so the terminal can show revenue, MRR, subscriptions, balances and disputes. Stripe connects per brand: one row for each brand that has its own Stripe account.
What it lights up #
- Finance · Stripe across all brands
- Brand page · Revenue
- Customer Success · paying customers
- Scorecard · MRR
Get a restricted key in Stripe #
Use a restricted key with read-only access. A full secret key works, but Test will remind you that a restricted key is safer.
- Sign in to the brand's Stripe Dashboard and open the API keys page (dashboard.stripe.com/apikeys, also reachable from Developers and from Workbench).
- Choose Create restricted key. Stripe may ask how the key will be used, offer a starting preset, and ask you to confirm with two-step verification.
- Set these resources to Read and leave everything else at None:
- Balance
- Charges and Refunds
- Customers
- Payment Disputes
- Invoices
- Payouts
- Prices
- Products
- Subscriptions
- Create the key and copy it now. Stripe shows a live restricted key only once. If you lose it, rotate it and paste the new one.
Keys start with rk_live_ (or rk_test_ in a sandbox).
Connect it in VX Terminal #
- Open Settings → Connections, find Stripe and press Connect on the brand's row.
- Paste the key into Restricted API key.
- Press Test, then Save.
- Repeat for each brand that has its own Stripe account.
The key is encrypted on the server and never shown again; afterwards only its last few characters appear.
How Test works #
Test reads the account's balance and whether it is in live or test mode. Nothing is changed. A good result looks like "Connected to Your Brand · live mode · 1,234.56 USD available".
Common errors #
| Message | Fix |
|---|---|
| "Restricted API key must be a Stripe secret or restricted key (starts with rk_live_ or rk_test_)" | You pasted a publishable key (pk_…) or something else. Copy the restricted key. |
| "Restricted API key doesn't look like a complete Stripe key" | Part of the key is missing. Copy it again in one piece. |
| "Stripe rejected the key. Check you pasted all of it and that it hasn't been rotated or deleted." | The key was cut short, deleted or rotated. Create or rotate a key and paste the new one. |
| "The key works but can't read the balance. Give it Read access on Balance." | Edit the restricted key in Stripe and set Balance to Read. |
| "… · this is a full secret key; a restricted read-only key is safer" | It works, but replace it with a restricted key when you can. |
| "Stripe answered HTTP …" | Stripe had a problem. Try again in a few minutes. |