Internal Operations
This section is for the Sopinf Tech LLC team — MSP admins, on-call engineers, billing clerks, and support staff. It covers how to operate SipSop day-to-day: compliance, billing infrastructure, admin panel usage, authentication setup, incident runbooks, and deployment.
Not for customers
Customer-facing content lives in Product docs. Commission rep and admin content is in Commissions. If a customer asks about fees or invoices, point them to the product docs or the public /fees page — not here.
Who this section is for
| Audience | What they use here |
|---|---|
MSP admins (admin_msp) | Admin panel guide, RBAC setup, tenant management |
| On-call / DevOps | Runbooks, deploy & infra, BullMQ monitoring |
Billing clerks (billing_clerk MSP role) | Admin fees, compliance dashboard, quarterly reports |
| Support | Runbooks, admin panel, impersonation guide |
What's in this section
Admin fees
The regulatory and administrative fee system. Fee catalog schema, how to create or update fees, carrier mode (retail vs wholesale), Stripe invoice line items, and the compliance dashboard. Start here when adding a new fee or changing a rate.
Compliance
NJ/FCC regulatory requirements, data retention policy for CDR records and PII, Row Level Security architecture, audit log coverage, and our SOC2-lite checklist.
Admin panel
Step-by-step guide for every /admin/* route in the portal: tenants, leads, billing fees, onboarding queue, roles, impersonation, discount codes, and commissions. Includes what actions are available and what role is required.
Auth & RBAC
Better Auth organization model, the four top-level roles (admin_msp, client_admin, client_user, seller), MSP sub-roles (super_admin, billing_clerk, sales_rep, technician), permission keys, and how to create new users or grant access.
Runbooks
Operational playbooks for the most common incidents: past-due tenants, Stripe webhook failures, CDR sync stuck, password resets, seller portal access, statement errors, and database backups.
Deploy & infra
From-scratch deployment guide: Docker images, Azure Container Apps, Key Vault secrets, BullMQ worker setup, environment variables, FreePBX read-only constraint, CI/CD via GitHub Actions, and database migration strategy.
Daily ops checklist
Things an MSP admin should check every morning:
- Stripe dashboard — any past-due or failed payments from overnight? Check the failed invoices list and retry if needed.
- BullMQ / Bull Board — are all four job queues (
cdr-sync,billing-calc,invoice-gen,stripe-sync) processing normally? Any stuck or failed jobs? - Sentry — error spike overnight? Any new error types in
apiorportalprojects? - CDR sync status — go to
/admin/dashboard→ checktotalCallsThisMonth. If it hasn't updated since yesterday, thecdr-syncjob may be stuck (see Runbooks). - Support inbox — any billing disputes or access issues from customers that need escalation?
Key URLs (production)
| URL | What it is |
|---|---|
app.sipsop.net | Customer portal |
app.sipsop.net/admin/dashboard | MSP admin dashboard |
pbx.sopinf.xyz | FreePBX — READ-ONLY. Never modify config |
| Stripe Dashboard | Subscription and payment management |
| Azure Portal | Container Apps, Key Vault, logs |
| Sentry | Error tracking (api + portal projects) |