One CID Multiple WABA — Billing V3 Shared Balance Pool
Initiative owned by the Bifrost team. Implements Meta's Coexistence model support in Qontak Billing: companies with multiple WhatsApp Business Account IDs (WABA IDs) share a single aggregated company-level balance pool under the Shared Pool Model, replacing the per-WABA individual balance architecture. Scoped exclusively to billing_version = "3.0.0" organizations.
Scope Changes
- Backend —
qontak-billing: aggregate balance query across all WABAs per OrganizationPackage, 3-tier deduction hierarchy (WABI → WAB-Additional → Postpaid) using component quota tables, monthly WABI reset job, carry-over logic for WAB-Additional on contract renewal, low balance notification events,waba_idfield in conversation log reports gated bybilling_report_show_waba_idpreference;hub-service:/billings/inforeturns aggregated balance for V3 orgs,/mcc_logsaddswaba_idfilter,/download_broadcast_deductionincludeswaba_idcolumn when preference enabled - Frontend —
hub-chat: shared balance tooltip on Package Usage page,waba_idcolumn in Broadcast and Conversation/MCC report tables,waba_idin CSV export - Data —
WhatsappPackage.organization_package_idFK (migration 20260113 already exists);billing_report_show_waba_idpreference setting per CID; monthly WABI reset cron configuration
QA Lane
Lane B — keeps a human QA gate. Money-critical: balance deduction, WABI monthly reset, carry-over on renewal, and postpaid limit enforcement directly affect client credit availability and billing accuracy. Incorrect deduction order or reset logic would result in client overcharging or service interruption. Classified 2026-06-29.