# Balance report

Allow connected accounts to view and export balance summary reports.

The balance report component allows connected accounts to reconcile their Stripe balance and download their categorized transaction history. It helps connected accounts understand what happened to their Stripe balance during a given time period. The component displays three subreports:

- **Balance summary**: Shows the starting balance, total activity, total payouts, and ending balance for the selected date range, giving connected accounts a high-level view of how their Stripe balance changed over the period. This subreport is similar to [the balance summary report for direct Stripe accounts](https://docs.stripe.com/reports/balance.md).
- **Balance change from activity**: A detailed breakdown of all transactions grouped by reporting category, with gross, fee, and net amounts for each category. Categories include:
  - Charges
  - Refunds
  - Disputes
  - Other adjustments
  - Fees
- **Payouts**: Lists the total number and amount of payouts sent to the connected account’s bank account during the period.

Connected accounts can filter the report by date range, currency, and time zone. They can also export each subreport as summarized or itemized CSV downloads.

The balance report is available to all connected accounts, regardless of whether they use automatic or manual payouts. If your accounts use automatic payouts, you can facilitate payout reconciliation by embedding the [payout reconciliation report](https://docs.stripe.com/connect/supported-embedded-components/payout-reconciliation-report.md) component.

> Connected accounts without access to the [full Stripe Dashboard](https://docs.stripe.com/connect/stripe-dashboard.md) can only view data starting from April 1, 2026, unless your platform has been specifically backfilled.

Note: The following is a preview/demo component that behaves differently than live mode usage with real connected accounts. The actual component has more functionality than what might appear in this demo component. For example, for connected accounts without Stripe dashboard access (custom accounts), no user authentication is required in production.

When you [create an Account Session](https://docs.stripe.com/api/account_sessions/create.md), enable the balance report component by specifying `balance_report` in the `components` parameter.

```curl
curl https://api.stripe.com/v1/account_sessions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "account={{CONNECTEDACCOUNT_ID}}" \
  -d "components[balance_report][enabled]=true"
```

After creating the account session and [initializing ConnectJS](https://docs.stripe.com/connect/get-started-connect-embedded-components.md#account-sessions), you can render the balance report component in the front end:

#### JavaScript

```javascript
// Include this element in your HTML
const balanceReport = stripeConnectInstance.create("balance-report");
container.appendChild(balanceReport);
```

## Accounts connected to multiple platforms

For connected accounts that aren’t controlled exclusively by your platform:

- The report includes transactions from all platforms the account is connected to.
- The connected account must complete [user authentication](https://docs.stripe.com/connect/get-started-connect-embedded-components.md#user-authentication-in-connect-embedded-components) before viewing the report.
