Skip to main content

How to connect Xero to QashierHQ (daily sales sync)

Synchronise sales data and streamline your accounting and financial management processes in just a few steps.

Connect Xero to QashierHQ and Qashier posts one invoice per store to Xero every day for the previous day's sales, already marked as paid. The sync is one-way (Qashier to Xero) and covers sales made after you connect. Sales made before the connection are not synced.

Applies to: Singapore, Malaysia, the Philippines and Thailand · QashierHQ · The Xero Integration feature from Qashier Marketplace · A QashierHQ login with Settings access.

Before you start

  • In QashierHQ, open Qashier Marketplace and activate Xero Integration for each store you want to sync. Xero Settings only appears after this is done for at least one store. See How to Add Features and Manage Your Plan in Qashier Marketplace (QashierHQ).

  • You need a Xero login with access to the organisation you want to post sales to.

  • Treat your Xero Client Secret like a password. Never share it with anyone, including Qashier Support.

Part 1: Create an app in Xero

  1. Log in to Xero, then go to developer.xero.com/app/manage.

  2. Select New app.

  3. Fill in the form:

  4. Read and accept the terms and conditions, then select Create app.

  5. In the app's menu on the left, select Configuration.

  6. Copy the Client id. You will paste it into QashierHQ.

  7. Select Generate a secret, then copy the secret straight away. Xero shows it only once. If you lose it, generate a new one.

Part 2: Connect Xero in QashierHQ

  1. Log in to QashierHQ.

  2. Click the gear icon (Settings) at the top right. On a phone, open your profile menu and tap Settings.

  3. In the left panel, under Integrations, select Xero Settings.

  4. Paste the Client id from Xero into Client ID.

  5. Paste the secret from Xero into Client Secret.

  6. Click Submit. You are sent to Xero to log in.

  7. In Xero, choose the organisation you want to connect and select Allow access. You are brought back to Xero Settings in QashierHQ.

Part 3: Map each store to Xero

  1. In Xero Settings, choose the store in the Store drop-down. Only stores with Xero Integration activated are listed.

  2. Choose the Xero organisation in Organization.

  3. Under Accounts for Products, choose your Default Sales Account. This is a revenue account in Xero, for example 200 - Sales. It applies to sales of all products.

  4. Choose your Default Payment Account. Daily sales are posted into this account. If the list is empty, see the section below.

  5. If your store charges tax, a Sales Tax section appears. In the field labelled GST (the label is the same in every market), choose the matching Xero tax rate: your SST rate in Malaysia, your VAT rate in Thailand or the Philippines. Stores that do not charge tax do not see this section.

  6. Click SAVE. Repeat for each store.

If Default Payment Account shows nothing

QashierHQ lists only active Current Asset accounts in Xero that have payments enabled. Create one:

  1. Log in to Xero and select Accounting from the top menu, then Chart of accounts.

  2. Select + Add Account.

  3. Set Account type to Current Asset. Enter a Code and Name of your choice, a description if you want one, and the tax setting.

  4. Tick Enable payments to this account and select Save.

  5. Refresh QashierHQ, return to Xero Settings and select the Default Payment Account again.

Animated guide: adding a payment account in Xero.

What you should see in Xero

Every day shortly after midnight (Singapore time), Qashier posts one invoice per store to Xero for the previous day's completed sales and records a payment into your Default Payment Account. The invoice is created as Authorised with the description YYYY-MM-DD Daily Sales, the contact QashierPOS - your store name and the reference QashierPOS Sales. Refunded, voided and credit top-up transactions are not included. A day with no sales produces no invoice.

Sample invoice created in Xero.

Manage your connection

  • Link another Xero organisation: in Xero Settings, select Don't see your organization? and follow the prompts.

  • Disconnect: in Xero Settings, select Disconnect from Xero and confirm with Disconnect. You can reconnect at any time by entering your Client ID and Client Secret again.

If something goes wrong

Symptom

Cause

Fix

Xero shows an invalid redirect_uri error after you click Submit

The Redirect URI on your Xero app does not match exactly

In the Xero developer portal, open your app's Configuration and set the Redirect URI to https://api.qashier.com/v1/xeroCallback with no trailing slash. Then submit again in QashierHQ.

Xero Settings is not in the Settings panel

Xero Integration is not activated for any store

Activate it in Qashier Marketplace, then reload QashierHQ.

A store is missing from the Store drop-down

Xero Integration is not activated for that store, or it is linked to another outlet

Activate Xero Integration for the store. A store that is linked to another store is not listed; contact Qashier Support if you need its sales in Xero.

SAVE fails with Please select a tax rate

Your store charges tax and the Sales Tax field is empty

Choose the matching Xero tax rate in the GST field and save again.

No invoice appears in Xero

The store's mapping is incomplete, the Xero connection has expired or been removed, or the store had no sales that day

Open Xero Settings, choose the store and check that Organization, Default Sales Account, Default Payment Account and, if taxed, the GST field are all saved. If the connection was removed in Xero, connect again from Part 2. Days with no sales produce no invoice.

Sales from before the connection are missing

Only sales made after you connect are synced

Enter earlier days in Xero manually, or contact Qashier Support if you need help.

Related articles

Last verified: 25 Sep 2026 · Markets: SG, MY, PH, TH

Did this answer your question?