Conflicts & errors
Swann Retail never silently overwrites your data. When a record can’t be synced cleanly, it’s recorded as a conflict for you to look at: sometimes the record still comes across and you decide what to do with it, sometimes the change is held until you act. Review conflicts under Sync health — “Records Loyverse and Swann Retail disagree on.” Managing them is owner-only.
Each row shows the record it’s about (an item, a customer, an order, or the connection itself), the issue, its status, and the actions you can take. A short note under the issue spells out the exact difference. When there’s nothing to review, Sync health shows Everything’s in sync.
Every conflict is Open until you act on it:
- Resolve — you’ve handled it (reconciled it in Loyverse or Swann Retail, or it no longer applies). This drops it off the list.
- Ignore — the difference is intentional; Swann Retail stops flagging it. You can still reconcile it manually later.
If you and someone else act on the same conflict at once, the list simply refreshes with the latest — nothing is double-applied.
The conflicts you might see
Section titled “The conflicts you might see”Edited on both sides
Section titled “Edited on both sides”Shown as Edited in both places. The same record was changed in both Loyverse and Swann Retail between syncs. Swann Retail doesn’t overwrite either side — both records are left exactly as they are, and nothing syncs for that record until you decide. Check it, and if your Swann Retail change was the one you wanted, re-save it to push it across. Then resolve the conflict.
Tax rate changed in Loyverse
Section titled “Tax rate changed in Loyverse”Shown as A tax rate changed in Loyverse. A tax rate you’d already brought across had its percentage or name changed in Loyverse. Swann Retail doesn’t change the rate for you — you may have set it up deliberately on this side, and editing a live rate changes how tax is worked out on new sales — so it flags the difference instead of applying it silently. Open Settings → Tax rates, update the rate if you want it to match Loyverse, then resolve the conflict.
VAT pricing mode mismatch
Section titled “VAT pricing mode mismatch”Shown as VAT pricing mode mismatch, against a Tax record. A Loyverse tax is set to include VAT in the price or add it on top, and that disagrees with your store’s VAT pricing mode. Prices imported under that tax are stored exactly as they came across, so they’d be read against the wrong VAT convention — the amounts could be off until you line the two up. Nothing is auto-converted, and a 0% tax never triggers this (include-vs-add moves no money at a 0% rate).
Fix it under Settings → Business → VAT pricing mode: set Prices include VAT if the Loyverse tax is “included”, or Prices exclude VAT if it’s “added”. That reinterprets the whole catalog at once — you don’t touch each price. (The conflict’s Change pricing mode button takes you straight there.) Then resolve the conflict.
Can’t be fully represented
Section titled “Can’t be fully represented”Shown as Couldn’t be matched. A Loyverse item uses a feature Swann Retail doesn’t model yet. The item is still imported — but that one feature isn’t carried across. This happens with:
- More than one tax on a single item. Only the first tax is kept as the item’s rate; any others are dropped.
- A tax that couldn’t be matched. If an item points at a Loyverse tax that wasn’t brought across (for example, one that was deleted in Loyverse), the item still imports — it just falls back to your default tax handling. Set the right rate on it in Swann Retail.
- Modifiers (add-ons or options)
- Sold by weight
- Fractional stock counts
- A barcode that isn’t a standard product number. Loyverse allows free-form barcodes (letters, dashes); Swann Retail stores standard numeric barcodes (8, 12, 13, or 14 digits) only, so the item imports without its barcode. Give it a numeric barcode in Loyverse if you want it carried across.
- A SKU with a character Swann Retail can’t store. Almost any SKU comes across exactly as-is — letters,
numbers, spaces, slashes, and other symbols are all fine (up to 128 characters). Two bits of text are reserved
internally: the
#(hash) character, and any SKU that starts withBARCODE:(in any capitalisation). A SKU that contains a#, starts withBARCODE:, or is longer than 128 characters imports without its SKU. In Loyverse, remove the#or change the leadingBARCODE:if you want it carried across. (An item with no SKU at all is fine and imports normally.) - A product photo that couldn’t be copied across. Loyverse keeps your product photos on its own servers, so Swann Retail copies each one into your own storage during import — that way they keep working after you leave Loyverse. If a photo can’t be fetched (a broken or removed image), the item imports without its photo; just re-add it in Swann Retail.
If you need that item represented exactly, simplify it in Loyverse; otherwise ignore the conflict — the item itself is there and selling.
Change rejected by Loyverse
Section titled “Change rejected by Loyverse”Shown as Loyverse rejected the change. Loyverse refused a change you made in Swann Retail — usually a duplicate SKU or a value Loyverse won’t accept. Fix the data in Swann Retail and save again. (Temporary network hiccups retry on their own; this conflict only appears when Loyverse actively said no.)
Deletions paused for safety
Section titled “Deletions paused for safety”Shown as Deletions paused for safety. During an hourly check, an unusually large number of items looked deleted all at once. Rather than pass that many deletions straight through — far more likely a temporary glitch than a real bulk delete — Swann Retail stops the delete step for that run and flags it, so a hiccup can’t wipe out a catalog. If the deletions are genuine, they go through on their own once they hold steady across the next few hourly checks; if they weren’t, nothing was removed. Check whether you really deleted that many items, then resolve or ignore.
Payment total doesn’t add up
Section titled “Payment total doesn’t add up”Shown as Payment total doesn’t add up. An imported sale’s payments don’t match its total — the amounts taken don’t add up to what the sale rang. Swann Retail brings the sale across but flags the gap rather than guessing where it went (an extra tip or surcharge, or an unexplained shortfall). Check the sale in Loyverse; if it’s right as it stands, ignore the conflict — otherwise correct it there and resolve. This one is about an imported Loyverse sale, so you’ll see it around a past-sales import and as everyday Loyverse sales come across.
A sale too large to import
Section titled “A sale too large to import”Shown as Couldn’t be matched, against an Order record — the note underneath spells out that the receipt was too large to bring across. A Loyverse receipt with an unusually large number of line items is more than Swann Retail imports in a single sale, so rather than bring across a partial copy it holds the whole receipt and flags it here. This is rare — a normal sale is nowhere near the limit, so most stores never see it.
No sale is lost. The receipt still exists in Loyverse, and Swann Retail keeps the held sale tracked so it can’t be forgotten — it keeps trying to bring it across, and re-running the import never duplicates a sale you already have (the same safe-to-re-run behaviour as the rest of your history — see Importing past sales). The revenue is accounted for; it’s just waiting to land.
Because the receipt is simply very large, there’s nothing to correct on your side in the moment. It clears from the list on its own if it manages to come across on a later retry. If you’d rather not keep a one-off huge sale on the list, Ignore it; you can still Resolve it by hand once you’ve checked it in Loyverse.
Duplicate customer
Section titled “Duplicate customer”Shown as Duplicate on import. Two customer records share the same customer code, so they can’t be matched one-to-one. Use Merge customers to combine them — pick the one to keep, and the other’s details fold into it. See Importing your data.
Reconnect needed
Section titled “Reconnect needed”Shown as Reconnect needed. Your Loyverse token was revoked or replaced, so sync has stopped and the connection shows Invalid token. Paste a fresh token under Settings → Loyverse sync to start syncing again — see Connect your Loyverse account. Reconnecting doesn’t clear this entry on its own, so Resolve it once sync is back to take it off the list.
In import-only mode
Section titled “In import-only mode”If you’ve switched to import only, the conflicts that come from ongoing two-way sync can’t happen — there’s nothing flowing between the two systems to create them. Edited on both sides, Tax rate changed in Loyverse, Change rejected by Loyverse, and Deletions paused for safety all come from that two-way flow, which is paused in import-only.
The rest still appear, because they come from the import, which keeps working: Can’t be fully represented, VAT pricing mode mismatch, Duplicate customer, A sale too large to import, Payment total doesn’t add up, and Reconnect needed can all still show up when you import from Loyverse.
If conflicts keep appearing
Section titled “If conflicts keep appearing”A steady trickle is normal during a busy side-by-side run. A sudden burst of the same kind usually points at one root cause — for example, a batch of Loyverse items that all use weight or modifiers. Fix the source and the new conflicts stop.