← Guides
Integration How-Tos·7 min read·

How to Automatically Record Zapper Payments in Xero

Zapper has no built-in Xero integration. Nothing on the Xero App Store, nothing in the merchant portal that exports to Xero. So between Zapper and your books sits a daily manual task that most owners either do late, do roughly, or pay a bookkeeper to do: capturing what Zapper took, what it charged, and what actually landed in the bank.

This guide explains what recording Zapper takings in Xero properly involves, why the shortcut most businesses take causes reconciliation pain later, and the three routes to automating it.

One thing to declare before we start: one of those three routes, Crosspost, is our own product. We built it because we kept doing this same reconciliation as custom work. This guide covers all the options honestly, including doing it without us.

The state of Zapper's Xero integration

Zapper has no Xero app. There is nothing on the Xero App Store, nothing in the Zapper merchant portal that exports to Xero, and no built-in connection on either side. Yoco ships a Xero integration with its R499 a month plan tier (as at August 2026); PayFast has none; Zapper historically had none at all.

What Zapper does give you is the merchant portal, where you can see your transactions and settlements, and statements you can download. Everything beyond that, meaning getting those numbers into Xero as proper accounting entries, is up to you.

That leaves three routes: capture it by hand, build a custom integration, or use Crosspost. To choose between them, it helps to be precise about what the job actually is.

What "recorded in Xero" actually means for Zapper

The mistake most businesses make is treating the bank deposit as the sale. A Zapper payout hits the bank account, someone codes it to Sales, and the books look done.

They are not done, for three reasons:

The payout is not the sale. Zapper settles what you took minus its fees. If you code the deposit to Sales, your turnover is understated by the fee amount, every day. Over a year that is a material misstatement, and it also quietly hides what Zapper is costing you.

The fees carry VAT you may be entitled to claim. Zapper's processing fees include input VAT. If the fees never appear in your books as their own entry, that VAT never gets claimed. For a busy restaurant, the unclaimed VAT alone can exceed the cost of fixing the process.

The timing does not line up. What Zapper takes today does not land in the bank today. Sales belong in the books on the day they happened; the deposit arrives later. Without a clearing account bridging the two, your daily takings and your bank statement never reconcile, and month-end becomes archaeology.

Recorded properly, each trading day produces: the day's takings at gross (with output VAT if you are VAT-registered), Zapper's fees as their own entry with their input VAT, and the payout matched against a clearing account that nets back to zero. When the clearing account sits at zero, you have proof that every cent Zapper took is accounted for.

Route 1: capture it by hand

Entirely possible, and how most Zapper merchants start. Download the statement from the merchant portal, work out which figures are sales and which are fees, split the VAT, capture the entries, match the deposits.

The cost is time and consistency. Done properly it is a few hours a month of careful capture, and "properly" is the catch. The fee-and-VAT split is fiddly, the settlement timing trips people up, and the moment capture falls behind, the backlog compounds. This is the route where the bank-deposit-equals-sales shortcut creeps in, usually within a month or two.

If your Zapper volume is a handful of transactions a week, this route is fine. Set up a clearing account, capture weekly, and be disciplined about the fee split.

Route 2: build a custom integration

The same route we describe in our PayFast and Yoco guides: something reads your Zapper settlement data, transforms it into the right accounting entries, and posts them to Xero through its API.

A custom build makes sense when Zapper is one strand of something bigger: you take payments through multiple gateways, you have an unusual entity structure, or the Zapper flow needs to plug into other automation you already run. We build these; that work runs in production today reconciling Yoco and Zapper takings for a multi-store retailer.

What a custom build does not make sense for is the standard case on its own. If the whole job is "my Zapper takings should appear in my Xero, correctly", a bespoke build is engineering you do not need to pay for, because that exact job is the same for every Zapper merchant, which is why we eventually packaged it.

Route 3: Crosspost

Crosspost is that packaged build: a Zapper-to-Xero sync we run as a product. You sign in with Xero, connect your Zapper merchant account, approve the first sync after seeing a preview of exactly what it will post, and from then on every trading day's takings land in Xero on their own: the sale, the fees with their input VAT taken from Zapper's own figure, the payout, and a Zapper Balance clearing account that reconciles to R0.00.

It handles the details this guide has been describing: gross versus net, the fee VAT, the settlement timing, VAT-registered or not. It never stores your banking logins or your customers' card data, and it works with the Xero organisation you already have.

It costs R199 a month (or R149 a month billed annually), with a 14-day free trial that does not ask for a card. Against Yoco's R499-a-month plan tier for the equivalent convenience, or a bookkeeper's hours doing the capture by hand, that is the price of the problem staying solved.

Which route fits

  • A few transactions a week, comfortable with bookkeeping discipline: capture by hand with a clearing account. Free, but only as good as your consistency.
  • Zapper is one gateway among several, or part of a larger automation picture: a custom build. Tell us what you are dealing with and we will scope it honestly.
  • Zapper takings into Xero, done correctly, without thinking about it: Crosspost. That is the job it exists for.

Whichever route you take, the test at the end is the same: your clearing account nets to zero, your turnover shows the gross, and the fee VAT is claimed. If your current process cannot show you those three things, it is costing you more than it looks.

Crosspost posts your Zapper takings into Xero every trading day: the sale, the fees with their VAT, and the payout, reconciled to the cent. Built and run by us, R199 a month.

Describe what you're working with and we'll come back with something specific, not a sales call.

Start your 14-day free trial