The XTRF Knowledge Base has been moved to a new space.

Use to access the Knowledge Base.

QuickBooks integration overview

If you have a QuickBooks account, you can integrate it with XTRF. This integration will help you manage your finances and financial documents related to your translating activities without transferring the data between the two systems manually.


XTRF allows integration with QuickBooks Desktop (Version 2020) and QuickBooks Online. To get the most out of the integration, we recommend upgrading to the latest version of XTRF. 

How to get access to the QuickBooks integration

Please check with your Regional Growth Manager if your plan grants access to this service. This option may be purchased separately. When we finish the technical preparations on our side, we’ll notify you, and the integration will appear on your Home Portal.

Differences in QuickBooks Desktop and QuickBooks Online integration

QuickBooks Desktop

QuickBooks Online 

You can synchronize projects 

You can’t synchronize projects

Vendor’s invoices may contain several elements that can be linked to a QB Customer or Customer:Job 

There is no such option

How does the integration work?

The integration copies different data in each direction. XTRF sends the information about partners (clients and vendors), projects, and invoices to QuickBooks. QuickBooks sends back the information about payments.

The integration can be configured to synchronize: 

  • both the clients' and the vendors' data (including the information about their invoices and payments) 

  • only the client’s data

  • only the vendor’s data. 


In this integration, XTRF is considered a source of partner data. No changes made to partner profiles in QuickBooks will be reflected in XTRF. Moreover, they will get overwritten during the next synchronization by the XTRF data.


During the initial synchronization, the integration checks:

  • currencies and whether QuickBooks works in single-currency or multi-currency mode

  • default QuickBooks account

  • default invoice item names

  • existing Payment conditions in QuickBooks.

Additionally, for QuickBooks Online, the integration checks the version - US or International.

XTRF to QuickBooks synchronization

Clients and vendors

  • When you create a new partner in XTRF or modify one that wasn’t synchronized before, the integration checks if a partner with a given name already exists in QuickBooks.

    • If there is no such partner, QuickBooks creates one. Its ID is stored in XTRF as a synchronization (synch) key.

    • If there is one, it gets remembered in XTRF by its QuickBooks ID (synch key). Additionally, the integration ensures that all partner data is up-to-date with the respective data in XTRF and overwrites the data in QuickBooks.

    • If a partner in XTRF already has a synch key but cannot be matched by that key with an existing partner in QuickBooks, the integration runs a recovery mechanism. XTRF deletes the synch key and tries to match the partner by name. If such a partner is found, a new synch key is stored, and the modifications from XTRF are transferred to QuickBooks. Otherwise, the synchronization creates a new Partner in QuickBooks according to XTRF data and stores a new synch key.

  • When you modify partner data in XTRF, the corresponding data in QuickBooks gets synchronized accordingly. The latest data from XTRF overwrite all differences in QuickBooks.

  • Once a partner has issued their first invoice in XTRF, their data is automatically transferred to QuickBooks and updated.

  • Inactive clients and vendors are not synchronized. If a client or vendor has already been synchronized and has later been deactivated in XTRF, they get deactivated in QuickBooks as well.

  • In XTRF, clients and vendors can have several Price Profiles in different currencies. In QuickBooks, they can have only one currency assigned. Thus, during the synchronization, QuickBooks uses the currency from the partner's default Price Profile.


Invoices are copied to QuickBooks depending on their status. You can configure which status will initiate the synchronization and set different initiating statuses for client and vendor invoices. 

  • Only new invoices are synchronized: those without a synch key and modified later than the date provided in the 'Synchronize items newer than' field in the Configuration menu.

  • For each new invoice, the integration checks by the invoice number and partner data if there is a matching invoice in QuickBooks. If so, the synchronization stores this invoice synch key. Otherwise, it creates a new invoice in QuickBooks.

  • The integration ensures that all data required for the synchronization is provided. That means, in particular, that:

    • The synch key of the partners connected to an invoice must exist in XTRF. Otherwise, the integration adds the key or runs the recovery mechanism.

    • For vendor invoices, all the related synch keys (client’s and project) must exist in XTRF. Otherwise, the integration reports an error.

    • Payment conditions must exist in QB. Otherwise, it is added.

    • All invoice item names generated from expressions must exist. Otherwise, they are added.

  • When the XTRF invoice is set to the appropriate status, the integration creates an invoice in QuickBooks based on XTRF data and stores QuickBooks ID (synch key).

  • The integration synchronizes invoice Net Total values. However, zero-value invoices do not get synchronized. Invoices without numbers in the "Invoice No." field are not synchronized either.

  • The integration does not synchronize Pro Forma invoices.

  • If the value of the items in the XTRF invoice does not equal the total invoice value, then an additional item is created in QuickBooks. For example, if an XTRF invoice has the following values: item1 = 100 USD, item2 = 200 USD, total = 400 USD; then QuickBooks invoice will have an additional item3 = 100 USD.


The integration queries do not modify invoices in QuickBooks when they are modified in XTRF. Also, once sent, the invoice would not change in XTRF. If an invoice needs to be changed, the user must first delete the invoice in QuickBooks and its synch key in XTRF. Then, after entering the changes in XTRF, the invoice has to be resynchronized.

Projects (QuickBooks Desktop only)

Projects are synchronized from XTRF to QuickBooks as Customer Jobs. When you create a new project in XTRF, QuickBooks creates a new Job. When the project gets updated, the corresponding Job in QuickBooks gets updated as well. The recovery mechanism is the same as for partners.

QuickBooks to XTRF synchronization


  • Synchronization checks for new payments in QuickBooks.

  • If there are new payments, the integration queries QuickBooks for all invoices unpaid in XTRF to check which of them have been paid.

  • The integration queries QuickBooks invoice by synch key, gets information about invoice payments, and matches it with any previous Payment information for this invoice.

  • If XTRF cannot query QuickBooks invoice by ID, the invoice recovery is run. XTRF tries to find the given invoice by its invoice number. If there is such an invoice, the new synch key is stored for it. Otherwise, the invoice is recreated in QuickBooks.

  • After querying all invoices, the integration creates respective payments in XTRF and marks appropriate XTRF invoices as paid or partially paid.

Currencies in QuickBooks

QuickBooks can work in single-currency or multi-currency mode. In single-currency mode, the values in different currencies from XTRF or QuickBooks are converted into QuickBooks currency according to the exchange rate set up in XTRF.


If your Main currency in QuickBooks Online is USD, the integration automatically classifies this product as a US version that works in single-currency mode only. All other currencies suggest a multi-currency mode. 


In multi-currency mode, every partner can have only one currency set in QuickBooks. The integration will convert invoice and payment values into this currency.

To find out the details about the integration setup for QuickBooks, see the following articles:
QuickBooks Desktop integration setup

QuickBooks Online integration setup