Stripe and Xero

Stripe into Xero, fees and all

A Stripe payout is one deposit covering dozens of charges, minus the fees and minus any refunds. We connect Stripe to Xero so the gross sale, the fee and the refund each land in their own account, which means the month reconciles instead of being unpicked by hand.

What goes wrong without it

A payout is not a sale

Stripe settles net, in batches, on its own schedule. Everything below follows from that, and each one leaves you with tidy-looking numbers that do not agree with your bank. If your bank reconciliation is out, everything downstream is out with it.

Income short by the fee The deposit is the sale minus Stripe's fee. Banked as income, revenue is understated and the fee never appears as a cost at all, so both halves of your profit figure are wrong.
One deposit, many charges A single payout can cover two days of trading, so nothing matches one to one and reconciling becomes a hunt through the Stripe dashboard.
Refunds in the wrong month A refund reduces a later payout rather than reversing the sale, so the month it belongs to and the month it shows up in are not the same month.
What you get

A Stripe file that reconciles itself

Gross sales, Stripe fees and refunds split apart, so income is income and the fee is a cost
Payouts matched to the charges they actually cover, instead of banked as one lump
Refunds and chargebacks landed against the period they belong to
GST checked on every mapped account against your circumstances, never assumed
A full payout cycle reconciled against the bank before it is handed over
Whoever runs the file trained on it, and somebody to ring when a number looks wrong
How it works

Three steps, in this order

1 Agree the mapping before anything is switched on Where the gross, the fee, the refunds and the GST should land, decided first. Unpicking it later costs more than doing it once.
2 Connect it and run a real payout cycle The connection configured, then watched across a full payout cycle, so you see the gross, the fee and the net arrive separately rather than take our word for it.
3 Reconcile before we hand it over You do not get left with a live connection until a full payout cycle reconciles against the bank.
When the standard connection stops short

Where the connector ends, we build

Stripe's own Xero connection brings the data across, and for many businesses that is enough. It stops being enough the moment your reporting needs something the connector was never asked to know: which job a payment belongs to, which entity or location it came from, which product line it should sit under. Where a platform has no Xero connector at all, or the one it has cannot code a transaction the way your business reports, we build the connection that can. Everything we automate arrives in Xero as a draft for a person to review and approve, because ownership of what reaches your ledger stays with you.

Coding the connector cannot reach Tracking categories, jobs, locations or product lines carried onto the transaction, so a report by any of them can be relied on.
The platforms with no connector at all Practice software, order systems and CRMs that Xero has never been introduced to. If the data follows a pattern, the pattern can be automated.
Spreadsheets, email and folders of PDFs An invoice that arrives as an attachment, or a spreadsheet somebody maintains by hand, turned into coded draft invoices without anyone retyping them.
A person still approves it Nothing posts itself. Every automated transaction lands as a draft for review, so a human owns what enters the ledger.

If somebody is still opening the Stripe dashboard to work out where a number belongs, that is worth a conversation.

Questions we answer every week

Questions we are asked most

How do you reconcile Stripe payments in Xero? By matching each payout to the charges it actually covers, rather than treating the deposit as a single sale. The gross goes to income, Stripe's fee goes to a cost account, refunds reverse the sale they belong to, and what is left is the figure that should hit your bank. When those three agree, the payout reconciles on its own.
Does Stripe's own Xero connection not already do this? It brings the data across, which is the easy half. Whether the gross, the fee and the refund land in the right accounts, and whether a payout reconciles against the bank, depends entirely on how it is mapped. The mapping is the work. And where the mapping cannot get there, because the coding your reporting needs is beyond what the connector carries, we build the connection that can.
What about GST on Stripe's fees? It is decided against your circumstances and checked, rather than left at whatever the integration defaults to. Getting it wrong is quiet, and it carries into every activity statement afterwards, which is exactly why it is agreed before anything is switched on rather than found later.
The free Xero Health Check from NN Accountability
The free checklist

Download Your FREE Xero Health Check

Identify common bookkeeping errors and discover simple fixes for smoother financial management, written in plain English.

We will also send the occasional Xero tip. Unsubscribe from any email.

Download Your FREE Xero Health Check Now

Identify common bookkeeping errors and discover simple fixes for smoother financial management.

We will also send the occasional Xero tip. Unsubscribe from any email.