Ready to get started?

Download a free trial of the Xero Driver to get started:

 Download Now

Learn more:

Xero Icon Xero JDBC Driver

Complete read-write access to Xero accounting enables developers to search (Customers, Transactions, Invoices, Sales Receipts, etc.), update items, edit customers, and more, from any Java/J2EE application.

Connect to Xero Data in CloverDX (formerly CloverETL)



Transfer Xero data using the visual workflow in the CloverDX data integration tool.

The CData JDBC Driver for Xero enables you to use the data transformation components in CloverDX (formerly CloverETL) to work with Xero as sources and destinations. In this article, you will use the JDBC Driver for Xero to set up a simple transfer into a flat file. The CData JDBC Driver for Xero enables you to use the data transformation components in CloverDX (formerly CloverETL) to work with Xero as sources and destinations. In this article, you will use the JDBC Driver for Xero to set up a simple transfer into a flat file.

Connect to Xero as a JDBC Data Source

  1. Create the connection to Xero data. In a new CloverDX graph, right-click the Connections node in the Outline pane and click Connections -> Create Connection. The Database Connection wizard is displayed.
  2. Click the plus icon to load a driver from a JAR. Browse to the lib subfolder of the installation directory and select the cdata.jdbc.xero.jar file.
  3. Enter the JDBC URL.

    To connect, set the Schema connection property in addition to any authentication values. Xero offers authentication for private applications, public applications, and partner applications. You will need to set the XeroAppAuthentication property to PUBLIC, PRIVATE, or PARTNER, depending on the type of application configured. To connect from a private application, you will additionally need to set the OAuthAccessToken, OAuthClientId, OAuthClientSecret, CertificateStoreType, CertificateStore, and CertificateStorePassword.

    To connect from a public or partner application, you can use the embedded OAuthClientId, OAuthClientSecret, and CallbackURL, or you can register an app to obtain your own OAuth values.

    See the "Getting Started" chapter of the help documentation for a guide to authenticating to Xero.

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Xero JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

    java -jar cdata.jdbc.xero.jar

    Fill in the connection properties and copy the connection string to the clipboard.

    A typical JDBC URL is below:

    jdbc:xero:InitiateOAuth=GETANDREFRESH

Query Xero Data with the DBInputTable Component

  1. Drag a DBInputTable from the Readers selection of the Palette onto the job flow and double-click it to open the configuration editor.
  2. In the DB connection property, select the Xero JDBC data source from the drop-down menu.
  3. Enter the SQL query. For example: SELECT Name, SUM(QuantityOnHand) FROM Items GROUP BY Name

Write the Output of the Query to a UniversalDataWriter

  1. Drag a UniversalDataWriter from the Writers selection onto the jobflow.
  2. Double-click the UniversalDataWriter to open the configuration editor and add a file URL.
  3. Right-click the DBInputTable and then click Extract Metadata.
  4. Connect the output port of the DBInputTable to the UniversalDataWriter.
  5. In the resulting Select Metadata menu for the UniversalDataWriter, choose the Items table. (You can also open this menu by right-clicking the input port for the UniversalDataWriter.)
  6. Click Run to write to the file.