Skip to content

QuickBooks

Connect fyrn to QuickBooks Online to automate accounting workflows — create invoices, manage customers, record payments, and track items through the Intuit QuickBooks API.

PropertyValue
Typehttp
Authenticationoauth2
CategoryFinance & Accounting
FieldTypeRequiredDescription
realm_idstringYesQuickBooks company ID (realmId)
client_idstringYesIntuit OAuth2 client ID
client_secretstringYesIntuit OAuth2 client secret
refresh_tokenstringYesOAuth2 refresh token
environmentstringNoAPI environment: sandbox or production (default: production)

Execute a QuickBooks query to retrieve entities using SQL-like syntax.

EndpointGET /query
MethodGET

Create a new invoice in QuickBooks Online.

EndpointPOST /invoice
MethodPOST

Retrieve an invoice by ID from QuickBooks Online.

EndpointGET /invoice/{invoiceId}
MethodGET

Update an existing invoice in QuickBooks Online. Requires Id and SyncToken for optimistic locking.

EndpointPOST /invoice
MethodPOST

Create a new customer in QuickBooks Online.

EndpointPOST /customer
MethodPOST

Retrieve a customer by ID from QuickBooks Online.

EndpointGET /customer/{customerId}
MethodGET

Record a payment received from a customer in QuickBooks Online.

EndpointPOST /payment
MethodPOST

Retrieve a payment by ID from QuickBooks Online.

EndpointGET /payment/{paymentId}
MethodGET

Create a new product or service item in QuickBooks Online.

EndpointPOST /item
MethodPOST

Retrieve company profile information from QuickBooks Online.

EndpointGET /companyinfo/{companyId}
MethodGET
name: stripe-to-quickbooks
description: When a Stripe payment succeeds, create a matching invoice and payment in QuickBooks
trigger:
type: webhook
event: stripe.payment_intent.succeeded
steps:
- id: find-or-create-customer
connector: quickbooks
action: create-customer
params:
DisplayName: "{{ trigger.body.data.object.metadata.customer_name }}"
PrimaryEmailAddr:
Address: "{{ trigger.body.data.object.receipt_email }}"
- id: create-invoice
connector: quickbooks
action: create-invoice
params:
CustomerRef:
value: "{{ steps.find-or-create-customer.result.Customer.Id }}"
Line:
- Amount: "{{ trigger.body.data.object.amount | divided_by: 100.0 }}"
DetailType: "SalesItemLineDetail"
SalesItemLineDetail:
ItemRef:
value: "1"
- id: record-payment
connector: quickbooks
action: create-payment
params:
CustomerRef:
value: "{{ steps.find-or-create-customer.result.Customer.Id }}"
TotalAmt: "{{ trigger.body.data.object.amount | divided_by: 100.0 }}"
Line:
- Amount: "{{ trigger.body.data.object.amount | divided_by: 100.0 }}"
LinkedTxn:
- TxnId: "{{ steps.create-invoice.result.Invoice.Id }}"
TxnType: "Invoice"