DEV Community

Discussion on: Why Stripe payouts don't match your books

Collapse
 
rasinmuhammed profile image
Muhammed Rasin O M •

Carried balance, mostly. FX mistakes tend to be loud and local. Stripe converts at its own rate (you can see it on each balance transaction as exchange_rate) while the books use a daily or ECB rate, so the leftover difference shows up next to the line that caused it. A wrong opening balance is quiet and it compounds. A payout still in transit at month end, a dispute opened in one month and settled in the next, or a reserve release booked in the wrong period throws off every month after it by the same amount. Then the bridge looks broken even when that month’s activity is fine. The nasty case is when the two meet: a USD charge in month one refunded in month two, which Stripe converts at the rate on the day of the refund. Now an FX difference is sitting inside the carried balance. If you build the second month, that refund would be a good one to plant.

Thread Thread
 
akarazhev profile image
Andrey Karazhev •

Thanks, very helpful. The refund across two months is a great case. I'll plant it in the second month and post here when it's ready.