Finance & Accounting
Match payments to payouts from two CSV exports
Upload your payment export and your payout export as CSV. Rows are matched by transaction ID and amount. Duplicate IDs, missing rows on either side and amount differences are listed for you to review. Running a job needs a free account; the sample result on this page is open to read first.
or drop them here
Free account needed. After you pick the files, the tool asks you to sign in or create a free account before the job runs.
Free: 3 jobs a day with a free account · Pro: up to 200 jobs a day, €12.99/month or €89.99/year
Compare plansSample result · fictional data · open to read
What a finished reconciliation shows
- Payment rows
- 3
- Payout rows
- 3
- Exceptions
- 2
Exceptions are sorted into
- Missing payment rows
- Missing payout rows
- Duplicate IDs
- Amount differences
Rows in different currencies are flagged, never converted.
On screen, before you download
A summary table, the matched payouts and the unmatched rows.
In the download package
result.csvmatched rowspayout-detail.csvevery payout row, kept and totalledfindings.csvthe exceptions, by typemanifest.jsonrecords both source files
Encrypted source · result kept for 24 hours · your exports are not changed
How a job runs
- 1
Choose both exports
Pick the payment CSV and the payout CSV. This opens the tool page. Unknown column headers are refused rather than guessed at.
- 2
Sign in with your free account
Sign-in is required before the upload. A free account gives you 3 jobs a day. Failed jobs are not counted, and the counter resets at midnight UTC.
- 3
Check and download
Look through the summary and the unmatched rows, then download the package. It is kept for 24 hours.
Matching payments to payouts from two CSV exports
What you upload
You upload two CSV files: your payment export and your payout export. One job covers up to 50,000 transactions. Rows are matched on the transaction ID, and the amounts are compared on top of that. Rows without that ID cannot be matched and go to the exception list. Unknown column headers are refused rather than guessed at, so you know before processing if a file does not fit.
What you get and how to read it
findings.csv splits the exceptions into missing payment rows, missing payout rows, duplicate IDs and amount differences, so you can see which side is short. Every payout row stays in payout-detail.csv with a total. Your original exports are not changed.
Fees, currencies and your review
There are no settings. The tool does not work out fees, refunds, exchange rates or settlement timing from the exports. A payout with a fee deducted shows up as an amount difference for you to judge. Rows in different currencies are kept apart and flagged, never converted. Duplicate IDs are listed, not merged, so fix them in the source system and run again. Review every exception before you treat a payout as reconciled.
Questions before you run it
Do I need an account?
Yes, a free account. It gives you 3 jobs a day; failed jobs are not counted and the counter resets at midnight UTC. You can read the sample result on this page before you sign up.
Which column does the match run on?
The confirmed transaction identifier you point it at, with the amount compared on top of that. Rows without that identifier cannot be matched and go to the exception list.
What happens when a payout has a processor fee deducted?
The amount difference is reported as an exception rather than netted off, because the tool does not infer fee or refund semantics from an export. You decide whether the gap is an expected deduction.
Can it reconcile two exports in different currencies?
Currencies are kept separate and no exchange rate is applied. A pair of rows in different currencies is flagged for review instead of being converted.
What does it do with duplicate transaction IDs?
Duplicates are listed rather than quietly collapsed, since the same ID appearing twice usually points at a problem in one of the source systems. Resolve them upstream and run the job again.
Are unmatched rows dropped from the output?
No. Every payout row is retained and totalled, and missing source rows are separated from missing payout rows in findings.csv so you can see which side is short.