FAQ¶
Do I need ERPNext?¶
No. BTU depends only on Frappe Framework.
Why not Frappe Scheduled Job Types?¶
Scheduled Job Types and scheduler_events are developer hooks — schedules live in code, require deploys, and are opaque to non-developers. BTU targets business-configured automation with Desk visibility and full logs.
Why two repos but one product?¶
The Frappe app provides UI, DocTypes, and RQ enqueue. The scheduler daemon must run continuously outside Frappe to evaluate cron — it cannot be a Frappe app or live in apps/. Both are required for recurring schedules. Documentation is unified here; code stays in two GitHub repos by necessity.
See Why BTU.
Which scheduler should I install?¶
Only btu_scheduler_py. The Rust btu_scheduler_daemon is retired.
Schedules never fire¶
- Is
btu-py run-daemonrunning? - Does ping from BTU Configuration succeed?
- Is the schedule Enabled?
- Are SQL credentials in scheduler env correct (same DB as site)?
Tasks stuck In-Progress¶
Check worker is running, queue name matches, and review worker logs. BTU housekeeping marks long In-Progress logs timed out.
Run Later never executes¶
Configure Run Later poller (BTU Task + Schedule every 1–5 min).