Skip to main content

How Bookkeep Posts to Xero with Sales Tax

note

This feature is supported with our Square, Shopify, SumUp, and Squarespace app integrations for Xero, except in the United States.

Single-Country Tax Reporting

Xero is designed for reporting taxes in a single country. Xero offers functionality to enable tracking sales tax by leveraging tax rates within Xero.

Xero provides various helpful articles on their tax rates:

https://central.xero.com/s/article/How-sales-tax-works-in-Xero-US

https://central.xero.com/s/article/Run-the-Sales-Tax-report

https://central.xero.com/s/article/File-a-GST-VAT-or-sales-tax-return-in-another-country

Bookkeep offers sales tax posting into Xero by leveraging the tax rates set up within Xero, which can be mapped to your sales summaries in Bookkeep. This allows sales data to be synced into Xero using your mapped sales tax rates.

When mapping your sales summaries, you must select a tax rate from Xero that is your 0% rate for non-taxable sales. This ensures correct posting to indicate lines in the journal where sales tax did not apply. For some regions, Xero auto-creates this rate, e.g., "No VAT." Below is an example of the sales summary mapping view where you would select your zero rate:

Sales summary mapping view

When we import data into our system, we use categories and subcategories to display the journal entry lines that you can map to your accounts in our accounting platform.

Categories and subcategories

Normally, subcategories are optional to map, but for Xero sales tax rates, each line must be mapped, or the posting to Xero will fail. To better understand how we post your sales tax to Xero, please read on with an example below.

note

After adding new tax codes in Xero, you will want to sync your accounts with Bookkeep to complete your mapping.

We take the tax collected explicitly from the source system (Square, Shopify, etc.) and apply it to the revenue for that tax collected. We do not allow Xero to calculate the tax for you.

From the mapping view for the sales summary, you can see the subcategories for the sales tax collected, as shown below. Each subcategory needs to be mapped to a tax rate from Xero, or the entry will not post:

Tax rate subcategories

If any tax rate is missing, you can create the rate in Xero and refresh in Bookkeep to pull in any new rates. New rates can be created from the tax view in Xero as shown below:

Create new tax rates in Xero

Once you have mapped all of your sales tax subcategories, as shown below, Bookkeep can post these journal entries:

Journal entry with sales tax posted

Below is an example journal entry with sales tax using the Xero tax rates mapped. Bookkeep posts all amounts on a tax-exclusive basis into accounting.

You will see lines 1-8 post the normal journal entry that Bookkeep completes. Lines 9-13 show the booking of the sales tax based on the amount collected and applying it to the associated revenue. For example, the original entry had 17.96 collected for the 9.975% tax rate. Therefore, 17.96 divided by 0.09975 equals 180.05 taxable revenue, which is present on line 13 of the example entry at the bottom.

Journal entry line 13

Lines 9-13 in the image have the corresponding mapped sales taxes from Bookkeep populated in the Tax Rate column. The remaining lines leverage the Zero Tax Rate that was mapped above.

Journal entry lines 9-13

Finally, line 14 backs out the taxable revenue amounts from lines 9-13 connected to sales tax. This means that the Bookkeep sales tax clearing account used in lines 9-14 will always net out to zero while having all sales tax collected recorded in the appropriate mapped tax rate.

At the bottom of the entry, the sales tax collected is present based on the mapped tax rates, allowing Xero to capture sales tax correctly.

Sales tax collected

Example Entry

Example entry

danger

We recommend you speak with your accountant and to the tax authorities you need to provide GST, VAT or sales tax returns to, so you know your obligations.

Please contact us at support@bookkeep.com if you have any questions.