Training Day

Polling and Webhooks

Set up and handle webhooks from QuickBooks Online to enable real-time updates in FileMaker.

Register a webhook on OttoFMS

  • Navigate to the OttoFMS webhook page.
  • Click on the "Register a new webhook" button
  • Choose the SimpleLedger
  • Create an Api Key, use admin:admin
  • Enter qbo.update as the channel name
  • OttoFMS will generate a unique webhook URL - copy this for the next step
  • This URL will receive all QuickBooks Online event notifications

Configure QuickBooks Online to send webhooks

  • Log in to the Intuit Developer Portal
  • Navigate to your app and find the "Webhooks" section
  • Click "Setup Webhook"
  • Select entities to monitor:
    • Invoices
    • Employees
    • Accounts
    • Terms
    • Customers
    • PaymentMethods
  • Paste the webhook URL from Step 1
  • Save your webhook configuration

Note: You may need to verify your webhook endpoint. OttoFMS handles the verification process automatically.

Configure SimpleLedger to process webhook events

  • Open the SimpleLedger FileMaker solution
  • Edit the "OttoReceiver" script
  • Add a conditional branch that checks for the qbo.update channel:
If [Get(ScriptParameter); JSONGetElement(Get(ScriptParameter); "channel")] = "qbo.update"
    # Call the appropriate sync script
    Perform Script ["Sync QBO Data"]
End If
  • When QuickBooks data changes, this script will trigger the synchronization process

Test the webhook integration

  • Make a change in QuickBooks Online (e.g., update a customer)
  • Watch as the change is automatically synchronized to FileMaker
  • Check the OttoFMS logs to see the webhook event details

With this implementation, your FileMaker solution will now stay in sync with QuickBooks Online in real-time, without needing to constantly poll for changes.

On this page