One platform for every message a business sends — SMS, email, campaigns, and OTP — from a single dashboard and API, without worrying about which network delivers it.
Wixly was built to remove the need for businesses to stitch together separate tools for every kind of message. SMS, email, campaigns, OTP verification, and contact management live in one place, whether a person triggers them from the dashboard or an application triggers them through the API.
Businesses can import contacts, organise them into groups, reuse saved templates, and send instantly or schedule for later. Developers get a REST API and webhooks to add the same messaging to their own products.
Under the hood, messages are routed through configured carrier networks with automatic failover when one hits a rate limit, and new networks can be added without changing an integration. Built with Next.js, TypeScript, Prisma, and SQLite, with Redis and BullMQ handling background jobs, so delivery never depends on a single request.


Key Features
SMS & email in one place
Send text messages and email from the same platform instead of juggling separate tools.
Campaigns
Design, schedule, and send SMS and email campaigns to a whole contact list, with reusable templates.
Contacts & groups
Import contacts or add them through the API, then organise them into groups for targeted sending.
OTP & transactional messages
One-time passwords and alerts triggered straight from your app.
Multi-carrier routing
Messages go out through configured networks, with automatic failover when one is rate-limited.
Delivery tracking & analytics
A live dashboard of credit balance, messages sent, delivery rate, active campaigns, and per-message status (delivered, pending, failed).
Developer API & webhooks
A REST API and webhooks to build messaging into any product.
Flexible sending
Send instantly, schedule for later, or trigger sends from your application.
How It Came Together
- 1
Accept
A message arrives from the dashboard, a campaign, or an API call and is saved with a status.
- 2
Queue
The job is placed on a Redis queue with BullMQ, so the request returns immediately.
- 3
Route
A worker sends the message through a configured carrier, failing over to another network if one is rate-limited.
- 4
Track
Delivery results and webhooks update the message status, which feeds the dashboard and analytics.
Technical Implementation
Delivering messages reliably across more than one carrier — queuing, retrying, and failing over between networks in the background, while giving users clear delivery status in real time without blocking the dashboard or API.
"A messaging platform is judged by what happens when things go wrong — queues, retries, and clear delivery status matter more than the send button."
Outcome
Wixly is live at wixly.sites.bt, giving businesses and developers one dashboard and API for SMS, email, campaigns, and OTP.
