Home Portal

Skip to end of metadata
Go to start of metadata

This article is under construction.

Table of Contents

XTRF Configuration

 Sign in to the Home Portal of XTRF Platform. 
 Open the Configuration menu. 
 Go to User Management > Users. 
 

Click Add to create a dedicated user that will be used for the purposes of the integration. Make sure the user is given the rights to create and modify Clients, Vendors and their Invoices. Also, make sure the user has an allocated license and can always log in to XTRF.

For detailed information about users and user groups and rights in Home Portal, see: Adding a New User Account in the Home Portal.

 
 

Go to Integration > QuickBooks. The settings menu appears.

 
 In the Main Settings tab click Edit button. 
 

Check the QuickBooks Integration Enabled option. The settings menu expands.

 
 

In the General Settings section:

  • In the QuickBooks will Sign into XTRF as field, choose the user you have created for the purposes of the integration from the list.
  • Choose the Main Currency in your QuickBooks Installation.

  • In the Synchronize Items Newer than field, set up the required date of modification of synchronized items. This field will be automatically updated each time the synchronization occurs.

  • In the Add QB Invoice Items based on field, set up whether XTRF should send to QuickBooks Invoice Items or Payables/Receivables data.

  • Once the synchronization is performed, you will be able to browse the Logs. (Also in the Integration Log tab you will be able to see the items that have been synchronized.)

 
 

In the Clients section, select whether the integration should synchronize XTRF Clients and Projects to QuickBooks. Further settings in the Clients section are visible accordingly when Synchronize Clients and/or Synchronise Projects as QB Jobs options are checked. By default, both options are checked.

  • In the QB Job Name Expression field, set up the way the Client Jobs are created in QuickBooks. By default it is: ${project.idNumber}
  • In the For Client Invoices Use QB Item Name Expression field, set up the way the Client invoice items are created in QuickBooks. By default it is:  ${item.name}.

    This option is not available (not required), if in the field Send Invoice Items Based on the option XTRF Payables/Receivables is selected.

  • In the For Client Invoices Use Description Expression field, set up the way the Client invoice descriptions are created in QuickBooks. By default it is: ${entity.finalNumber}.
  • In the For Client Invoices Use QB Item Description Expression field, set up the way the Client invoice item descriptions are created in QuickBooks. By default it is: ${item.displayName}.
  • In the For Client Invoices Use QB Default Item Name field enter a proper expression. By default it is: customerItem.
  • In the Synchronize when Client Invoice Status is field, choose the minimum status of a Client Invoice in XTRF that will trigger the invoice transfer and synchronization to QuickBooks. By default it is Ready.

Please note that XTRF Projects and QuickBooks Client Jobs are synchronized only one-way, from XTRF to QuickBooks. If an XTRF Client Invoice contains tasks from only one project, it gets linked to the Client Job. QuickBooks bills are linked to Client Jobs, too.

 
 

In the Vendors section, select whether the integration should synchronise XTRF Vendors. Further settings in the Vendors section are visible when Synchronise Vendors option is checked. By default, the option is checked.

  • In the For Vendor Invoices Use QB Item Name Expression field, set up the way the Vendor invoice items are created in QuickBooks. By default it is: ${item.activityType.name}.

    From XTRF version 2015 Winter (3.5), this option is not available (not required), if in the field Send Invoice Items Based on the option XTRF Payables/Receivables is selected.

  • In the For Vendor Invoices Use QB Item Description Expression field, set up the way the Vendor invoice items are created in QuickBooks. By default it is: ${item.displayName}.
  • In the For Vendor Invoices Use QB Default Item Name field, enter a proper expression. By default it is: providerItem.
  • In the Synchronize when Vendor Invoice Status is field, choose the minimum status of a Vendor Invoice in XTRF that will trigger the invoice transfer and synchronization to QuickBooks. By default it is Confirmed.
 
 

Once you are done, click Save button at the bottom of the page.

 
 

Go to QWC File Generation tab. Here you can generate a .qwc file that you will need to use later in the QuickBooks Web Connector.

 
 

Click Generate button to generate the .qwc file. Save the file on your local drive.

 

