QuickBooks Desktop and Twilio integration
QuickBooks Desktop runs your accounting from a Windows machine at your site. Twilio delivers SMS and voice to customers anywhere. Connecting the two ensures customers know about upcoming invoice due dates and payment collected confirmations without manual outreach. ml-connector bridges the gap between QuickBooks Desktop on-premises polling and Twilio cloud messaging, translating accounting events into timely customer notifications.
What moves between them
The main flow runs from QuickBooks Desktop to Twilio. ml-connector polls QuickBooks Desktop on a scheduled interval for invoices and bills, extracts customer names and due dates, looks up the matching customer phone number, and sends an SMS through Twilio with a payment reminder message. Optionally, payment confirmations can flow back from Twilio as incoming SMS and be logged in QuickBooks Desktop as notes or memos on the invoice record. Twilio delivery status callbacks provide audit trail evidence.
How ml-connector handles it
ml-connector runs a SOAP client that authenticates to QuickBooks Desktop via QBWC: it provides username and password to the authenticate() call, receives a session ticket, and uses that ticket for all queries in the session. It polls QuickBooks Desktop on a schedule you define, typically every 15 to 60 minutes, querying for invoices and bills modified since the last run using ModifiedDateRangeFilter. For each invoice, it retrieves the customer record to find the phone number, then constructs an SMS message with the due date and sends it through Twilio using HTTP Basic Auth. Twilio webhooks report delivery status back to ml-connector. Because QBWC operates sequentially and QuickBooks must be running on a Windows machine at your site, there is a dependency on that machine's uptime and network connectivity. ml-connector caches the session ticket and refreshes it if a request fails.
A real-world example
A small accounts receivable team at a mid-sized services company manages invoices in QuickBooks Desktop on their office server. Previously, invoices went out by email and payment reminders were sent manually or forgotten. With the QuickBooks Desktop and Twilio integration, new invoices trigger an automatic SMS reminder to the customer's phone number stored in QuickBooks Desktop within minutes of the invoice date. Overdue reminders go out on a weekly schedule. Customers can text back to confirm payment, and those messages are logged in the invoice notes in QuickBooks Desktop, giving the AR team a full audit trail of customer outreach.
What you can do
- Query QuickBooks Desktop for new invoices and bills on a configurable schedule and send SMS reminders through Twilio.
- Map customer names and phone numbers from QuickBooks Desktop to Twilio contacts and route payment reminders as SMS.
- Receive Twilio delivery status callbacks and log them in QuickBooks Desktop as invoice notes for audit purposes.
- Handle the QBWC session token handshake and manage the on-premises polling model without exposing QB server details.
- Retry failed Twilio sends and maintain a full audit trail of every reminder sent, every delivery status, and every customer response.
Questions
- How does ml-connector authenticate to QuickBooks Desktop if it is running on a Windows machine at my site?
- QuickBooks Desktop requires a QBWC agent running on the Windows machine to poll a remote SOAP web service. ml-connector hosts that SOAP endpoint and receives credentials from QBWC, then returns a session ticket for all queries in that session. The session ticket is valid for that polling cycle only, and ml-connector refreshes it on the next poll.
- Can customers reply to the SMS reminders and have their responses logged back in QuickBooks Desktop?
- Yes. Twilio webhooks forward incoming SMS to ml-connector, which extracts the customer message and logs it as a note or memo field on the matching invoice record in QuickBooks Desktop. This creates a two-way audit trail of customer communication without manual data entry.
- What happens if the Windows machine running QuickBooks Desktop is offline or QuickBooks is closed?
- QBWC cannot poll ml-connector's SOAP service if the machine is offline or QuickBooks is not running. ml-connector will queue the notification for retry on the next successful poll cycle, but there will be a delay. Your team should monitor QuickBooks Desktop and QBWC uptime to avoid missed reminders during business hours.
Related integrations
More QuickBooks Desktop integrations
Other systems that connect to Twilio
Connect QuickBooks Desktop and Twilio
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started