Description
Core Capabilities Overview
Freelancers, agencies, consultants, and small service businesses that already collect leads and orders through Gravity Forms will get the most from the Gravity Forms FreshBooks Add-On. Every submission becomes a record in your accounting system without anyone copying a name, an address, or a line item by hand. A quote request can turn into a client and an estimate. An order form can produce an invoice. An internal expense form can land in FreshBooks already assigned to the right staff member and category.
Three things set this add-on apart from a generic connector. First, it covers a wide range of FreshBooks record types from one feed screen: clients, invoices, estimates, expenses, other income, credit notes, recurring invoice profiles, projects, time entries, and billable items. Second, it matches clients by email address, so a returning customer updates their existing record instead of creating a duplicate. Third, it builds invoice and estimate line items straight from Gravity Forms Product fields, which means the prices your visitors see on the form are the prices that show up on the document.
Conditional logic sits on top of all of this. You decide which entries sync and which don’t, so a single form can feed several different FreshBooks actions depending on what the submitter chose.
Feature Breakdown
Client Records That Stay Clean
Map the submitter’s email, name, organization, phone numbers, billing address, shipping address, VAT details, currency, and language to the matching FreshBooks client fields. You can add notes as well. Choose whether each qualifying submission creates a fresh client or updates an existing one when the email matches. For businesses with repeat customers, that second option keeps your client list from filling up with near-identical entries.
Invoices and Estimates
Line items can come from three places: Gravity Forms Product fields, a fixed line item you define in the feed, or an item that already exists in FreshBooks. Beyond the lines themselves, you can map the document date and purchase order number, apply a discount, and add notes and terms. A setting lets the add-on email the finished invoice or estimate to the client right away, which suits businesses that want a quote or bill delivered the moment the form is sent.
Everything Else the Feed Can Create
- Expenses assigned to FreshBooks staff and expense categories, with an optional client attached
- Other income recorded with an amount, date, category, source, and notes
- Credit notes generated from submitted form data
- Recurring invoice profiles with a billing frequency of your choosing
- Projects created from a submission, optionally tied to a client
- Time entries logged against a FreshBooks project when you want them associated
- Billable items with a name, description, and unit cost that you can reuse later
Recurring Billing Controls
For retainers and subscriptions, pick how often invoices should be generated and how many should be created. You can also leave the schedule open-ended so billing continues without a set finish. A separate option decides whether FreshBooks emails each generated invoice to the client.
Merge Tags, Payments, and Delayed Processing
Merge tags let you customize record details with data from the entry, such as pulling a project description or a note directly from a form field. The add-on supports delayed payment processing, so records can wait until a payment is completed. It can also record that completed payment against the FreshBooks invoice, keeping your books aligned with what actually came in.
Real-World Applications
Web Design and Marketing Agencies
An agency’s project intake form asks for company details, a package selection, and a start date. With a client feed and an estimate feed running on the same form, the prospect lands in FreshBooks with a ready-to-send estimate. Another feed can create a project in FreshBooks once the work is confirmed, so the team starts from a record that already exists.
Consultants and Coaches
A consultant sells sessions through a WordPress booking form with Product fields for each package. The submission creates or updates the client, builds an invoice from the selected products, and emails it. If a client signs up for ongoing monthly sessions, a recurring invoice feed with a defined number of cycles handles the schedule.
Service Businesses With Field Staff
A contractor’s team submits a form after buying materials. The entry becomes a FreshBooks expense, assigned to the staff member and filed under the right category. Where the cost belongs to a customer, the expense is linked to that client so it can be billed back.
Nonprofits and Membership Sites
A donation or dues form can record the amount as other income with a category and source. Where a refund or adjustment is needed, a credit note feed produces that document from the submitted details. Conditional logic keeps these actions separate, so a donation doesn’t accidentally trigger an invoice.
Hourly Workers and Small Teams
A simple time-tracking form on a private WordPress page can log time entries directly into FreshBooks, optionally attached to a project. It’s a light way to collect hours from contractors who never log in to the accounting software.
How Does the Gravity Forms FreshBooks Add-On Connect to My Account?
Authentication uses OAuth 2.0 against the current FreshBooks REST API. You create a developer application inside FreshBooks, copy the redirect URI the add-on displays, and then authorize the connection from the FreshBooks screen under Forms → Settings. No passwords are stored in your form settings.
If your FreshBooks user belongs to more than one business, you pick the account that should receive form data. That matters for agencies and bookkeepers who manage several businesses under a single login, since it prevents entries from landing in the wrong books.
How It Works Under the Hood
Everything runs through feeds, the standard Gravity Forms mechanism for sending entries to outside services. Open a form, add a FreshBooks feed, and choose the record type. The feed then shows the fields relevant to that type, and you map each one to a form field or a merge tag. A form can carry multiple feeds, and each can have its own conditional logic.
When a qualifying entry is submitted, the add-on sends the mapped data to FreshBooks and creates or updates the record. For clients, it checks for a matching email first. For invoices and estimates, it assembles the line items from your chosen source, applies the discount, adds notes and terms, and sends the document if you’ve turned that on. If you’ve chosen delayed processing, the feed waits for payment to finish before it acts. The Gravity Forms FreshBooks Add-On WordPress plugin keeps this logic inside your normal form editor, so there’s no separate dashboard to learn.
Frequently Asked Questions
Will a returning customer create a duplicate client in FreshBooks?
Not if you choose the update option. The Gravity Forms FreshBooks Add-On compares the submitted email address with existing FreshBooks clients. When it finds a match, it updates that record with the new details. If you’d rather create a new client every time, that is also available.
Can one form create a client and an invoice together?
Yes. You can attach several feeds to the same form, one for the client and another for the invoice. Each feed carries its own mapping and conditional logic, so you control which ones run for a given submission. The invoice can then be emailed to the client automatically.
Can I record a payment against an invoice the add-on created?
The add-on can record a completed payment against the FreshBooks invoice, and it supports delayed payment processing. That means a feed can hold off until the payment has gone through. Your FreshBooks invoice then reflects the payment rather than sitting open.
Is this add-on GPL-licensed?
Yes, it is released under the GPL. You can use it on your WordPress sites in line with that license, and the code is open for you to inspect and adapt within those terms.

