Approve the source

Stripe is a feed you read, not a bot that pays

One Friday screen for revenue, cash, and hours. People still send the mail and move the money.

Mikko Atienzamoney7 min read

Stripe already has this week's revenue. Treat it as a feed you read, not as a colleague who refunds, pays staff, or writes the customer. Join the payouts to the bank line and to the hours that produced them. An agent can do the join. You still sign anything that moves money or leaves the building.

The screen is for you, not the queue

A shop of twenty already runs Stripe, a bank login, and some record of who worked. Those three live in three tabs. They meet when payroll is due or when a client asks where the invoice went. That is late. If you drop the new view into the same place as tickets, it will get treated like tickets. Someone will close it. Someone will send from it.

You want one private Friday pass. Revenue in. Cash in. Hours in. Anomalies out. No customer sees it. No auto-mail. The help desk keeps the help desk.

Pieter Levels (@levelsio), who ships products and watches his own cash on a screen he built, is blunt about the shape. Custom dashboards for themselves. Not for the floor. He thinks AI is great at combining bank accounts, health sensors, air quality, and startup revenue from Stripe.

@levelsio

A bit of AI psychosis design vibe but yes good everyone building these custom dashboards for themselves I think AI great in combining lots of different data sources from your bank accounts, health sensor data, air quality sensor data, your startup revenue data from Stripe

Pieter Levels (@levelsio)

His version includes sleep and air because it is his life on the same glass as his companies. Yours this week does not need a wearable on the team. Yours needs Stripe, the bank, and one ops export. You can add the personal feeds later if you want them on your own login. Cash first.

What Stripe actually hands you

Stripe is not your books. Customers pay through it. It takes a cut. It holds the funds. Then it pays out to the bank on a schedule you already set and probably ignore until something smells.

The live objects that matter this week are charges, refunds, disputes, the balance still sitting inside Stripe, and the payouts that left for the bank. Those payouts are the cash event. Charges are not. Match a charge to the bank and you will invent a hole that is only timing. The money is still in Stripe, waiting for the payout window you agreed to years ago.

Create a restricted key in Stripe, then pull this week's payouts next to the bank deposits for the same window. Read-only for charges, payouts, balance, refunds, and disputes. No write. No refunds from the key. No payouts from the key. If the agent cannot pay, it cannot "help" by paying.

That is the trial. Not a new vendor. Not a wall of charts. One join on real money that already moved. Hours or closed jobs make the join sharper because the question is not whether the team was busy. The question is whether the busy week showed up in Stripe, and whether Stripe showed up in the bank. A loud week with a quiet payout is a miss. A payout with no work behind it is a different miss.

Card numbers, full customer records, and old years do not belong in the agent. This week's payouts, totals, refunds, and disputes are enough, and they should not live past Friday unless you keep a named copy. Levels can mix health sensors into his own screen because he is the only person on it. Your bookkeeper is not your sleep score. Keep the shop feed to money and work.

Who plugs it, who still sends

The bookkeeper, or whoever already logs into Stripe, wires the restricted key and the bank export. They do not approve the source. You do. The allowed screen is Stripe read-only, bank read-only, and hours for this week. The owner names how long those files may live, sits Friday, and decides what happens when the join is ugly.

The agent combines and flags. Late payout. Refund with no matching note. Busy hours and a quiet Stripe day. A dispute that nobody named. It does not refund. It does not ping the customer. It does not run payroll.

Whoever owns support keeps the ticket tool. This screen is not a new inbox. If a flag is really a customer problem, a person opens a ticket and a person writes the sentence. The combine does not get a send button.

Figure 1

Bookkeeper wires read-only Stripe
Decision: Owner approved this source?
One of these
NoOwner stops the feed
YesAgent joins Stripe to bank
Owner reads Friday screen
Decision: Alert would pay or mail?
One of these
YesOwner decides, person sends
NoOps names the closer
Figure 1

When an alert would pay someone, change a payout, or mail a customer, it stops. A person does the next click. That is not ceremony. Restricted keys fail. People paste the wrong CSV. An agent will happily draft the apology. You do not send it from the combine.

The first Friday is usually ugly in a boring way. A payout still sitting in Stripe. A bank line from last week that landed late. A refund support never logged. Name those, then decide which sources stay. If you did not approve the source, it comes out. If you cannot say how long the file lives, it comes out. That approval is the whole gate. Everything else is a chart.

What Friday owes you

Nobody publishes a clean rate for how often a first Stripe-to-bank join is wrong. Count yours. The useful number is local, on this week's actual payouts, not a story about dashboards.

MeasureCount
Stripe payouts this week with no matching bank deposit
Bank deposits this week with no matching Stripe payout
Flags the agent raised that still need a named person
Flags that would have paid, refunded, or mailed a customer

Fill the table on Friday even if three of the four rows are zero. Zero is a result. A blank row means you did not look. The last row is the discipline check. If that number is not zero, the agent reached for a send or a payout. Tighten the key. Take the send button away. You still own the miss.

Put Stripe on one Friday pass

  • Open Stripe, create a restricted key, read-only on charges, payouts, balance, refunds, and disputes.
  • Export this week's payouts and the matching bank deposits. Drop hours or closed jobs beside them if you have them.
  • Ask the agent you already use to flag mismatches and odd refunds. Tell it not to draft customer mail and not to suggest a refund.
  • Sit the screen yourself on Friday. Name a person for every flag. Anything that would move money or leave the building waits for that person.

Put the key in a place only you and the bookkeeper can see. Kill it if the trial is over and you have not decided to keep the feed.

You can run this without buying another dashboard. Stripe already has the revenue. The bank already has the cash. Friday already exists.

Sources

stripecashowner-reviewdashboard

If one workflow is eating your week, tell me which one. I'll tell you if it's worth deploying — and if it isn't.

Message Mikko on LinkedIn

Previous

Whoever writes the test owns the agent

Keep the cases