FreshBooks configuration

Creating connection to FreshBooks

This only applies if you are hosting ManicTime Server yourself. It does not apply if you are using ManicTime Cloud.

Before users can make a connection to FreshBooks to get projects, ManicTime Server needs to be connected to FreshBooks.

  1. On FreshBooks, go to FreshBooks developer hub. Then click on the Create new app.
FreshBooks developer hub
  1. Fill the required fields

  2. For Scopes field you need to add:

    • user:profile:read
    • user:clients:read
    • user:time_entries:read
    • user:time_entries:write
  3. To get the Authorization callback url for the Redirect URIs field, go back to ManicTime server, Administration and under FreshBooks configuration, you will see a list of possible Redirect URIs.

Possible redirect URIs
  1. Copy one of them to Redirect URIs field.
  2. Click save on top. Click on your app where you can see Client ID and secret on the bottom.
FreshBooks Client Id and Secret fields
  1. Copy Client ID and secret to ManicTime Server FreshBooks Connection Configuration screen.
Copy Client Id and Secret to ManicTime Server FreshBooks Configuration screen
  1. Click "Test connection" to see if the connection is set properly, then save it.

When you click "Test connection", you will go through the authentication process, like all users who will try to connect to FreshBooks.

Editing or deleting configuration

Any changes to Client Id or Secret will delete existing connections for all users.

If you delete the configuration all users data will be also deleted.

Connection settings

In the FreshBooks configuration settings, you have the ability to control the visibility of projects for users. You can set up various filters to determine which projects a user can see. These filters can be based project states (opened or completed), time frames (e.g., projects completed in the last X days) and assignment to users.

One important setting in FreshBooks is the "Authenticated user" setting. This refers to a specific user account that is used to authenticate and query data from FreshBooks. This user should have access to all projects you want to import.

Users then need to go to Administration -> My connections and authenticate with FreshBooks, and the tags should be visible in the add tag window.

Syncing time with FreshBooks

Please note that users must use tags that came from FreshBooks to successfully send tags back to FreshBooks.

This connection also has the ability to send tags back to FreshBooks as time entries. You can enable this feature in Connection settings. The user needs to use tags from FreshBooks and then they are automatically sent back to FreshBooks every 2 hours or you can send tags to FreshBooks manually, if you click the Sync now button. Tags are assigned to the FreshBooks user that corresponds to the ManicTime user who created the FreshBooks tag.

Sync now and Sync reports buttons

You can also see status of the synced tags, if you click Sync reports where you have a summary for every sync. If you click on it you have a detailed report for synced tags.

Sync reports
Sync report