Give yourself confidence in the financial health of your business by integrating your Xero usage with Hightouch.
We automate your financial workflows and eliminate inconsistent data issues and manual data entry.
With this integration, you can deliver up-to-date data directly from your source of truth to allow your team the luxury to focus
on making financial decisions that benefit your business instead of wasting time finding, cleaning, and moving relevant data.
Hightouch sits on top of your data warehouse and can read from Snowflake, Redshift, BigQuery, Databricks, Postgres, MySQL, and many other data sources. You can even fetch data from Google Sheets and Airtable. Hightouch can help activate your data wherever it resides.
We've written dedicated guides for each supported data source. Take your pick:
If you're missing the credentials necessary to connect to your data source,
try inviting your teammates to Hightouch. You can have unlimited collaborators
in your workspace.
Waiting for credentials to your data warehouse? No problem. You can connect to one of our sample databases to get started right away. For the rest of this tutorial, we'll use our demo B2B SaaS, which contains a users table. This sample source is available when you log in for the first time—no setup required.
Next, we'll write a SQL query to define which users should be synced to our Xero accounts resource. You can follow the same pattern to sync to other Xero resources.
In Hightouch, a model represents a query that filters or transforms the records in your data source. Models are used to determine exactly which records to sync between sources and destinations.
When you connect to a data warehouse, your models will probably be written in SQL. You can also import models from tools like dbt and Looker.
In this example, we'll keep it simple. Suppose you want to sync all your customers to Xero. To accomplish this, you'll want to create a model that looks like this:
SELECT*FROM users;
Click on Models in the left sidebar.
Click on Add model in the top right corner.
Select Demo Database as your source and click Continue to proceed.
Select SQL Editor as your modeling method.
Paste the SQL query from above into the editor on the left side of the page.
Click Preview to execute the query.
Click Continue to proceed.
Give your model a name and unique slug (for example, "All Users" and all-users).
Select ID as the primary key for your model.
Click Finish to create your model.
We just created a model using a SQL query that retrieves all our current users. Next, we'll configure our sync to add these users to Xero.
Select the type of accounts you would like to sync to your destination. To sync dynamic types, toggle 'use column' and select a column from your model that contains supported enum values by Xero.
Selecting an account type from the drop-down menu allows Hightouch to provide
you with the appropriate validations for each account type. These validations
will not exist if you choose to sync dynamic types from your model and will
require you to be familiar with what is required by Xero.
Select the type of invoices you would like to sync to your destination. To sync dynamic types, toggle 'use column' and select a column from your model that contains supported enum values by Xero.
Hightouch can perform a reference look-up for reference fields. Select an identifier to use to perform the look-up and use the respective contact to create the invoice object.
You can perform a look-up using:
Contact Number
Email Address
Name
If the Contact ID exists in your model, you can skip the lookup step by selecting Contact ID from the drop-down menu.
Select the type of invoices you would like to sync to your destination. To sync dynamic types, toggle 'use column' and select a column from your model that contains supported enum values by Xero.
To date, our customers haven't experienced any errors while using this destination. If you run into any issues, please don't hesitate to . We're here to help.
Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.