Support Labs

Help / App guides

Matching Stripe or Square payouts to Acuity bookings in Xero

You took £600 of bookings in Acuity last week. Less than that landed in the bank, in odd-sized amounts that don't match any one booking. Xero wants you to say what each one is. This guide explains where the gap comes from and gives a simple way to make it match, whether you use Stripe or Square.

This is general bookkeeping help, not tax advice. Check the set-up with your accountant, especially VAT.

Why the payout never matches your bookings

Three things sit between an Acuity booking and the money in your bank.

1. The money goes to Stripe or Square first, not to you. Acuity says that when clients pay, "the funds go to your account with your connected payment processor", and "It's not possible to create payouts within Acuity." Stripe or Square then send it on in batches, on their own schedule. One payout can cover many bookings over several days.

2. Fees come off before the payout. Acuity itself generally adds no fee, but Stripe and Square charge their own. Square's UK help says its "processing fees are deducted before funds are transferred to your linked bank account." Stripe works the same way: its payout reports show the gross amount, the fee and the net for each transaction. So the bank sees the net, while your bookings are the gross.

3. Refunds happen outside Acuity. You can't refund through Acuity. You refund in Stripe or Square, and Acuity says those refunds "aren't reflected in Acuity, including in reports." Refunds also don't give you the fee back. Stripe says "processing fees from the original transaction aren't returned", and Square says the same.

So the payout equals: bookings paid, minus fees, minus refunds. It covers a batch of days that won't line up with your week or month.

The fix: a clearing account

Don't try to match each payout straight to your sales. Instead, give Stripe (or Square) its own account in Xero that works like a holding pot. Stripe calls this treating your balance as "a temporary clearing account".

Money flows through it like this:

  1. Sales go in at the full price. Each paid booking is recorded as income, with the money going into "Stripe clearing" (not your bank).
  2. Fees come out. The fees are recorded as an expense, out of "Stripe clearing".
  3. Refunds come out. Each refund is a credit note, paid out of "Stripe clearing".
  4. The payout comes out. When the payout lands in your real bank, you record it as a transfer from "Stripe clearing" to the bank.

If everything is in, the clearing account goes back to zero after each payout. If it doesn't, something is missing. That tells you where to look.

A made-up example: four bookings of £150 each (£600). Fees £18.60. The clearing account takes in £600 and pays out £18.60, so £581.40 is left. A payout of £581.40 arrives, you record it as a transfer, and the account is back to £0.

Doing it with Stripe

Get Stripe's lines into Xero. Xero can take a direct feed from Stripe, and you can set it up "without having Stripe as a payment service in Xero". It brings your Stripe transactions into Xero for you to reconcile. Stripe notes that once connected, transactions import "from the most recent payout only", so older months need a manual import.

Know what Xero won't do for you. Xero can record Stripe fees for you, but only when the customer pays a Xero online invoice. Its help says fees are automated "only if payment is made through Stripe as a payment service on a Xero online invoice." Acuity payments don't go through a Xero invoice, so Xero treats them as payments "completed outside of Xero". You'll need to record the fees yourself. A bank rule that codes every Stripe fee line to a "Stripe fees" expense account saves most of the effort.

Find which bookings are in a payout. In Stripe, open Reports > Payout reconciliation, find the payout and download the Itemized CSV. It lists every payment, refund and fee in that payout. This report only works on automatic payouts; with manual payouts Stripe says "you're responsible for reconciling" them yourself. Acuity also says it may send the appointment date, type and ID to your payment processor, which helps you tie a charge back to a booking.

Record refunds as credit notes. Xero says you "need to manually enter Stripe refunds and chargebacks as credit notes."

Doing it with Square

Square works the same way, but the reports are in different places.

Acuity can't connect Stripe and Square at the same time, so you'll only ever have one of these to deal with (plus PayPal if you added it).

Before you start

If you'd rather not enter the sales by hand

The fees and payouts come in through your Stripe feed. The slow part is usually step 1, putting each booking into Xero with the right price, account and VAT.

We built Booking Sync for that step. It turns each paid Acuity booking into a Xero invoice and records the Acuity payment against it, into whichever account you choose, so you can point it at your clearing account. You can choose a different account for each payment method, so Stripe payments go to "Stripe clearing" and Square payments to "Square clearing". Each payment is recorded at the full amount the client paid, on the day they paid. Booking Sync doesn't record Stripe or Square fees, so keep recording fees as described above. When your Stripe feed brings in a charge that Booking Sync has already recorded, match the feed line to that payment rather than creating a new transaction, or the sale will be counted twice. Refunds are flagged for you to add a credit note; they aren't recorded automatically. It needs Acuity's Premium plan (or the older Powerhouse plan) and costs £12 a month after a 14-day free trial.

The clearing account method above works fine without it.

Sources

Checked 10 November 2026.

More app guides