SMS API for One
Time Password

Provide 2 Factor Authentication with One-Time Passwords to your customers with SMS APIs from

Claim $2 Free Credit*

Trusted By


American Express


Jp Morgan

Star Movies

One OTP. Many Use Cases

Secure Transactions
Secure Transactions

Online Shopping

Credit Card Swipe

Money Transfer

Account Sign In
Account Sign In

Online Banking

Utilities Portal


Access Control
Access Control

Redeem Loyalty Points

Update User Properties

Start Taxi Ride (App Based)

Highly Reliable OTP Delivery

Global Scale

We have tie-ups with over 800 operators and can help you send SMS OTPs to over 200 countries. Scaling your business is now easy, with


With an enterprise-grade, scalable cloud infrastructure in place, your SMS OTPs will be delivered timely and reliably.

Free Tech Support
Free Tech

Move from forum-based support to reliable email/phone support provided by our experts. Available to all of our customers at no additional cost.

Claim $2 Free Credit*

Send out SMS OTPs in under 5-minutes

Send out SMS OTPs in under 5-minutes

Choose your favourite programming language

Get support in multiple programming languages

  -H 'content-type: application/json' \
  -d '{
    "channel": "sms",
    "source": "+13253077759",
    "destination": ["+1XXX8323XXX"],
    "content": {
        "text": "Sent from cURL"

from __future__ import print_function
import karix
from karix.configuration import Configuration
from karix.api_client import ApiClient
from pprint import pprint

# Configure HTTP basic authorization
config = Configuration()
config.username = 'YOUR_ACCOUNT_ID'
config.password = 'YOUR_ACCOUNT_TOKEN'

# Create an instance of the API class
api_instance = karix.MessageApi(api_client=ApiClient(configuration=config))

# Create the message instance
message = karix.CreateMessage(
    channel='sms', source="+13253077759", destination=["+1XXX8323XXX"],
    content={'text': 'Sent from python SDK'})

# Send the message
api_response = api_instance.send_message(message=message)

package main

import (

    httptransport ""

func main() {
    authInfo := httptransport.BasicAuth(
    channel := "sms"
    source := "+13253077759"
    params := message.NewSendMessageParams()
    params.Message = &models.CreateMessage{
        Channel:     &channel,
        Source:      &source,
        Destination: []string{"+1XXX8323XXX"},
        Content: &models.CreateMessageContent{
            Text: "Sent from Golang SDK",
    resp, err := client.Default.Message.SendMessage(params, authInfo)

    if err != nil {
require_once(__DIR__ . '/vendor/autoload.php');

// Configure HTTP basic authorization
$config = new \Swagger\Client\Configuration();

// Create an instance of the API class
$apiInstance = new Swagger\Client\Api\MessageApi(
    new GuzzleHttp\Client(),

// Create the message instance
$message = new \Swagger\Client\Model\CreateMessage();


$content = new \Swagger\Client\Model\CreateMessageContent();
$content->setText("Sent from PHP SDK");

try {
    $result = $apiInstance->sendMessage($message);
} catch (Exception $e) {
    echo 'Exception when calling MessageApi->createMessage: ', $e->getMessage(), PHP_EOL;

We Are The Pioneers in A2P SMS Messaging

Mobile Transaction Platform

Largest global mobile transaction platform

Over 800 million omni-channel messages per day across SMS, Voice, Email and Push

1500+ Enterprise Customers

Over 10,000 use cases supported for various business processes across BFSI, retail, manufacturing, media & entertainment, e-commerce etc.

100 Billion Messages

Over 100 Billion Messages processed Annually

Trusted providers for the most sensitive, demanding (performance, latency, throughput, secure) applications.


Connected with 800+ Network Operators

Reach customers across 200+ countries with our extensive network