Skip to content

Integration with FreshOffice

How It Works

The tracking code serves to collect and send visitors' data to Roistat from a website.

Firstly, the tracking code should be placed on each web page you wish to track. Having added the tracking code will set the roistat_visit variable containing a visit ID into the cookie. Once you have successfully installed the tracking code on your website, the Promo Code functionality will be available.

Secondly, it's necessary to customize deal export from Roistat to FreshOffice by adding the value of the roistat_visit cookie to the deal. We developed an easy-to-manage module for data export. It won't take you a lot to set it up.

In summary, when a visitor completes the target action on the web page, a new deal is created in your CRM and characterized among others by the visit ID (the roistat_visit variable) contained in the roistat field. Otherwise, if a client is calling, a manager asks him/her for a promotional code and puts it down to a deal card.

Step 1. Set Up Tracking Code

To view the Roistat tracking code, navigate to Settings → Tracking Code:


Insert the code between the <body></body> tag of your web pages. It can be placed next to the Google Analytics counter or any others.

The tracking code must be placed into the HTML code of every page of your website.

Consequently, all visits will be counted and analyzed in Analytics.

Do not place more than one counter in a page to prevent inaccurate data entry.

Step 2. Configure Access and Arrange Statuses

  1. In Roistat, navigate to Settings → Integrations and choose FreshOffice from the integrations list.

    Specify your API account ID and API account password.

    You can find them in your FreshOffice account. Click the gear icon at the top-right corner of the screen and choose API documentation:


    The API key settings will be shown then. Copy your ID and Password:


  2. Insert the copied data into the corresponding fields in Roistat and save the settings by clicking Save.

    If you did all correctly, FreshOffice deal statuses will be imported to Roistat:


  3. Then, you should arrange statuses in Roistat. Just drag and drop a status to the box you wish.

    Please note:

    The Roistat promo code is exported to the Note field of a deal card in FreshOffive. Never change the roistat line otherwise Roistat will fail to import the deal data.


Step 3. Automatic Deals Export

If deals are already created automatically

In this case, the roistat field should contain the value of the roistat_visit cookie.

Below is an example of the string that contains the value of this cookie:

$roistatVisitId = array_key_exists('roistat_visit', $_COOKIE) ? $_COOKIE['roistat_visit'] : "unknown"

When created deals should be automatically exported from your website to FreshOffice. For this to happen, we offer you a complete solution: deal proxying.

When a deal is created on your website, it is automatically created in FreshOffice as well, and a backup copy of this deal data is stored in your Roistat account. Keeping this in mind, you will not have to worry that FreshOffice can be off-line sometimes. In any case, all the data is stored and then re-exported to FreshOffice some time later.

To set up deal proxying, insert the following code snippet into the file that process deal forms on your website (e.g. send data to some e-mail):


// Data should be encoded in UTF-8
// If Windows-1251 is used, you can convert all variables through $value = iconv("Windows-1251", "UTF-8", $value);

// ...
// the current lead creation function, e.g. mail(), is called somewhere here
// ...

$roistatData = array(
    'roistat' => isset($_COOKIE['roistat_visit']) ? $_COOKIE['roistat_visit'] : null,
    'key'     => 'SECRET_KEY', // Instead of SECRET KEY insert the secret key itself which you can copy by clicking the Integration key: show link at the bottom of the page Settings -> Integrations -> amoCRM
    'title'   => 'Lead title',
    'comment' => 'Lead commentary',
    'name'    => 'Client's name',
    'email'   => '',
    'phone'   => '79111234567',
    'fields'  => array(),

file_get_contents("" . http_build_query($roistatData));

Verify the Integration

When a client completes some target action (completes application form, places an order etc.), a new deal is created in FreshOffice and characterized among others by the roistat field. The field must be non-empty.

You can view deals from Roistat as well going to the Project diagnosticsList of submitted leads section: