FreshBooks

The FreshBooks modules enable you to create, update and search clients, estimates, invoices, items, or services in your FreshBooks account.

Getting Started with FreshBooks

Prerequisites

  • A FreshBooks account

In order to use FreshBooks with Integromat, it is necessary to have a FreshBooks account. If you do not have one, you can create a FreshBooks account at www.freshbooks.com/signup.

The module dialog fields that are displayed in bold (in the Integromat scenario, not in this documentation article) are mandatory!

Connecting FreshBooks to Integromat

To connect your FreshBooks account to Integromat follow the general instructions for Connecting to services.

After you click the Continue button, Integromat will redirect you to the FreshBooks website where you will be prompted to grant Integromat access to your account.

2019-11-13_12_34_52-https___my.freshbooks.com_service_auth_oauth_authorize_scope__client_id_6daa252c.png

Confirm the dialog by clicking the Allow button.

Client

Create a Client

Creates a new client.

At least one field among First Name, Last Name, Email and Organization is required.
ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to create the client for.
First NameEnter the client's first name.
Last NameEnter the client's last name.
Prefers EmailSelect the Yes option if the client prefers email over ground mail.
Mobile PhoneEnter the client's mobile phone number.
Home PhoneEnter the client's home phone number.
EmailEnter the client's email address.
Prefers Ground MailSelect the Yes option if the client prefers ground mail over email.
UsernameEnter the username used by client to log in.
FaxEnter the client's fax number.
OrganizationEnter the name of the client's business.
Company IndustryEnter the description of the industry the client is in.
VAT nameEnter the Value Added Tax name.
VAT numberEnter the Value Added Tax number.
NoteEnter notes kept by admin about the client.
Business PhoneEnter the business phone number.
LanguageEnter the shortcode indicating the user's language e.g. "en"
StatusSet the visibility state of the client.
Shipping AddressEnter the client's shipping address details.
Billing AddressEnter the client's billing address details.
Currency CodeEnter the 3-letter shortcode for preferred currency.

Update a Client

Updates client details.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to create the client for.
Client IDEnter (map) or select the ID of the client whose details you want to update.

Please find the descriptions of the fields in the Create a Client section above.

Search a Client

Searches a client based on filter settings.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to search the client for.
EmailEnter the exact email you are searching for.
Email likeEnter the part of the email address you want to search.
First NameEnter the first name (or part) of the client's first name.
Last NameEnter the last name (or part) of the client's first name.
Updated FromEnter a date greater than or equal to the update of the client in the YYYY-MM-DD format.
Updated BeforeEnter a date less than or equal to the update of the client in the YYYY-MM-DD format.
User IDEnter the user ID to filter search results by.
StatusSelect the visibility state of the client.
Includes

Specify the information you want to include in the search result.

