Unified communications, owned end to end
One wire.
Every channel your business actually sends on.
BitsPath is the comms platform that doesn't make you choose between a CPaaS, a webmail provider, and a PBX vendor. Voice in pure Rust, SMS over a real SIGTRAN stack, per-tenant business email backed by Stalwart, WhatsApp Business Cloud, transactional email, and push, sitting under one CRM, one campaign engine, one agent inbox, and one Darwan permission set. Bring your own provider keys: your carrier rates stay between you and your carrier.
- Pure-Rust PBX, no unsafe call path
- SIGTRAN/SS7 SMS in-tree
- Stalwart webmail per tenant
- Wenme OAuth 2.1 + Darwan
- BYO carrier, BYO SMTP
- MassTransit on RabbitMQ
{
"tenant_id": "tnt_01HX...",
"contact_id": "ctc_01HX...",
"channels": ["voice","sms","email","mail","whatsapp"],
"policy": "first-success",
"template": "tpl_billing_overdue_v3"
}- VOICEVoice / SIPSIP/RTP/SRTP/WebRTC:5060
- SMS SMS / SIGTRANArena + SMPP + SS7 MAP:2775
- EMAILEmail / SMTPPostal relay + DKIM:587
- MAIL Webmail (Stalwart)Stalwart mail server:443
- WHATSWhatsApp Cloud APIMeta Graph API:443
Illustrative dispatch shape from the Messaging service. The same envelope fans out to Voice, SMS, Email, Stalwart, and WhatsApp Cloud without channel-specific glue in the caller.
01 / What is BitsPath?
BitsPath is KaritKarma's multi-tenant unified communications platform: one product, one auth model, every channel a business actually sends on.
The platform is twenty .NET 10 projects in one src/ tree: services (Tenancy, Messaging, Push, Voice facade, CRM, Billing, Campaigns, Journeys, Conversations, Analytics, Contact Center, Knowledge Base, Community, Developer), the YARP ApiGateway, the EventsGateway webhook ingest, and shared libraries, talking over MassTransit on RabbitMQ 4.3.
Voice is delivered by BitsPath Voice, KaritKarma's separate pure-Rust carrier-grade PBX product: a complete SIP and media stack plus a SIGTRAN/SS7 suite for direct operator SMS interconnect. The platform-side Voice service models CallSession, CallFlow, and VoiceCampaign and routes through it.
The mailbox engine is Stalwart, embedded inside the BitsPath product boundary; the webmail is a custom Next.js client that ships schedule send, a vacation autoresponder, mail filters, report-phishing handling, and message snooze.
Authentication is exclusively Wenme OAuth 2.1 with mandatory PKCE, validated against the EdDSA + RS256 JWKS.
Authorization is exclusively Darwan: 159 seeded permission strings across 17 categories (63 of them pbx.*), enforced across the .NET controllers and the BitsPath Voice runtime alike.
Carrier and SMTP credentials are bring-your-own, held in a per-tenant vault with circuit-breaker failover between providers.
02 / Channel fabric
Every transport your business pays a different vendor for. Built into one product.
Channel adapters are first-class. The same Messaging service envelope fans out to Voice, SMS over Arena, SMPP, or SIGTRAN, Postal or generic SMTP, the Stalwart webmail, and Meta WhatsApp Cloud. Bring your own provider keys per tenant; delivery rides your own contracts.
- Per-tenant credential vault, never global.
- Circuit-breaker failover: postal to smtp; arena to sigtran to smpp.
- Delivery receipts converge on EventsGateway.
03 / Service map
Sixteen deployable services. One YARP gateway. One Wenme + Darwan trust path.
Each service owns its EF Core context and Postgres schema. MassTransit on RabbitMQ 4.3 handles async fan-out. The Voice runtime is the separate BitsPath Voice product, but speaks the same Wenme JWT (EdDSA + RS256) and the same 63 seeded pbx.* Darwan permissions as the .NET ContactCenter service.
Messaging
:5002The send fabric. Provider adapters for Postal, generic SMTP, an SMS aggregator, a direct SMPP bind and WhatsApp Cloud, behind a circuit-breaker resolver, with a SIGTRAN gateway adapter awaiting the carrier tier. MassTransit over RabbitMQ for async and retry.
ApiGateway / YARP
:5000YARP reverse proxy. /api/* fans out to every service. A CookieToBearer middleware converts the Wenme session cookie into an Authorization: Bearer header for downstream calls.
EventsGateway
:5003Webhook ingest for delivery reports, billing events, and Darwan cache invalidation. Verifies HMAC signatures, idempotent by event id, drops noisy retries.
CRM
:5004Unified contact store. Custom fields, consent flags, segments, lists, import. Every channel event lands on the contact timeline. 6 crm.* permissions.
Campaigns
:5006Multi-channel broadcast engine with background workers. A/B testing, send-time optimization, throttled delivery against per-provider rate caps.
Journeys
:5294Visual @xyflow/react builder. Branching, delays, wait-for-event, channel switches. One orchestrator runs all six channels.
Conversations
:5292Omnichannel agent inbox over SignalR. Threads merge inbound across Email, SMS, WhatsApp. No per-agent pricing model.
Analytics
:5204Delivery, engagement, funnel reports. Recharts 3.7 in the portal, raw event API for downstream BI exports.
Voice (facade)
SVC.15 . :8080Platform-side Voice service models CallSession, CallFlow and VoiceCampaign, routing through the BitsPath Voice pure-Rust softswitch. Darwan checks the voice permission on every authorized action.
ContactCenter
SVC.10 . :5210Agent desktop over the Voice engine. Ring groups, queues, queue agent pause and transfers today; supervisor listen, whisper and barge are programme work on the engine. Reuses the same Darwan voice permissions Voice enforces.
Tenancy
Tenants, users, roles, onboarding. Syncs the Wenme JWT subject to the internal user row on first login. The seed account links by email, then pins on the Wenme sub on next sign-in.
:5001Billing
Usage metering, credit packs, plan tiers. Per-tenant ledger with daily roll-ups.
:5005KnowledgeBase
Self-service help center. Article CRUD, search, public surface. 4 knowledge.* permissions.
:5215Community
Community forum module. Threads, replies, moderation. 4 community.* permissions.
:5220Developer
Webhooks with delivery tracking, API keys, API logs, sandboxed extension engine.
:5225Push
Live push dispatch over FCM HTTP v1 (per-tenant Google service-account JWT) and APNs (ES256 .p8 key), with a device-token registry and automatic dead-token deactivation.
FCM + APNs04 / Webmail . Stalwart
Business email for tenants who don't want to be a Google customer.
The mailbox engine is Stalwart, a Rust SMTP mail server that lives inside the BitsPath product boundary, the way FreeRADIUS lives inside ISPChamp. The webmail is a custom Next.js client shipping schedule send, a vacation autoresponder, mail filters, report-phishing handling, and message snooze. Postal stays the outbound relay so a tenant's mailbox outbound never poisons the transactional API reputation envelope.
- bitspath.com . marketing + product site
- app.bitspath.com . tenant portal + admin
- webmail.bitspath.com . custom Next.js webmail (Next.js 16.2)
- mail.bitspath.com . Stalwart SMTP mail server
- BitsPath Voice . pure-Rust PBX (separate product)
Custom Next.js webmail
The webmail is a custom Next.js client, not a repackaged roundcube. Schedule send, a vacation autoresponder, mail filters, report-phishing handling, and message snooze ship on top of the Stalwart Rust mail server.
Wenme OAuth 2.1 sign-in
The webmail authenticates through Wenme OAuth 2.1, the same trust path as the rest of the platform. One identity, one session model across the portal, the inbox, and the admin console.
Stalwart mail server, in-product
Stalwart is the SMTP mail server inside the BitsPath product boundary: same repo, same release train. Outbound mailbox traffic relays through Postal so a tenant's mailbox reputation never poisons the transactional API envelope.
Per-tenant business email
Each tenant hosts business email on its own domain. Customer MX records point at mail.bitspath.com; one Stalwart instance and one webmail serve every tenant on the platform.
feat(webmail): /search route with Gmail-style operators (P1.1)
feat(webmail): bulk select + star/flag + mobile swipe gestures
feat(webmail): schedule send + 3s undo-send window
feat(webmail): report-phishing handling + message snooze
feat(webmail): Gmail-clean light theme as default + theme registry
feat(webmail): M365 app switcher + Wenme avatar dropdown
feat(webmail): Gmail-style settings deep-dive (general/account/identities)
fix(webmail): undo-send commits on unmount, not silently drops05 / Voice + Push
Voice and Push, on one platform.
The platform-side Voice service models CallSession, CallFlow and VoiceCampaign and routes through BitsPath Voice, KaritKarma's separate pure-Rust softswitch. Four SIP transports, every leg anchored on the engine, and recording enforced before the call connects. Push rides FCM HTTP v1 and APNs on per-tenant credentials. Each card below says whether it runs today.
See the BitsPath Voice productVoice via BitsPath Voice
The platform-side Voice service models CallSession, CallFlow and VoiceCampaign and routes through BitsPath Voice, the separate pure-Rust softswitch. SIP over UDP, TCP, TLS and WebSocket, every leg anchored, and no unsafe code anywhere a caller's packet is parsed.
Push over FCM and APNs
FCM HTTP v1 with per-tenant Google service-account JWTs and APNs with ES256 .p8 auth keys. Device tokens register per tenant and dead tokens deactivate automatically, so a delivery list does not rot.
The tape is encrypted and swept
Recordings are written per call, encrypted at rest under AES-256-GCM with the master key held as deployment configuration, and deleted by a retention sweep that runs on the switch under each tenant's own policy. Making the tape a precondition of connecting the call is still being finished, and the Voice page marks it Planned.
SIGTRAN carrier tier
Direct operator interconnect is programme work. The SCTP, M3UA, SCCP, TCAP and MAP layers are written and tested against the specifications, and nothing in the product calls them yet. SMS today rides an aggregator key or your own SMPP bind.
SIP and media internals, the SS7 stack, and the carrier-grade call engine live in the BitsPath Voice product. The BitsPath platform routes through it and shares its permission model.
06 / BitsPath Live
One app for the working day, not a second dialler.
BitsPath Live is the root portal programme for banks and enterprises: communication as one module of the working day, sitting next to mail, calendar and tasks rather than in a separate application nobody opens. Four of its modules run on the platform today. The rest are an application build on services that already exist, and they are marked Planned here rather than implied.
No module carries a date, because none is on the public record. A Planned module is an application built on a service that already runs, which is why it is a programme rather than a new system. Ask for the phasing and we will give you the same answer in writing.
- Live
Calls
Extensions, queues, IVR, voicemail and recording on the BitsPath Voice engine.
- Live
Mail
Per-tenant business email and webmail on the Stalwart mail server.
- Live
Calendar
Agenda and room booking on the platform today.
- Live
People
Directory and presence across the tenant.
- Partial
Chat
Customer conversations and the chat widget run today. A team messaging client does not.
- Planned
Tasks
One task list fed by calls, mail and chat rather than a fourth inbox.
- Planned
Meetings
Recorded meetings on a media server inside the tenant.
- Planned
Announcements
Publish, then read and acknowledge, with the acknowledgement tracked.
- Planned
Files
Documents attached to the record they belong to, under the same retention policy.
- Planned
Regulatory circulars
A circular ingested once, then fanned out as one task per employee on the same task list, not a second one.
- Planned
Webinar
Registration, live one-to-many audio and screen share, moderated questions, and an attendance report. Built on the conference mixing and recording the engine carries.
- Planned
Learning
Course catalogue, mandatory assignment by role or branch, quizzes with a pass mark, and certificates that expire and recertify.
The whole portal runs in the tenant's own environment on infrastructure in Bangladesh, operated by a Bangladeshi company. Under the Bangladesh Bank Guidelines on Cloud Computing (BRPD Circular No. 05, 16 March 2023, cl. 2.3.1.2 and 2.3.4.5) customer financial and sensitive data is restricted from a cross-border cloud without prior approval, so hosting it here opens no approval case at all.
07 / How BitsPath compares
Twilio. SendGrid. Postmark. WhatsApp BSPs. Google Workspace. One platform replaces the whole spreadsheet.
Every row below is sourced from the BitsPath codebase at commit 270617c and from the live deployment at bitspath.com, webmail.bitspath.com, mail.bitspath.com, and voice.bitspath.com.
Voice PBX in the same product
- BitsPath
- Pure Rust PBX (BitsPath Voice)
- Twilio
- Yes (proprietary)
- SendGrid
- Not included
- Workspace
- Not included
Your own SMPP bind, no per-message markup
- BitsPath
- Included
- Twilio
- Not included
- SendGrid
- Not included
- Workspace
- Not included
Per-tenant business email + webmail
- BitsPath
- Stalwart-backed webmail
- Twilio
- Not included
- SendGrid
- Not included
- Workspace
- Hosted only
BYO provider credentials, per tenant
- BitsPath
- Included
- Twilio
- Not included
- SendGrid
- Not included
- Workspace
- Not included
Omnichannel agent inbox, no per-agent fee
- BitsPath
- Included
- Twilio
- Flex, per-agent
- SendGrid
- Not included
- Workspace
- Not included
Single auth + RBAC (Wenme + Darwan)
- BitsPath
- OAuth 2.1 + 159 perms
- Twilio
- Vendor IAM
- SendGrid
- Vendor IAM
- Workspace
- Google IAM
BDT pricing, contracts under Bangladesh law
- BitsPath
- Included
- Twilio
- Not included
- SendGrid
- Not included
- Workspace
- US/EU regions
Self-host or sovereign deploy
- BitsPath
- Docker Compose appliance
- Twilio
- Not included
- SendGrid
- Not included
- Workspace
- Not included
08 / How to onboard a tenant
Four calls. First message under the same hour.
The onboarding flow is documented as a HowTo schema so AI engines and voice assistants can quote it verbatim. Every step maps to a real endpoint in the BitsPath gateway.
- 01
Provision the tenant
POST /api/tenancy/tenants with company metadata. Tenancy syncs a Wenme tenant, creates a Darwan tenant id, and seeds the default roles plus the 159 baseline permissions across 17 categories.
- 02
Wire your sender identities
Add Postal or SMTP credentials, an Arena aggregator key, an SMPP bind or SIGTRAN interconnect, and a Meta WhatsApp Business phone number. Per-tenant credential vault, never global. FCM and APNs push credentials are configured per tenant, and dispatch is live.
- 03
Verify the mailbox domain (optional)
If you want per-tenant business email, point MX records at mail.bitspath.com, add the DKIM and SPF rows BitsPath generates, and provision mailboxes from the portal. Stalwart picks them up live.
- 04
Send the first message
Trigger a single send via the API or compose a Journey in the visual builder. The Messaging service routes through the chosen provider, captures the delivery webhook on EventsGateway, and lands the event on the CRM contact timeline within seconds.
09 / Stack
What BitsPath is actually built on.
- Platform runtime
- .NET 10, ASP.NET Core, EF Core 10.0.9
- Voice runtime
- Pure-Rust softswitch in the BitsPath Voice product (separate page)
- Frontend
- Next.js 16.2, React 19.2, Tailwind CSS 4, shadcn/ui
- Realtime
- SignalR (Conversations) + webmail (Next.js)
- Message bus
- MassTransit over RabbitMQ 4.3
- Data
- PostgreSQL 18.4, Redis 8.8, S3-compatible object storage
- Mailbox engine
- Stalwart (Rust): SMTP mail server + custom Next.js webmail
- Telephony
- SIP over UDP, TCP, TLS and WebSocket, RTP and SRTP (BitsPath Voice)
10 / Frequently asked
The questions enterprise buyers actually ask.
Every answer is mirrored into the FAQPage JSON-LD on this page, so AI answer engines can quote it as a single source of truth.
What is BitsPath?
How is BitsPath different from Twilio?
Does BitsPath support WhatsApp Business Cloud API?
How does the webmail authenticate, and whose mail server is it?
Can BitsPath replace an existing open-source PBX?
What happens to my existing carrier and SMTP relationships when I move to BitsPath?
11 / Get started
Replace the spreadsheet.
Move your channels to one wire.
Wire your channels into one product. Bring your carrier, your SMTP, your WABA number. BitsPath becomes the CRM, the campaign engine, the journey builder, the agent inbox, the webmail, and the PBX. Your provider contracts stay yours.
A personalized walkthrough of BitsPath with one of our specialists. No commitment required.
- [email protected] . [email protected]
- Dhaka, Bangladesh . BDT pricing . BD-law contracts