How to reconcile delivery app payouts with your till
By the Analistable team · Updated · 6 min read
Export the delivery platform's order-level payout statement and your till's delivery orders for the same period. Match them on the platform order number (most tills store it), then compare: order value in both, commission and fees the platform deducted, and adjustments such as refunds for missing items. Unmatched orders on either side usually mean a cancelled, duplicated or manually entered order.
Part of our guide: How to reconcile data in Excel
Match and compare
- Make sure both files use the same order reference; strip prefixes if the till stores “UE-8F3A” and the platform “8F3A”.
- In the platform statement, add
=XLOOKUP([@Order], Till[Platform ref], Till[Total], "Not in till"). - Add the expected commission:
=[@[Food total]] * 0.30(use your contracted rate) and compare it with the commission charged. - List the adjustments separately — they're the most common source of differences.
Worked example
| Order | Till total | Platform food total | Commission (30%) | Adjustment | Payout | Status |
|---|---|---|---|---|---|---|
| 8F3A | 32.5 | 32.5 | -9.75 | 0 | 22.75 | OK |
| 9B71 | 18 | 18 | -5.4 | -6 | 6.6 | Refund: missing item |
| A2C4 | Not in till | 24 | -7.2 | 0 | 16.8 | Entered manually as cash? |
| B9D0 | 41 | — | — | — | — | Cancelled on platform, still in till |
Two orders need a fix in the till: A2C4 is missing (or recorded under another tender), and B9D0 was cancelled but still counts as a sale.
Reconcile the payout
Sum the Payout column for the statement period and compare it with the bank deposit. Platforms may also deduct marketing promotions, tablet fees or tips paid out separately; list each as its own line so the totals agree.
| Line | Amount |
|---|---|
| Food totals (orders on the platform) | 74.5 |
| Commission | -22.35 |
| Adjustments | -6 |
| Payout (bank deposit) | 46.15 |
Patterns to watch
- A high rate of “missing item” refunds on certain dishes points to a packing problem.
- Commission above your contracted rate usually comes from promotions you opted into.
- Orders in the till but not on the platform are often test orders or cancellations.
Card payments taken in-store reconcile the same way — see reconciling Square sales with bank deposits.
Several platforms
Stack the statements from each platform with a Platform column first, then run the same checks. Comparing commission and refund rates side by side shows which platform costs the most per order.
Getting the two exports
Each platform's partner portal offers a payout or statement download, usually as CSV, with one row per order. Typical fields are the order reference, order date and time, food or basket total, commission, any promotion you funded, refunds or adjustments, and the payout amount. Field names and how they split VAT vary by platform and country, so check the column headers each time a platform changes its statement layout.
From the till, filter sales to the delivery channel or tender for the same dates. Use the same time zone and the same day boundary: if the platform's week runs Monday to Sunday in UTC and your till closes the day at 2am local time, late orders will fall into different weeks on each side.
Second example: a promotion you funded
Platforms let restaurants run their own discounts. The customer pays less, and the discount usually comes out of your payout rather than the platform's. In this illustrative order the restaurant funded 20% off, and commission was charged on the discounted food total.
| Line | Amount |
|---|---|
| Food total (menu price) | 40 |
| Promotion (20%, restaurant-funded) | -8 |
| Commission (30% of 32.00) | -9.6 |
| Payout | 22.4 |
If the till records the sale at £40, it overstates revenue by £8. Either ring the discount up in the till or post a single weekly adjustment equal to the promotion total on the statement. Check on your own statement whether commission is calculated before or after the discount; the contract terms decide it, not the spreadsheet.
Comparing platforms side by side
Stack all statements into one table with a Platform column, then summarise. In SQL:
SELECT platform,
COUNT(*) AS orders,
SUM(food_total) AS food,
ROUND(SUM(commission), 2) AS commission,
ROUND(100.0 * -SUM(commission) / SUM(food_total), 1) AS commission_pct,
ROUND(100.0 * -SUM(adjustment) / SUM(food_total), 1) AS adjustment_pct,
ROUND(SUM(payout), 2) AS payout
FROM statements
GROUP BY platform
ORDER BY platform;| Platform | Orders | Food | Commission | Commission % | Adjustment % | Payout |
|---|---|---|---|---|---|---|
| Deliveroo | 4 | 100 | -28 | 28 | 0 | 72 |
| Uber Eats | 3 | 100 | -30 | 30 | 6 | 64 |
Both platforms sold £100 of food, but one kept £36 and the other £28. In a spreadsheet the same summary is a PivotTable on the stacked table with Platform in rows. To stack the files, see combining data from multiple sources.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| No orders match at all | Different reference formats (prefix, case, leading zeros) | Clean both columns with UPPER, TRIM and SUBSTITUTE before matching |
| Many matches but totals differ by the same percentage | One side includes VAT or delivery fees and the other doesn't | Compare like with like: food total excluding delivery |
| Weekly payout differs from the statement total | Tablet fees, marketing or prior-week adjustments in the payout | Add each extra line to the bridge |
| Order in the platform but not the till | Order keyed under another tender or not entered | Search the till by time and amount |
| Commission above the contract rate | Promotions or a different service level | Filter by order type and promotion flag |
Weekly routine
- Download each platform's statement as soon as the payout is issued.
- Export the till's delivery orders for the same days and time zone.
- Paste both into the template and refresh the lookups.
- Clear missing and cancelled orders in the till, and raise disputes for refunds you think are wrong within the platform's time limit.
- Tick the payout against the bank deposit and file the statement with the week's workbook.
Doing it in Google Sheets
Import each statement and the till export onto their own tabs. Clean the order references with =UPPER(TRIM(SUBSTITUTE(A2, "UE-", ""))) (adjust the prefix to your till), then use XLOOKUP exactly as above. If a platform exports one row per item rather than per order, sum it first with a pivot table on order reference so each order appears once.
Checking the result: food totals on the statement minus commission, promotions and adjustments must equal the payout, and the payout must equal the bank deposit. Then every till order for the channel should be either matched or explained as a cancellation or test.
Common mistakes
- Comparing the payout with till sales including delivery fees the customer paid to the platform, which never reach you.
- Booking the net payout as sales, so commission disappears from the accounts instead of showing as a cost.
- Matching refunds to the week of the original order rather than the statement they were deducted from.
- Using the contract's headline commission rate for orders that went through a different service, such as customer collection, which may be charged at another rate.
Frequently asked questions
- How do I check Uber Eats or Deliveroo commission?
- Export the order-level payout statement, multiply each order's food total by your contracted rate and compare it with the commission charged.
- Why is my delivery app payout lower than my sales?
- Payouts are net of commission, promotions, refunds and other adjustments, and may cover a different period than your till report.
- How do I match platform orders to my POS?
- Use the platform order number stored in the POS; strip any prefixes so both sides use the same format.
- Do delivery apps include tips in payouts?
- It varies by platform and country. Check the payout statement for a separate tips line and keep it out of the commission calculation.