(source: https://www.freshbooks.com/api/clients)

IncludeDescription
outstanding_balanceInclude client's outstanding balance
credit_balanceInclude client's current balance of credit
draft_balanceInclude balance of draft invoices for client
overdue_balanceInclude overdue balance for client
grand_total_balanceInclude grand total for client
last_activityInclude last activity time
late_remindersInclude information about late reminders
late_feeInclude information about late fees
LimitSet the maximum number of clients Integromat will return during one execution cycle.

Estimate

Create an Estimate

Creates a new estimate.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to create an estimate for.
Estimate NumberEnter the user-specified estimate number. The maximum length is 10 digits.
Customer IDEnter the Client ID of an existing client you want to bill the estimate.
Create DateEnter the Estimate date - the date when the estimate was created in the YYYY-MM-DD format. The current date is preset.
Discount ValueEnter the discount value. The value is in percents of the invoice subtotal.
PO numberEnter the Purchase Order number as a reference for the estimate.
Currency CodeEnter the three-letter currency code for the estimate. e.g. USD, EUR, GBP, CZK, etc.
LanguageEnter the two-letter language code, e.g. en
TermsEnter terms or conditions listed on the estimate.
NotesEnter the notes bank transfer details that will be listed on the estimate.
AddressEnter the first line of the address on the estimate.
StateSelect the visibility state.
StreetEnter the street address on the estimate.
Street2Enter the second line of the street address on the estimate.
CityEnter the city of the address on the estimate.
ProvinceEnter the province of the address on the estimate.
CodeEnter the ZIP code of the address on the estimate.
CountryEnter the country of the address on the estimate.
OrganizationEnter the name of the organization being estimated.
First NameEnter the first name of client being estimated.
Last NameEnter the last name of client being estimated.
VAT NameEnter the Value Added Tax name if provided.
VAT NumberEnter the Value Added Tax number if provided.
LinesSpecify the line item details.

Search an Estimate

Searches an estimate based on filter settings.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to search the estimate for.
Client IDEnter or select the client the searched estimates is billed to.
Estimate IDEnter the estimate ID to filter results by.
Estimate number likeEnter the part of the estimate number to filter results by.
Estimate numberEnter the exact estimate number to filter results by.
StatusSelect the estimate status you want to search.
Updated fromEnter the date greater than or equal to the update date of the estimate in the YYYY-MM-DD format.
Updated beforeEnter the date less than or equal to the update of the estimate in the YYYY-MM-DD format.
PO numberEnter the Purchase Order number.
Item nameEnter the item name to filter results by.
Amount minEnter the minimum amount to filter results by.
Amount maxEnter the maximum amount to filter results by.
Item descriptionEnter the item description to filter results by.
LimitSet the maximum number of estimates Integromat will return during one execution cycle.
IncludesSelect the information you want to include in the result.

Invoice

Create an Invoice

Creates a new invoice.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to create an invoice for.
EmailEnter the email.
StatusSelect the status of the invoice.
Customer IDEnter (map) or select the client you want to create the invoice for.
Create DateEnter the invoice creation date. The current date is preset.
Lines
TypeSelect whether the line is a normal or rebilling expense line.
DescriptionEnter the description for the invoice line item.
Expense IDRequired only when the type is set to rebilling. Enter the ID of the rebilling expense.
Tax Name 1Enter the name for the first tax on the invoice line.
Tax Amount 1Enter the first tax amount, in percentage, up to 3 decimal places.
NameEnter the name for the invoice line item.
Item ID 
QtyEnter the quantity of the invoice line unit.
Tax Name 2Enter the name for the second tax on the invoice line.
Tax Amount 2Enter the second tax amount, in percentage, up to 3 decimal places.
Unit Cost

Specify the unit cost of the line item.

Amount
Enter the unit cost amount, to two decimal places

Code
Enter the three-letter currency code. E.g. USD, EUR, GBP, etc.

Invoice NumberEnter the user-defined and visible Invoice ID. 
Generation DateEnter the date in the YYYY-MM-DD format if the invoice was generated from the object. Otherwise, leave the field empty.
Discount ValueEnter the percent amount being discounted from the subtotal, decimal-string amount ranging from 0 to 100.
Discount DescriptionEnter the public note about the discount.
PO numberEnter the reference to the purchase order.
Currency CodeEnter the uppercase three-letter currency code for the invoice. E.g. USD, EUR, GBP, etc.
LanguageSpecify the language of the invoice. Enter the two letter code. E.g. en, de, es, ...
TermsEnter the terms and conditions listed on the invoice.
NotesEnter the notes listed on the invoice.
Deposit amountEnter the amount required as deposit, leave empty if none.
Deposit PercentageEnter the percent of the invoice's value required as a deposit.
Ground MailSelect the Yes option if the invoice should be sent via ground mail.
Show attachmentEnable this option to render attachments on the invoice.
Visibility stateSelect whether the invoice should be set as active or as deleted.
AddressEnter the first line of the address on the invoice.
StateSelect the visibility state.
StreetEnter the street address on the invoice.
Street2Enter the second line of the street address on the invoice.
CityEnter the city of the address on the invoice.
ProvinceEnter the province of the address on the invoice.
CodeEnter the ZIP code of the address on the invoice.
CountryEnter the country of the address on the invoice.
OrganizationEnter the name of the organization being invoiced.
First NameEnter the first name of the client being invoiced.
Last NameEnter the last name of the client being invoiced.
VAT NameEnter the Value Added Tax name if provided.
VAT NumberEnter the Value Added Tax number if provided.
Due Offset DaysEnter the number of days from creation that the invoice is due.

Search an Invoice

Returns invoices based on the filter settings.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to search the estimate for.
EmailEnter the client's email address.
Customer IDEnter or select the client the searched invoice is billed to.
Invoice IDEnter the Invoice ID to filter results by.
Updated fromEnter a date greater than or equal to the date the invoice was updated in the YYYY-MM-DD format.
Updated beforeEnter a date less than or equal to the date the invoice was updated in the YYYY-MM-DD format.
Created fromEnter a create date greater than or equal to the create date of the invoice in the YYYY-MM-DD format.
Created beforeEnter a create date less than or equal to create date of the invoice in the YYYY-MM-DD format.
LimitSet the maximum number of invoices Integromat will return during one execution cycle.
IncludesSelect the information you want to include in the result.

Update an Invoice

Updates the existing invoice.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to update an invoice for.
Invoice IDEnter (map) the ID of the invoice you want to update.

Please find the descriptions of the fields in the Create an Invoice section above.

Services and Items

Create a Service

Creates a service.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to create a service for.
NameEnter the name of the service.
DescriptionEnter the description for the service.
StatusSet whether the service is active or not active.
Rate

Amount
Set the hourly amount charged for the service.

Currency
Specify the currency of the rate.

Tax 1

Enter or select the ID of the tax on the invoice.

Tax 2

Enter or select the ID of the tax on the invoice, if applicable.

BillableEnable this option if the service is billable.

Create an Item

Creates an item.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to create an item for.
Item NameEnter the descriptive name of the item.
Accounting System IDEnter the unique ID of the business client it exists on.
QuantitySet the decimal number to multiply the unit cost by.
SKUEnter the ID for a specific item or product, used in inventory management.
InventoryEnter the decimal count of inventory.
Unit Cost

Amount
Enter the amount paid on invoice, to two decimal places.

Currency
Enter the three-letter currency code. E.g. USD, EUR, GBP.

StatusSet the status of the item. 
Tax 1Enter the ID of the tax on the invoice.
Tax 2Enter the ID of the second tax on the invoice, if applicable.
DescriptionEnter the description for the item.

Update an Item

Updates an item.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to update an item for.
Item IDEnter the ID of the item you want to update.

Please find the descriptions of the fields in the Create an Item section above.

Update a Service

Updates a service.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account you want to update an item for.
NameEnter the name of the item you want to update.

Please find the descriptions of the fields in the Create a Service section above.

Search an Item

Searches for items.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account where you want to search for an item.
Item IDEnter the ID of the item you want to search.
SKUEnter the exact SKU you want to search.
DescriptionSearches items by the description.
Unit cost min/maxSpecify the unit cost range within the search that the results are filtered by.
Inventory min/maxSpecify the number of items in the inventory range that the search results are filtered by.
Updated min/maxSpecify the date range in the YYYY-MM-DD format that the search results are filtered by.
Quantity min/maxSpecify the quantity range the search results are filtered by.
LimitSet the maximum number of items Integromat will return during one execution cycle.

Search a Service

Searches for services.

ConnectionEstablish a connection to your FreshBooks account.
Account IDSelect or map the ID of the account where you want to search for an item.
Service IDEnter the ID of the service you want to search.
BillableEnable this option if you want to include billable services in the search.
Project IDEnter (map) the project that the service you search belongs to.
Rate min/maxSpecify the rate range that the search results are filtered by.
Updated min/maxSpecify the date range in the YYYY-MM-DD format that the search results are filtered by.
LimitSet the maximum number of services Integromat will return during one execution cycle.

Other

Make an API Call

Allows you to perform a custom API call.

ConnectionEstablish a connection to your FreshBooks account.
URL

Enter a path relative to https://api.freshbooks.com. E.g. /accounting/account/5ovd72/invoices/invoices

For the list of available endpoints, refer to the FreshBooks API Documentation.
Method

Select the HTTP method you want to use:

GET
to retrieve information for an entry.

POST
to create a new entry.

PUT
to update/replace an existing entry.

PATCH
to make a partial entry update.

DELETE
to delete an entry.

HeadersEnter the desired request headers. You don't have to add authorization headers; we already did that for you.
Query StringEnter the request query string.
BodyEnter the body content for your API call.

Example of Use - List Invoices

The following API call returns the first 10 files from the /Text files folder in your Dropbox account:

URL:
/accounting/account/<account ID>/invoices/invoices
Replace the <account ID> by the ID of the account you want to retrieve invoices from.

Method:
GET

2019-11-25_17_29_34-Window.png

Matches of the search can be found in the module's Output under BundleBody > response > invoices
In our example, 11 invoices were returned:

2019-11-25_17_34_50-Window.png

Popular use cases from our blog

automated-data-collection-crm-illustration

How to Automate Data Collection - Part 5: CRM Systems

automated-data-collection-chatbot-marketing-illustration

How to Automate Data Collection - Part 4: Chatbot Marketing

automated-data-collection-paid-ads-illustration

How to Automate Data Collection - Part 3: Paid Ads

automated-data-collection-email-illustration

How to Automate Data Collection - Part 2: Email Marketing Segmentation

personalized-customer-experience-illustration-integromat

5 Automated Solutions to Personalize Customer Experience

data-collection-automation-forms-pt-1

How to Automate Data Collection - Part 1: Online Forms

Didn’t find what you were looking for?

Expert

Find an expert

We feature a network of 450+ certified partners across the globe who are ready to help

Find an expert

Automate any workflow in your business

Sign up for a free account today. No credit card required, no time limits on free plan.