Connect Busy Accounting
Busy stores its data in a local Microsoft SQL Server instance (usually SQLEXPRESS). OneAnalytics connects with a dedicated read-only SQL login, routed through our gateway agent for mTLS and egress isolation.
1. Enable TCP/IP on SQL Server
Busy's default install uses Named Pipes only. Enable TCP/IP:
- SQL Server Configuration Manager → SQL Server Network Configuration → Protocols for SQLEXPRESS.
- Enable TCP/IP.
- Double-click TCP/IP → IP Addresses tab → IPAll → set TCP Port to
1433(blank out TCP Dynamic Ports). - Restart the
SQL Server (SQLEXPRESS)service.
2. Create a read-only login
Open SQL Server Management Studio (or sqlcmd) as an admin user and run:
CREATE LOGIN oa_reader WITH PASSWORD = 'ChangeMe-Strong-1!';
USE BusyData_<YourCompany>;
CREATE USER oa_reader FOR LOGIN oa_reader;
ALTER ROLE db_datareader ADD MEMBER oa_reader;
DENY SELECT ON SCHEMA::sys TO oa_reader;
Use the exact Busy database name (Busy encodes the company name, e.g. BusyData_AcmeCorp).
3. Install the gateway agent
Same installer as the Tally guide. During setup, pick Busy / MSSQL as the source type and provide:
- Server:
127.0.0.1\SQLEXPRESS,1433 - Database:
BusyData_<YourCompany> - Login:
oa_reader - Password: (from step 2)
The agent stores credentials encrypted with the Windows DPAPI; they never leave the machine.
4. Map the data
OneAnalytics reads these Busy tables:
Master1,Master2— ledgers and groupsVoucher,VoucherDetail— transactionsItemMaster,ItemGroup— inventoryCostCentre,Location
We bundle a Busy semantic model out of the box (dimensions: party, item, cost centre, date; measures: sales, purchase, stock value, outstanding). Load it from Source → Apply semantic template → Busy Standard v1.
Refresh cadence
Busy MSSQL databases are small (< 1 GB typical) so we default to a full import every 4 hours. For larger installations, switch to Direct mode — queries go live to SQL Server with a 60 s statement timeout.
Troubleshooting
- "Login failed for user 'oa_reader'" — Check Mixed Mode authentication is enabled (SQL Server properties → Security → SQL Server and Windows Authentication).
- "Connection refused on 1433" — Firewall. Add an inbound rule for TCP 1433 limited to
127.0.0.1.