A successful payment, the amount added to your payment account balance, and the payout that reaches your bank are related, but they are not the same event. Treating them as interchangeable is one of the fastest ways to create a reconciliation puzzle.
This guide explains how to use Stripe reports for a clear operating workflow. You will learn which report answers which question, how fees, refunds, and disputes affect the numbers, what to include in an export, and where WP Full Pay records fit.
The goal is a traceable payment record, not tax or accounting advice. Your accountant or finance team should decide how the exported activity maps to your books and local reporting obligations.
Table of contents:
Start with the reporting question
Stripe reports cover several different jobs. A payments view helps you investigate a customer transaction. A financial report explains how activity changed your Stripe balance. A payout report explains what Stripe sent to an external account.
| Question | Best starting point | Why |
|---|
| Did a customer payment succeed? | Payment or PaymentIntent record | Shows the status and customer-facing payment details |
| What changed the Stripe balance? | Balance report | Groups charges, refunds, disputes, fees, and other adjustments |
| Which activity belongs to a bank deposit? | Payout reconciliation report | Groups the transactions settled in an automatic payout batch |
| What fees were charged? | Fees report | Provides summary and itemized fee data, with stated coverage limits |
| Which form collected an order reference? | Stripe object metadata | Can carry custom fields submitted through WP Full Pay |
Choose the question first, then export the matching dataset. One report does not replace every other Stripe view, and none of these exports automatically becomes a complete set of business accounts.
Payments, balance transactions, and payouts
The three layers describe different parts of the money movement:
- Payment: the customer-facing attempt to pay. Its status answers whether the payment succeeded, failed, or still requires action.
- Balance transaction: a ledger entry for money moving into or out of the Stripe balance. Stripe recommends balance transactions as the starting point for balance reporting. They include a source ID that can point back to the related Stripe object.
- Payout: a transfer from the Stripe balance to an external account, usually a bank account. A payout can include activity from many payments plus refunds, disputes, fees, and adjustments.
The Stripe balance transaction reference explains that payment funds first appear as pending, less applicable Stripe fees, and become available according to settlement timing. This timing is one reason a day’s sales do not necessarily equal that day’s payout.
💡 Keep the identifiers: Payment, charge, balance transaction, refund, dispute, and payout IDs make it much easier to trace an unexplained line across exports.
Choose the right Stripe report
Balance report
Use the Balance report when you treat the Stripe balance like a clearing or bank-style account and want to explain all activity within a date range. The summary connects the starting balance, balance change from activity, payouts, and ending balance.
The activity section includes transactions that affect the balance other than payouts. That includes charges, refunds, disputes, fees, and other adjustments. A summary CSV preserves the grouped totals, while an itemized CSV supplies the underlying transactions and can include custom metadata.
Select the columns needed to trace each exported balance line.
Payout reconciliation report
Use the Payout reconciliation report when automatic payouts are enabled and the task is to match a bank deposit to the batch of Stripe activity it settled. The report groups settled transactions by reporting category and also shows unsettled ending-balance activity.
This report is not a universal fit. Stripe directs manual-payout users to the Balance report instead. Instant payouts also need separate care because Stripe cannot determine which transactions you intended to include when you control the timing and amount.
Choose itemized output when the individual transactions behind a payout need to be audited.
Fees report
Use the Stripe Fees report when you need transaction-level details about fees charged by Stripe, networks, or external partners. It can be exported as summary or itemized data and includes attribution fields for specific transactions.
Do not assume the report is instantaneous or exhaustive. Stripe states that fee data becomes available after a delay and lists exceptions such as certain device purchases, Stripe Capital fees, Atlas fees, and post-paid invoiced fees. Keep those limits in the handoff to whoever reviews the export.
Export Stripe data without losing the audit trail
A reliable export begins before you click Download. Record the account, test or live mode, settlement currency, time zone, and inclusive date range used for the report. If the account settles in several currencies, export and reconcile each settlement currency separately.
- Choose the report by task. Use Balance for period activity, Payout reconciliation for automatic payout batches, or Fees for fee attribution.
- Start with itemized data. Summary output is useful for review, but itemized rows preserve the records needed to investigate a difference.
- Include stable identifiers. Keep balance transaction, payment or charge, refund, dispute, customer, and payout IDs where the report offers them.
- Include metadata when relevant. An order reference, campaign, form label, or other custom field can connect Stripe activity to the business record that created it.
- Preserve the raw CSV. Save an untouched copy before sorting, deleting columns, or adding formulas. Record the download date and filters alongside it.
Stripe computes Dashboard financial reports on a daily cycle, so a very recent transaction might not appear immediately. If a row seems missing, check report availability, time-zone boundaries, pending funds, and test versus live mode before treating it as an error.
Where WP Full Pay records fit
WP Full Pay is the product covered by this site, so its reporting boundary matters here. The plugin can show completed transaction records in WordPress, but it does not include a built-in payment export feature.
The official WP Full Pay export guide directs payment exports to the Stripe Dashboard. Custom fields collected by a form are saved as metadata on the relevant Stripe object, so enable metadata columns in the matching payments, subscriptions, or customers export.
There is also an important completeness difference: WP Full Pay creates its WordPress transaction record after Stripe confirms successful completion. Failed or incomplete PaymentIntents can appear in Stripe without a matching WordPress record. That means the plugin list is useful for checking completed form activity, but Stripe remains necessary for failed attempts, balance movements, fees, refunds, disputes, payouts, and CSV exports.
📖 Need event-by-event automation instead of a monthly export? See the guide to Stripe webhooks.
A practical monthly reconciliation workflow
- Lock the period. Record one time zone, settlement currency, and inclusive start and end dates.
- Choose one primary reconciliation model. Use the Balance report to explain period activity, or use Payout reconciliation to explain automatic payout batches. Most workflows do not need both as competing ledgers.
- Export the itemized report. Include reporting category, gross, fee, net, created and available dates, source IDs, payout IDs, and metadata where available.
- Explain net activity. Separate successful charges from refunds, disputes, dispute reversals, fees, and adjustments. Use Stripe’s reporting category rather than trying to infer meaning from a description alone.
- Match the bank movement. Confirm each payout amount and identifier against the external account statement. Account for unsettled ending-balance activity instead of forcing it into the current deposit.
- Investigate differences by ID. Check pending availability, payout timing, test mode, currency, duplicate imports, partial refunds, disputes, and date-boundary differences.
- Archive the evidence. Keep the untouched export, filter settings, notes about exceptions, and the reviewed working file together.
✅ Useful control: For a Balance workflow, confirm that the starting balance plus net activity, less payouts, explains the ending balance. Investigate every unexplained difference instead of inserting a plug value.
When to use Stripe Sigma
Prebuilt Stripe reports are usually the clearest starting point for balance and payout reconciliation. Stripe Sigma becomes useful when the same custom question recurs, when several Stripe objects must be joined, or when a saved query and scheduled CSV can replace repeated spreadsheet work.
Sigma supports custom reports using SQL or natural-language prompts, but it is a paid Stripe product with subscription terms and pricing tied to charge volume and region. Verify the current offer for the account before treating Sigma as part of the reporting stack. Custom output also needs review because a valid query can still encode the wrong business definition.
If the question is really about product catalog setup rather than financial activity, use the separate guide to Stripe Products. Keeping product configuration and cash reconciliation in separate workflows makes both easier to audit.
Common Stripe reporting questions
Why does a Stripe payout not match sales?
A payout is a transfer of available balance, not a copy of one sales total. Settlement timing, automatic payout batching, fees, refunds, disputes, adjustments, reserves, and currency can all affect the amount. Use the payout ID and itemized payout reconciliation data to explain the batch.
Where can you find fees, refunds, and disputes?
The Balance report groups these balance-changing items by reporting category and offers itemized rows. Use the separate Fees report when fee attribution needs more detail. Keep refunds and dispute reversals as distinct activity instead of silently netting them into gross payments.
Can WP Full Pay export payments?
No built-in payment export is documented for WP Full Pay. Export payment activity from Stripe and include metadata when custom form fields are needed. Use the WordPress transaction list as an operational cross-check for successfully completed form activity.
Clear Stripe reporting comes from keeping each layer in its place: payments explain customer attempts, balance transactions explain Stripe balance movement, payouts explain bank deposits, and WP Full Pay records explain completed form activity on WordPress. Select the report by question, keep the identifiers, and preserve the raw export so every total remains traceable.