Unleashed guide·Updated October 23, 2026
Why Stock on Hand in Unleashed Doesn't Match Xero, and How to Fix It
- Applies to
- Unleashed Lite, Core and Pro
- Steps checked against
- Unleashed Help Centre articles, checked 23 October 2026
Short answer
When stock on hand in Unleashed doesn't match Xero, the usual causes are: the values didn't match when the integration started, journals are still in Draft in Xero, exports failed, or someone deleted, edited or added transactions in Xero. Changes in Xero never sync back. Compare the Stock on Hand Enquiry's total with Xero's Stock on Hand account, then use Export Data and Reconcile Transactions to find each variance.
Before you start
- Run the Stock on Hand Enquiry in Unleashed. Its Total Cost is the figure that should match the Stock on Hand (Current Asset) account in Xero.
- Work out when the two last matched. If they never matched, they won't match later without a correcting journal.
- You'll need access to the Xero integration in Unleashed (Integration > Integration Store > Xero) and to reports in Xero.
- Every journal posted to the Stock on Hand account in Xero should come from Unleashed. Anything else is a likely cause.
The common causes and their fixes
| Cause | Fix |
|---|---|
| Values didn't match when the integration started | Add a manual journal in Xero for the starting difference |
| A transaction was deleted in Xero after export | Restore or re-enter it in Xero, then reconcile |
| Someone added a journal directly in Xero | Remove it if it has no matching transaction in Unleashed |
| A journal's date or value was edited in Xero | Put it back to its original date and value |
| Journals are still in Draft in Xero | Approve them. Only approved journals change Xero's stock balance |
| A transaction failed to export | Check View Failed Exports and the Connection Log, fix the cause, re-export |
| A journal type isn't turned on | Turn it on in the Configuration tab and click Save Configuration |
Step 1: Check for failed and draft exports
- 1Open the Manage Xero Queue page. With nothing outstanding, it shows Xero Export Queue: 0 and 0 Failed Export(s).
- 2In Xero, make sure every invoice, journal and bill to pay from Unleashed is Approved.
- 3Go to Integration > Integration Store > Xero > Export Data and check that every transaction since the values last matched has exported.
Step 2: Reconcile each transaction type
- 1In Export Data, select a transaction tab, for example Sales Invoices.
- 2Set the Date Range. Unleashed suggests one month at a time.
- 3Click Reconcile Transactions. A notification in the top bar shows when it's done.
- 4Refresh the page and set the same date range again.
- 5Look for rows with a non-zero value in the Variance column, and rows with no Xero link in the View column.
- 6Click Export on any row that needs to be sent again.
- 7Repeat for each tab. In the Journals tab, use the Select Journal menu to reconcile each journal type.
Step 3: Trace the rest line by line
- 1For each variance, open the transaction in Xero and see whether someone changed it there. Re-exporting from Unleashed won't overwrite an existing Xero invoice, so correct the side that's wrong, then click Reconcile Transactions again.
- 2In Xero, run an Account Transactions report for the Stock on Hand account (under All Reports). Look for anything that didn't come from Unleashed.
- 3In Unleashed, go to Reports > Inventory > Transaction Enquiry and select Run. It lists the stock value change per product per transaction, which should line up with the Xero journals.
If something doesn't look right
- A row shows Exported but no Xero link and a variance: the transaction was deleted in Xero. Restore it in Xero, then reconcile.
- A row shows Exported but no link and no variance: Xero already had a transaction with that number that the integration didn't create. Make the Xero number unique, then re-export.
- Stock value went up in Xero after extra costs, but not in Unleashed: if Use Receipted Stock In Assemblies is on and the component's stock reached zero before the purchase order was completed, the recost journal reaches Xero while Unleashed's value stays put. Fix it with a manual adjustment in Xero, or a Stock Revaluation in Unleashed and then delete the adjustment journal it creates in Xero.
- A Recost Journal went to COGS: costs were added to a receipted purchase order after some of that stock had shipped. Only the shipped quantity is recosted, and it posts to COGS.
- Journals look stuck in the queue: Unleashed says this can happen during an outage on either side and usually clears once it's fixed.
Where Unleashed leaves the work to you
- Unleashed can't see changes made in Xero, so someone has to keep finance from editing exported transactions there.
- Reconciling is manual. Unleashed recommends every one to two weeks, tab by tab.
- Tracing a stubborn variance means comparing Xero's Account Transactions report with the Transaction Enquiry by hand, which takes time on a busy account.
- If nothing finds it, Unleashed's advice is to draw a line: complete a stock count in Unleashed, post a manual journal in Xero so the two match, and keep watching from there.
A stock count gives you a trusted starting figure. See How to do a stocktake in Unleashed. For the integration settings themselves, see How to connect Unleashed to Xero.
Where Logistify fits
Logistify doesn't do this job. It doesn't reconcile Unleashed with Xero or post stock journals. Its Sales Order Service enters customer orders into Unleashed as sales orders and creates sales quotes, so the order side of the day takes less of your team's time.
Sources
Frequently Asked Questions
Spend less of the day on order entry
Logistify's Sales Order Service enters customer orders into Unleashed as sales orders and replies to the buyer with the quantity available on each line.