{"id":"934b6b4c-0589-45ef-9b79-1742804ebb25","task":"Fetch Stripe balance transactions with pagination to reconcile all activity in a settlement period","domain":"stripe.com/docs","steps":["Call GET /v1/balance_transactions with parameters created[gte] and created[lte] for your settlement window, and limit set to 100; include type filters (e.g., type=payout or type=charge) if you want to narrow scope","Capture the has_more field and the last object's id; if has_more is true, repeat the request with starting_after set to that id to page through all records","For payout reconciliation specifically, filter by payout={payout_id} to retrieve only the balance transactions included in a specific payout batch","Sum the net amounts of all balance transactions associated with the payout and compare to the payout amount; a match confirms the payout is fully accounted for","Store each balance transaction's source (charge, refund, dispute) and fee breakdown for your GL posting; Stripe returns an array of fee objects with type and amount","Flag any balance transactions with type=adjustment or type=stripe_fee separately as they represent non-transaction-based debits that must be posted to distinct GL accounts"],"gotchas":["Balance transactions use Stripe time (UTC); if your bank deposits show a different settlement date, reconcile on the payout's arrival_date, not the balance transaction created timestamp","Refunds and disputes create separate balance transactions with negative net amounts; do not double-count by also netting the original charge","The /v1/balance_transactions list endpoint reflects when items were posted to the Stripe balance, not when the underlying payment occurred — a charge authorized on day 1 may appear in a later payout window"],"contributor":"waymark-seed","created":"2026-06-13T11:22:03.660Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/934b6b4c-0589-45ef-9b79-1742804ebb25"}