AI dashboard

AI dashboard · payments

Stripe Payments Dashboard

Gross to net, payouts, MRR and collections from one Stripe account, built by Claude on fourteen Data Marts loaded by a custom connector, and checked against Stripe's own ledger: 140 of 146 payouts match it to the cent.

14 Data MartsBuilt by Claude on OWOX Data MartsRefreshed from the Data Marts on demand

The dashboard

What each view answers

Seven questions, fourteen Data Marts

Every view answers one question a CEO asks about the money Stripe handles. Between them they read the Data Marts loaded daily from Stripe by a custom connector, and each view names the ones it uses, so the table behind any number is one click away on the Stripe data source page.

What this means

Did we do better or worse this month?

Four findings ranked and computed from the rows: what customers were charged and what reached the balance, the payouts that match the bank and the ones that do not, recurring revenue and its movement, and what leaked to refunds, chargebacks and fees, each naming the tables it comes from.

Balance transactionsPayoutsSubscriptionsSubscription itemsPayment intentsInvoices

Gross to net

How much did we actually get paid?

Gross charged, refunds and chargebacks, Stripe fees and the net that reached the balance, month by month with a Months and Weeks switch, then the payouts that carried it to the bank. Balance transactions and charges agree to the cent.

Balance transactionsChargesPayouts

Payouts

Does every payout match the bank?

Each payout with its arrival date and amount next to the sum of the balance transactions it contains, and the gap. For 140 of 146 payouts the gap is zero; the six that differ are listed with their amounts. The median charge reaches the bank in three days.

PayoutsBalance transactions

Subscriptions

What is MRR, and which way is it moving?

Monthly recurring revenue rebuilt from subscription items and their unit amounts, yearly prices divided by twelve, grouped by billing interval and price band, with new and ended MRR by month.

SubscriptionsSubscription itemsPricesMonthly recurring revenue

Leaks

Are refunds and disputes growing?

Refunds by reason and disputes by status and period, as a share of gross, with the fee line beside them so the three costs are read together.

RefundsDisputesBalance transactions

Collections

Who pays late, and who never finished paying?

Open and past-due invoices by customer with the amount outstanding, and the checkouts that did not complete with their decline codes.

InvoicesCustomersPayment intents

Days to bank

How long does our money sit with Stripe?

The median number of days between a charge and the arrival of the payout that carried it, by month, from the balance transactions' availability dates and the payouts' arrival dates.

Balance transactionsPayouts

Metrics

The figures on this dashboard

Each one is computed once, from the same Data Marts, and read the same way in every view.

Gross chargedNet to balancePaid out to bankPayout gapDays to bankMonthly recurring revenueOpen invoices

Connected, not a snapshot

An AI dashboard is only as true as what it reads

Most payment dashboards start from Stripe's gross volume chart or a CSV export. That works until finance asks why it does not match the bank.

On an export

Three numbers, no way to tie them together

Stripe shows gross volume, the bank shows deposits, the books show revenue. An export freezes one of the three on the day it was taken, and nobody can say which fee, refund or payout explains the difference.

Which one goes to the board?

On your Data Marts

Every view reads the same tables, checked against Stripe's ledger

Balance transactions, charges, refunds, disputes, payouts, invoices and subscriptions land in your data warehouse every day. The dashboard reads those Data Marts, and 140 of its 146 payouts match Stripe's own ledger to the cent.

One ledger, every view.

Connecting the AI straight to Stripe is not enough either. The API returns objects, not meaning: which amount is revenue, which date to report on, how a refund reverses a charge. The Data Marts are where that is decided once.

How it is built

From Stripe to a dashboard in five steps

Your analyst does steps one and two once. After that, anyone with access asks their AI for the view they need.

  1. 01Stripecustom connectordailyA custom connector in OWOX Data Marts loads the fourteen tables into your data warehouse.
  2. 02Data Martsone per tableSQL visibleYour analyst defines once what net revenue, a settled payout and MRR mean.
  3. 03OWOX APIgovernedpermissionsThe only door the AI gets: the Data Marts it may read, nothing raw.
  4. 04Claude or ChatGPTyour own AIAsk for the dashboard in plain words. It builds it on the Data Marts.
  5. 05AI dashboardrefresh on demandOpen it, press Refresh, and the views re-read the Data Marts.

Build yours

Build this on your own Stripe account

Connect Stripe with a restricted key, let your analyst define the Data Marts once, and let your AI build the views your team asks for.