Vendors / Accounting

FreshBooks

FreshBooks uses customer-authorized OAuth with rotating single-use refresh tokens. Invoice APIs and callbacks support external copies, but failures can disable webhook delivery.

Overall controlB7.2*/10
Assessment checked 2026-10-16Public documentation · No live account test

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

OVERALL CONTROL / 0.6-customer-control

Grades and scoring

Overall B / 7.2*/10, with 13 of 16 applicable scoring inputs verified. Missing evidence discounts the supported score (unknown answers remain unknown).

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Data access and planned exit carry the most weight. Known commercial barriers cap access; an unpublished price applies a bounded discount. Post-cancellation retrieval is a separate disclosure. Open each dimension to inspect its inputs and sources.

B6.6*/10

Data access

25% of the overall score before applicability adjustment.

Scored answers and evidence

Read interface 7.5/10

Structured API for the declared product scope

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Structured read interface for the declared product and resources

Invoices ↗
Structured read interface for the declared product and resources · Checked 2026-10-16

Answer-to-score anchors ↗

Bulk delivery 8.8/10

Batched or iterable API requests

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Documented list/collection retrieval within the stated endpoint scope; whole-product recovery unverified

Invoices ↗
Documented list/collection retrieval within the stated endpoint scope; whole-product recovery unverified · Checked 2026-10-16

Answer-to-score anchors ↗

Query expressiveness 8.8/10

Documented structured API filters

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Per-resource search filters and page/per_page

Search, Paging and Includes ↗
Per-resource search filters and page/per_page · Checked 2026-10-16

Answer-to-score anchors ↗

Access cost barrier -

-

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Reviewed entitlement documentation; minimum eligible plan and fixed route-specific access charges remain unresolved

Authentication ↗
Reviewed entitlement documentation; minimum eligible plan and fixed route-specific access charges remain unresolved · Checked 2026-10-16

Answer-to-score anchors ↗
A8.8*/10

Third-party accessibility

20% of the overall score before applicability adjustment.

Scored answers and evidence

Third-party eligibility 10.0/10

Customer authorization without discretionary provider approval

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer authorizes app scopes through OAuth; app registration described

Authentication ↗
Customer authorizes app scopes through OAuth; app registration described · Checked 2026-10-16

Answer-to-score anchors ↗

Downstream permission -

-

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Reviewed access documentation; applicable downstream processing, AI and redistribution terms not established

Authentication ↗
Reviewed access documentation; applicable downstream processing, AI and redistribution terms not established · Checked 2026-10-16

Answer-to-score anchors ↗
A8.5/10

External action

15% of the overall score before applicability adjustment.

Scored answers and evidence

Write interface 7.5/10

Create and update in one business domain

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Create and update invoices; POST and PUT examples

Invoices ↗
Create and update invoices; POST and PUT examples · Checked 2026-10-16

Answer-to-score anchors ↗

Custom application path 10.0/10

Customer applications using fixed APIs without provider selection

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer application uses the documented authorization route

Authentication ↗
Customer application uses the documented authorization route · Checked 2026-10-16

Answer-to-score anchors ↗
B6.1/10

Continuity

15% of the overall score before applicability adjustment.

Scored answers and evidence

Refresh mechanism 7.5/10

Documented updated-since filters or webhooks

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Invoice create/update/delete callbacks

Webhook Callbacks ↗
Invoice create/update/delete callbacks · Checked 2026-10-16

Answer-to-score anchors ↗

Limit visibility 2.5/10

Governors or limits stated without quantities

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Request limits reviewed; universal numeric sustained throughput not established

Request Limits ↗
Request limits reviewed; universal numeric sustained throughput not established · Checked 2026-10-16

Answer-to-score anchors ↗

CDC and deletion capture 7.5/10

Updates and deletion identities documented for the stated resources

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Invoice callback event and object_id; supported invoice actions

Webhook Callbacks ↗
Invoice callback event and object_id; supported invoice actions · Checked 2026-10-16

Answer-to-score anchors ↗

Replay and gap recovery 5.0/10

Bounded redelivery or overlapping queries; no durable consumer checkpoint

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Failed callbacks retry then drop; no durable replay contract

Webhook Callbacks ↗
Failed callbacks retry then drop; no durable replay contract · Checked 2026-10-16

Answer-to-score anchors ↗
B7.5/10

Data exit

20% of the overall score before applicability adjustment.

Scored answers and evidence

Export custody 7.5/10

Customer-held structured files or API records

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer-held structured API records within the declared resource scope

Invoices ↗
Customer-held structured API records within the declared resource scope · Checked 2026-10-16

Answer-to-score anchors ↗

Post-cancellation access Disclosure