See also: Field Mapping between QuickBooks and XTRF.

QuickBooks Configuration

QuickBooks Web Connector

To integrate your QuickBooks with XTRF, you first need to have installed the QuickBooks Web Connector, which is provided by the developer of QuickBooks. It is a software application that runs on Microsoft Windows that enables specially designed web-based applications to exchange data with QuickBooks products.

For more information, see: https://developer.intuit.com/docs/0200_quickbooks_desktop/0100_essentials/quickbooks_web_connector.

The following steps need to be performed by QuickBooks Administrator.

 Run QuickBooks Web Connector software and open the .qwc file generated by XTRF.
 If asked, authorize XTRF to access QuickBooks.
 Enter the password of the XTRF user created for integration purposes in the Password field of the QuickBooks Web Connector.  Click Yes if asked if you would like the password to be saved.
 

To run the initial synchronization, check in the box on the left of the XTRF application and click Update Selected button.

 Your QuickBooks application and XTRF are now integrated.

See also: Setting QuickBooks Preferences to allow other software to access the data file.

SSL Certificate Installation

TARGET AUDIENCE

This document is intended for Server Administrators with sufficient technical skills. 

XTRF Platform application is expected to be run as a backend service in DMZ, not directly exposed to the Internet. Therefore, we do not support installing SSL certificated directly into XTRF.

In order to expose the proper HTTPS endpoint, you should use a tool called TLS termination proxy, or load balancer. This tool intercepts HTTPS requests, allowing you to enforce access rules, log traffic and perform other actions typical to middleware. XTRF backend socket listens on HTTPS on port 8443.

One example of such tool is Apache HTTPD, which is free and widely available for all operating systems.

Apache HTTPD SSL configuration

Below you can find information necessary for setting up an SSL certificate for your XTRF Platform installation with an Apache server to serve as a proxy for XTRF Platform. The SSL certificate can also be installed by our specialists for an additional fee. Please contact the XTRF Support Team for details. Please bear in mind to always use the latest Apache and OpenSSL releases for maximum security and update them regularly.

 

  • The Apache is required to be installed on the server. Ports 80 and 443 cannot be used by any other application.
  • The CSR can be generated from Apache. For help, refer to these instructions from your chosen SSL provider, or at https://www.digicert.com/kb/csr-ssl-installation/apache-openssl.htm
  • The certificate file is put on the server. The path to the file is indicated in a configuration file, which you can find in Apache's Configuration module. In the same configuration file, you should point to the domain name and ports. XTRF Platform backend runs on port 8443.

 

 

SSL Settings

You might also fine-tune the SSL settings according to the current best recommendations. For example, you can find helpful solutions under the following link:

 

 

 

Apache Settings for HTTPS Proxy (Windows OS)

You should download the Apache HTTPD distribution from https://www.apachehaus.com/cgi-bin/download.plx

Please notice that this configuration requires at least Apache 2.4.12. Add the following code snippet to your Apache config and enable modules: rewrite, logio, proxy, proxy_sslproxy_ajp, proxy_http, headers, status and ssl (if proxy_ssl isn't available) for Apache.

Also please find in the httpd.conf  below line:

And check if it is  uncommented (if there is "#" at the beginning of the line, you have to remove it). In latest versions of Apache (>2.4.17) you should consider enabling HTTP/2: https://httpd.apache.org/docs/2.4/howto/http2.html

As of early 2018, the default Apache HTTPD distribution enables the following file:

You should disable it as it will conflict with the SSL installation - simply prepend it with #.

You can use the following file as a base for your configuration: xtrf-ssl-windows.conf

Apache Settings for HTTPS Proxy (Debian/Ubuntu)

Please notice that this configuration requires at least Apache 2.4.7. This requires at least Debian 8 Jessie or Ubuntu 14.04 Trusty. Execute the following commands to enable required modules:

In latest versions of Apache (>2.4.17) you should consider enabling HTTP/2: https://httpd.apache.org/docs/2.4/howto/http2.html

Please create a file /etc/apache2/sites-enabled/xtrf.conf with the following content (adapt the hostname and SSL certificate location): xtrf-ssl-linux.conf

 

 

 

 

  • No labels