Introduction

Vendel is an open source SMS gateway that lets you send text messages using your own Android phones or USB modems.

What is Vendel?

Instead of paying per-message fees to services like Twilio or Vonage, Vendel lets you use your existing hardware to send SMS. Connect an old Android phone or a USB modem, and you have your own SMS gateway.

Vendel provides:

  • REST API - Simple HTTP endpoints to send messages and check status
  • Web Dashboard - Manage devices, users, and view analytics
  • Webhooks - Get notified on delivery, failures, and incoming messages
  • Templates - Save reusable message templates for quick composition
  • Scheduling - Send messages at a specific time or on a recurring basis
  • Multi-tenant - Create users with quotas and permissions

Use cases

Vendel works great for:

  • OTPs and verification codes - Send login codes from your app
  • Notifications - Alert users about important events
  • Internal tools - Send SMS from your internal systems
  • Side projects - Avoid monthly minimums from big providers

Note: Vendel is designed for transactional messages, not marketing or bulk SMS. Carriers may block your number if you send spam.

Deployment options

Vendel Cloud

The easiest way to get started. No server required.

  • ✓ Free plan available
  • ✓ Paid plans from $0.99/month
  • ✓ No infrastructure to manage
Get started free

Self-hosted

Full control on your own infrastructure.

  • ✓ 100% open source
  • ✓ Deploy with Docker
  • ✓ Your data, your server
Self-host guide

How it works

  1. Sign up or deploy - Use Vendel Cloud or self-host on your server
  2. Set up a device - Install our Android app or connect a USB modem
  3. Send via API - Make HTTP requests to send messages
  4. Track delivery - Get status updates via webhooks or polling

Architecture

┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   Your App  │────▶│   Vendel     │────▶│   Device    │
│             │     │   Server    │     │  (Android/  │
│  HTTP POST  │     │             │     │   Modem)    │
└─────────────┘     └─────────────┘     └─────────────┘
                           │
                           ▼
                    ┌─────────────┐
                    │  Webhooks   │
                    │  (delivery  │
                    │   status)   │
                    └─────────────┘

Next steps