Skip to main content


Learn about our FreshBooks integration.

You can synchronize accounting data with FreshBooks using our FreshBooks integration.

Data type coverage

View the coverage of our FreshBooks integration in the Data coverage explorer.

Supported versions

FreshBooks Classic organizations are not supported. FreshBooks Classic is a legacy version of FreshBooks and uses a different API.

Set up the integration

Before you can access data from your customers who use FreshBooks for their accounting, you need to set up the FreshBooks integration.

You'll need to:

  • Create a FreshBooks application.
  • Add the application's secure keys to the Codat Portal.

Create a FreshBooks application

Create and configure an application in the FreshBooks Developer Portal.

  1. Log in to

    If you don't already have an account, you can create one by clicking Try it Free.

  2. On the Dashboard, click the cog icon and then select Developer Portal.

    The Apps page in the Developer Portal is displayed.

  3. Click Create New App.

  4. Enter the following information into the boxes on the Create Application page:

    • Application Name: Enter a name for your application. This is displayed to your users when they authorize your access to their accounting data, so choose a name that clearly identifies your organization.

    • Application Type: Select Private App.

    • Scopes: Add the required read and write scopes listed in FreshBooks application scopes.

    • Redirect URIs: Enter then click the check mark icon to save the URI.

  5. Click Save to create your app.

  6. Select your new app from the All Apps list. Locate the app's Client ID and Client Secret at the bottom of the page.

FreshBooks application scopes

The following table lists the recommended scopes to set for your FreshBooks application. If the scopes you require change in future, all connected companies will need to reauthenticate with your app.

Read and write scopes

The table outlines the minimum scopes needed to allow read (pull) access to the FreshBooks objects that are supported by Codat. If you want to create, update or delete data in FreshBooks, you need to select the corresponding write scopes for the relevant objects.

user:profile:read, user:bills:read, user:bill_payments:read, user:business:read, user:bill_vendors:read, user:clients:read user:credit_notes:readuser:estimates:read, user:expenses:read, user:journal_entries:read, user:online_payments:read, user:payments:read, user:projects:read, user:retainers:readuser:taxes:read, user:billable_items:read, user:invoices:read, user:other_income:read, user:reports:read, user:teams:read

Add your app's secure keys to the Codat Portal

  1. In the Codat Portal, go to the Accounting integrations page.

  2. Locate FreshBooks and click Set up.

  3. Under Integration settings, enter the values for the Client ID and Client secret from your app in the FreshBooks Developer Portal.

  4. Click Save. A confirmation message appears if the settings were saved successfully.

  5. The Enable FreshBooks dialog is displayed. Select whether to enable the integration now or later.


Make sure that your secure keys don't contain any spaces.

Enable the FreshBooks integration

  1. In the Codat Portal, go to the Accounting integrations page.
  2. Locate FreshBooks and click the toggle to enable the integration.

You can also click Manage to view the integration's settings page, and then enable the integration from there.

Was this page useful?