QBO Dashboard | Version 1.0.0 | By Doorways Into Your Business
About This Plugin
The QBO Dashboard is a private, internal WordPress plugin that gives bookkeepers and account managers a single wp-admin surface for running a QuickBooks Online file. It replaces three legacy tools — the Blue Payments desktop app, a Coda-based manual payments/invoices workflow, and the QBO-Recurring Coda sync — with one focused interface that writes directly to QBO and optionally mirrors a comment into BluePM.
It was built for RapidPage’s QuickBooks Online file at billing.diyb.ca, where staff need live views of recurring invoice templates, customer balances, and open invoices — plus the ability to create customers, build invoices, record payments, issue credit memos, send reminders, and prepare quotes without leaving wp-admin. Every write is captured in a local audit log so there’s a permanent record of what this dashboard sent to QBO, who sent it, and when.
Version 1.0.0 is the first stable release — the dashboard now covers the full RapidPage billing workflow end to end.
Features
- Live Recurring view with problem highlighting for misconfigured invoice templates — filter by customer or “problems only”
- Live Customers list with Add Customer + inline Edit Customer (pencil column), full field validation, duplicate-name pre-check, and a “non-zero balances only” toggle
- Live Open Invoices table with four colour-coded actions: Create Invoice (blue), Record Payment for Selected (green), Create Credit Memo for Selected (pink, auto-applied), and Send Reminders for Selected (orange)
- Quotes — create a quote for an existing customer, auto-save the PDF to the Media Library, email it (with the PDF attached) from the log page, mark it Approved / Declined / Pending, and convert an approved quote to an invoice in one click
- Credit memos created from a selected invoice and auto-applied via a zero-dollar payment, so the source invoice closes immediately
- Three-level reminder emails (friendly / past due / final notice) sent via SMTP2GO, with WYSIWYG templates and an audit trail of every send
- File attachments on invoices and payments via the WordPress Media Library, pushed to QBO so they appear on the transaction in the QBO web UI
- End-to-end validation on every write — required fields, date windows, duplicate-name checks — enforced both in the browser and on the server
- Connection-status banner that detects a revoked QuickBooks token and walks the operator through re-authorizing
- Test Mode on every form — a full dry run that skips the QBO write while exercising the rest of the pipeline
- Optional BluePM mirror that posts a comment to the matching project record after a successful write
- Local audit logs for invoices, payments, reminders, and quotes — each paginated, filterable, and tracking who did what and when
- QBO OAuth2 with automatic token refresh; CSV export of outstanding invoices; in-product help on every page
What’s New in Version 1.0.0
First stable release
Version promoted to 1.0.0 to mark the point where the dashboard covers the complete RapidPage billing workflow. Everything below was added across the 0.15–0.18 series leading up to it.
Quotes
A full quote workflow on a dedicated Quotes page: create a quote for an existing customer (the PDF is automatically saved to the WordPress Media Library), email it to the customer with the PDF attached using an editable template, mark it Approved / Declined / Pending with an optional note, and — once approved — convert it to an invoice with a single click. The conversion links the new invoice back to the original quote in QuickBooks, exactly as the QBO web UI’s “Convert to invoice” button does. (QuickBooks calls this entity an “Estimate”; the dashboard presents it as a “Quote”.)
Validation on every write
Record Payment, Create Invoice, Create Credit Memo, Create Quote, and Add / Edit Customer now validate their inputs both in the browser (instant feedback) and on the server (a backstop that can’t be bypassed). Rules include required reference numbers, sensible date windows, a duplicate-customer-name pre-check, and filtering out QuickBooks “Category” items that would otherwise trigger a confusing billable-expense error.
Connection-status banner
When the QuickBooks refresh token is revoked (which Intuit does periodically), the dashboard now shows a clear red banner with step-by-step recovery instructions on the Settings page and across the main list pages — instead of a cryptic error mid-action.
Editable email templates
Both the three-level payment reminders and the quote email now use a WYSIWYG editor on the Settings page, with placeholder tokens (customer name, amount, due date, payment link, etc.) that are filled in per send.
Full Changelog
1.0.0 — First stable release. Full RapidPage billing workflow: customers, invoices, payments, credit memos, reminders, and quotes (with conversion to invoice), all writing directly to QuickBooks Online with a local audit trail. Rolls up the 0.15–0.18 work below.
0.18.0 — Quote → Invoice conversion. A one-click To Invoice action on approved quotes builds a linked invoice in QuickBooks and records it in the invoice audit log.
0.17.0 — Editable quote email template on the Settings page (WYSIWYG, with placeholders), matching the reminder template editor.
0.16.0 — Feature rebranded from “Estimates” to “Quotes” across every screen, button, email, and file name.
0.15.x — Quotes feature introduced: create quotes, auto-save the PDF to the Media Library, email with the PDF attached, status workflow (Pending / Approved / Declined), and a per-quote email + status audit trail. Category items removed from the line-item picker; quote PDFs named <customer>-YYYYMMDD-Quote-####.pdf; a “Who” column shows the creator.
0.14.x — Connection-status banner with token-recovery steps; end-to-end validation on payment, invoice, credit-memo, and customer forms; tabbed Settings page (QuickBooks Online / BluePM / SMTP2GO / Reminder Templates / Quote Email Template / Coda Migration); WYSIWYG reminder templates; admin menu reorder with Invoices · Open as the default landing.
0.13.x — Three-level reminder email system via SMTP2GO with an audit log and per-invoice send indicators.
0.12.x — History pagination on the Recorded audit pages; in-product help refreshed.
0.10–0.11.x — Credit memo creation from a selected invoice, auto-applied via a zero-dollar payment so the source invoice closes immediately.
0.9.x — File attachment upload on invoices and payments (WordPress Media Library → pushed to QuickBooks).
0.8.x — Edit Customer with full QBO field coverage; First / Last name columns; non-zero balance filter.
0.7.x — In-product help on every page; View Details + Visit plugin site links on the Plugins screen; front-end gate that redirects non-logged-in visitors to wp-login.
0.5–0.6.x — Open invoices list with multi-select payment allocator, per-row PDF download and payment link, CSV export, Test Mode, and the one-shot Coda migration (42 payments + 12 invoices imported).
0.2–0.4.x — Pivoted from a Node stub to a WordPress plugin; live QBO read views (Recurring, Customers, Open Invoices); Add Customer as the first write path.
About Doorways Into Your Business
Doorways Into Your Business (DIYB) is a digital agency based in Kingsville, Ontario, Canada. We help small businesses and non-profit organizations build and grow their digital presence through WordPress development, custom plugin solutions, API integrations, and business automation.
We specialize in practical, purpose-built tools — like this one — that solve real operational problems for the organizations we work with. The QBO Dashboard is one of several internal tools we maintain for our own bookkeeping and client billing workflows.
- Website: diyb.ca
- Email: paul@diyb.ca
Support
This is a private internal plugin and is not distributed via wordpress.org. For support, feature requests, or to report a problem, contact Paul Hughes at paul@madeitin.ca or visit diyb.ca.
Questions, or ready to open a few smart digital doorways? Get in touch with Doorways Into Your Business →