# FreshBooks + Krokul CRM

Yes. Krokul CRM integrates with FreshBooks. Client companies and FreshBooks clients stay in sync, Krokul quotes and invoices become FreshBooks estimates and invoices, and payments recorded in FreshBooks settle the invoice on the deal. Time entries can flow into Krokul projects. The link runs through the Krokul app in Zapier, Make and Albato, or through the Krokul API and webhooks.

**Status:** Via API and webhooks. **Automation platforms:** Zapier, Make, Albato.

## What your team gets

### One client record in both systems

A client company created in Krokul becomes a FreshBooks client. When someone edits the client in FreshBooks, the `client.update` webhook tells Krokul, and the connector reads the record and updates the company. Each side keeps the ID of the other.

### Estimate first, invoice after the yes

A Krokul quote becomes a FreshBooks estimate, which FreshBooks can email to the client. When the deal is won and the invoice is issued in Krokul, the connector creates the FreshBooks invoice for the same client with the same lines.

### Payment recorded in FreshBooks

When a client pays an invoice in FreshBooks, the `payment.create` webhook arrives with the payment ID. Krokul reads it, finds the invoice by its FreshBooks ID and records the payment fact on the deal.

### Transfers recorded in Krokul

Teams that log bank transfers in Krokul set Krokul as the payment owner. Each payment fact on a Krokul invoice then creates a matching entry on the same FreshBooks invoice, and the bookkeeper does not type it twice.

### Hours tracked in FreshBooks land on the Krokul project

Link a FreshBooks project to its Krokul counterpart in the connector settings. Each new time entry adds the same hours there, so the hours report and the act for the client use real numbers.

## What moves between FreshBooks and Krokul

| FreshBooks | Krokul | Direction | When |
|---|---|---|---|
| Client | Client company | Krokul ↔ FreshBooks | Created in Krokul; changed in either system |
| Estimate | Quote (document) | Krokul → FreshBooks | A quote is issued in Krokul |
| Invoice | Invoice (document) | Krokul → FreshBooks | An invoice is issued in Krokul |
| Invoice status | Invoice status on the deal | FreshBooks → Krokul | `invoice.update` webhook |
| Payment | Payment fact on the invoice | FreshBooks ↔ Krokul | `payment.create` webhook, or a payment recorded in Krokul (one owner per connection) |
| Time entry | Hours on the linked project | FreshBooks → Krokul | A time entry is created in FreshBooks |

## How to connect today

### Krokul app in Zapier, Make or Albato

1. Connect the Krokul app with a Krokul API key.
2. Pair a Krokul trigger such as Deal Won with a FreshBooks action such as Create Project or Send Estimate.
3. From FreshBooks triggers like New Project or New Time Entry, use Krokul actions such as Create Task or Log Hours.

### Custom flow through the Krokul API and webhooks

1. Give your flow a Krokul API key limited to client companies, documents, payments and projects.
2. Register a Krokul webhook for clientCompany.created and document.created, and check every delivery against the x-crm-signature header.
3. Create the FreshBooks client and invoice through the FreshBooks API and keep both IDs on the Krokul records with externalRef/api-upsert.
4. When FreshBooks reports payment.create, record the payment with payment/api-create and the cardUuid of the deal; time entries go to the project through project/api-logHours.

**Triggers:** New Client; New Estimate; New Invoice; Updated Invoice; New Invoice Payment; New Project; New Time Entry.

**Actions:** Create or Update Client; Create Estimate; Send Estimate; Create Invoice; Send Invoice; Add Payment to Invoice; Create Project.

### For integrators

FreshBooks webhooks cover clients, estimates, invoices, payments, projects and time entries, and you can subscribe to every event of a resource by its name, such as `invoice`. Each notification carries the event name and object ID, and the verifier from the registration handshake signs it. Krokul gives integrators a public API, HMAC-SHA256 signed webhooks with `x-crm-delivery` for deduplication, external keys for companies, products, deals and documents, and a sandbox company.

[API documentation](https://app.krokul.com/api/v1/docs)

## Questions and answers

### Does Krokul integrate with FreshBooks?

Yes. Krokul integrates with FreshBooks through the Krokul app in Zapier, Make and Albato, and through its API and webhooks.

### Which way should payments flow?

Each connection names one payment owner. If clients pay FreshBooks invoices online, FreshBooks owns payments and Krokul reads them. If your team records transfers in Krokul first, Krokul owns them and sends each one to FreshBooks.

### Can FreshBooks time entries count against Krokul projects?

Yes. Link a FreshBooks project to a Krokul project in the connector settings, and new time entries add hours to that Krokul project.

### How fast do FreshBooks changes reach Krokul?

FreshBooks sends a webhook when a record changes. The notification holds only IDs, so the receiving flow reads the record from the FreshBooks API. In the other direction, Krokul sends its webhook as soon as the event happens.

## Limits

Expenses, bills, accounting reports and payroll stay in FreshBooks. Each connection gives payments one owner. Either FreshBooks records a payment and Krokul reads it, or Krokul records it and sends it to FreshBooks.

## Related services

- [QuickBooks Online](https://krokul.com/en/integrations/quickbooks-online/index.md)
- [Xero](https://krokul.com/en/integrations/xero/index.md)
- [Zoho Books](https://krokul.com/en/integrations/zoho-books/index.md)
- [Sage Accounting](https://krokul.com/en/integrations/sage-accounting/index.md)
- [Stripe](https://krokul.com/en/integrations/stripe/index.md)

[Accounting](https://krokul.com/en/integrations/category/accounting/index.md)

FreshBooks is a trademark of its owner. Krokul is not affiliated with FreshBooks.

Updated: 2026-10-12

---

App: https://app.krokul.com/ · API: https://app.krokul.com/api/v1/docs