-

Disclosure only; does not reduce planned-exit credit.

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Applicable post-cancellation retrieval clause not established by reviewed technical documentation

Authentication ↗
Applicable post-cancellation retrieval clause not established by reviewed technical documentation · Checked 2026-10-16

Answer-to-score anchors ↗

Planned migration fidelity 7.5/10

Portable structured records on documented routes; whole-product completeness unverified

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Structured resource records can be retrieved; complete attachments, versions, relationships and native configuration remain unverified

Invoices ↗
Structured resource records can be retrieved; complete attachments, versions, relationships and native configuration remain unverified · Checked 2026-10-16

Answer-to-score anchors ↗
D2.1*/10

Business logic and customization

5% of the overall score before applicability adjustment.

Scored answers and evidence

Logic authoring 2.5/10

External integration code; native business logic portability not established

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer integration code can run outside the provider; native workflow authoring not established

Authentication ↗
Customer integration code can run outside the provider; native workflow authoring not established · Checked 2026-10-16

Answer-to-score anchors ↗

Rights to custom logic -

-

FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Ownership and reusable export or independent execution of native workflow artifacts remain unresolved

Authentication ↗
Ownership and reusable export or independent execution of native workflow artifacts remain unresolved · Checked 2026-10-16

Answer-to-score anchors ↗

Scores are out of 10. * Incomplete evidence discounts verified capabilities (unknown answers stay unknown). Planned migration drives data exit. Scoring method ↗

CUSTOMER CHOICE

Third-party accessibility

Customers authorize an app’s scopes through OAuth. Each new refresh token invalidates previous refresh tokens for that user/app, so integrations must serialize refresh and persist the replacement.

Third-party eligibilityCustomer authorization without discretionary provider approvalSource & scope ↗
Access cost barrier-Source & scope ↗
Downstream permission-Source & scope ↗

Confirm who can connect, who owns the credentials and which uses are permitted. Customer consent and provider approval can be separate requirements; the selected plan and contract still matter.

READ / INTEGRATE

API and export routes

Accounting lists support per-resource search and pagination, capped at 100 per page. Invoice records and PDF presentation are distinct outputs; a successful invoice read does not establish a full account backup.

Access routeAuthenticationCredential ownerProvider approvalAccess requirementLast checked
FreshBooks scoped API accessOAuth 2.0CustomerNoCustomer-supplied credentials2026-10-16

Availability depends on your product, plan and agreement. See the documentation below for the requirements of each route.

ECONOMIC ACCESS

Cost, authentication and limits

Minimum-plan API entitlement and access-specific charges remain unresolved. Request limits are published separately from subscription pricing.

Check API entitlement, credential ownership and rate limits for the route you intend to use. Include review fees, customer-plan upgrades and ongoing access charges in the total.

ACT FROM OUTSIDE

External action

The invoice API documents POST creation and PUT updates. Emailing invoices and taking payments are separate actions and cannot be inferred from record-writing permission.

Validate the supported operation, acting identity and permission scope (read access does not imply write permission). Ambiguous retries and revoked credentials also affect whether an external workflow can run safely.

KEEP ACCESS USEFUL

Continuity

Callbacks identify account, business, resource and event. Failed deliveries retry periodically, then messages can be dropped; sustained failure can disable the callback. This is bounded delivery rather than a durable replay cursor.

CDC, deletions and recovery

QuestionAnswer / applicable routeEvidence
Can ongoing extraction identify updates and deleted records on the declared route?Updates and deletion identities documented for the stated resourcesFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Invoice callback event and object_id; supported invoice actions

Webhook Callbacks ↗Invoice callback event and object_id; supported invoice actionsChecked 2026-10-16
How can extraction recover after missed events or an interrupted consumer?Bounded redelivery or overlapping queries; no durable consumer checkpointFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Failed callbacks retry then drop; no durable replay contract

Webhook Callbacks ↗Failed callbacks retry then drop; no durable replay contractChecked 2026-10-16

Useful ongoing access includes corrections and deletions, not only the first export. A failed request, changed filter or lost resource permission should not be interpreted as a deleted record.

LEAVE WITH YOUR DATA

Data exit and portability

Invoice JSON can be copied before cancellation, with structured line items and status. File attachments, historical versions and native automation configuration need their own extraction; post-cancellation rights remain unresolved.

Test the output against the destination’s required fields and history. Check stable identifiers, relationships, attachments and extraction time; a sample file proves only the coverage of that sample.

BUILD / INSPECT / REUSE

Business logic and customization

Customers can build external accounting integrations. Native workflow rights and independent execution remain unresolved (OAuth ownership does not convey ownership of FreshBooks automation).

Custom API access, ownership of workflows and the right to export their definitions are separate questions. A custom-app capability alone does not establish that business rules can move to another system.

AGREEMENTS / API DOCS / PROGRAM REQUIREMENTS

Documented conditions

Answers below come from public provider materials. Every answer retains its source check date, scope (a partner agreement does not describe every customer route). Customer contracts and live behavior still need verification.

QuestionAnswer / applicable routeEvidence
What structured read interface is documented?Structured API for the declared product scopeFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Structured read interface for the declared product and resources

Invoices ↗Structured read interface for the declared product and resourcesChecked 2026-10-16
How can customers retrieve data in bulk?Batched or iterable API requestsFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Documented list/collection retrieval within the stated endpoint scope; whole-product recovery unverified

Invoices ↗Documented list/collection retrieval within the stated endpoint scope; whole-product recovery unverifiedChecked 2026-10-16
What queries can a customer issue outside the provider UI?Documented structured API filtersFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Per-resource search filters and page/per_page

Search, Paging and Includes ↗Per-resource search filters and page/per_pageChecked 2026-10-16
Who decides whether a chosen third party may connect?Customer authorization without discretionary provider approvalFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer authorizes app scopes through OAuth; app registration described

Authentication ↗Customer authorizes app scopes through OAuth; app registration describedChecked 2026-10-16
What extra commercial condition applies to the routes supplying the assessed read capability, relative to the lowest paid plan?-FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Reviewed entitlement documentation; minimum eligible plan and fixed route-specific access charges remain unresolved

Authentication ↗Reviewed entitlement documentation; minimum eligible plan and fixed route-specific access charges remain unresolvedChecked 2026-10-16
What permission is needed for the documented downstream use?-FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Reviewed access documentation; applicable downstream processing, AI and redistribution terms not established

Authentication ↗Reviewed access documentation; applicable downstream processing, AI and redistribution terms not establishedChecked 2026-10-16
Which external write operations are documented?Create and update in one business domainFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Create and update invoices; POST and PUT examples

Invoices ↗Create and update invoices; POST and PUT examplesChecked 2026-10-16
How can customers connect an application they build or choose?Customer applications using fixed APIs without provider selectionFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer application uses the documented authorization route

Authentication ↗Customer application uses the documented authorization routeChecked 2026-10-16
What mechanism supports repeatable extraction of changes?Documented updated-since filters or webhooksFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Invoice create/update/delete callbacks

Webhook Callbacks ↗Invoice create/update/delete callbacksChecked 2026-10-16
How are integration limits disclosed?Governors or limits stated without quantitiesFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Request limits reviewed; universal numeric sustained throughput not established

Request Limits ↗Request limits reviewed; universal numeric sustained throughput not establishedChecked 2026-10-16
Where can a usable data copy be delivered?Customer-held structured files or API recordsFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer-held structured API records within the declared resource scope

Invoices ↗Customer-held structured API records within the declared resource scopeChecked 2026-10-16
What retrieval rights are documented at cancellation?-FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Applicable post-cancellation retrieval clause not established by reviewed technical documentation

Authentication ↗Applicable post-cancellation retrieval clause not established by reviewed technical documentationChecked 2026-10-16
How can customers define their own business logic?External integration code; native business logic portability not establishedFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Customer integration code can run outside the provider; native workflow authoring not established

Authentication ↗Customer integration code can run outside the provider; native workflow authoring not establishedChecked 2026-10-16
What rights or portability are documented for custom workflow artifacts?-FreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Ownership and reusable export or independent execution of native workflow artifacts remain unresolved

Authentication ↗Ownership and reusable export or independent execution of native workflow artifacts remain unresolvedChecked 2026-10-16
What usable data or native definitions can leave before cancellation?Portable structured records on documented routes; whole-product completeness unverifiedFreshBooks accounting REST / customer-authorized OAuth, invoices and webhook callbacks; Classic XML API and service-wide backup are excluded.

Structured resource records can be retrieved; complete attachments, versions, relationships and native configuration remain unverified

Invoices ↗Structured resource records can be retrieved; complete attachments, versions, relationships and native configuration remain unverifiedChecked 2026-10-16

SOURCES / SCOPE / HISTORY

Sources and open questions

This review is based on the documentation below. Live account behavior and customer-specific agreements haven’t been tested.

Still to confirm

  • Lowest eligible plan and fixed API access fees
  • Applicable downstream-use and customer cancellation terms
  • Complete file, history and configuration recovery
  • Native workflow artifact ownership and independent execution

Documentation

Assessment checked 2026-10-16. Each answer retains its source and applicable route; the check date does not establish live account behavior.