What is SMS Pumping: Plivo’s Quick Guide
Learn about SMS pumping, the risks it poses to businesses, how fraudsters generate fake traffic to exploit them, and how to prevent it.
In the digital age, SMS remains a cornerstone for user authentication, particularly through One-Time Passwords (OTPs). However, this reliance has made businesses vulnerable to a growing threat: SMS pumping fraud.
What is SMS pumping?
SMS pumping, also known as Artificially Inflated Traffic (AIT) or SMS toll fraud, is a fraudulent scheme where attackers exploit SMS-based services to generate large volumes of fake traffic. This is typically achieved by:
- Automated Bots: Using bots to flood online forms with fake OTP requests.
- Premium Rate Numbers: Directing these requests to phone numbers that incur higher charges, often controlled by the fraudsters or complicit telecom operators.
The perpetrators profit by receiving a share of the revenue generated from these inflated SMS charges, leaving businesses to bear the financial burden.
Real-World Impact: The Twitter Case
A notable example of SMS pumping's financial impact is Twitter (now X). In 2023, Elon Musk revealed that the platform was losing approximately $60 million annually due to SMS pumping fraud. The scheme involved over 390 telecom operators worldwide, who were either complicit or negligent in allowing the abuse of SMS services.
How does SMS pumping work?
The process typically unfolds as follows:
- Targeting Vulnerable Endpoints: Attackers identify websites or applications that send OTPs via SMS.
- Flooding with Requests: Bots submit numerous fake requests, often using disposable or premium-rate phone numbers.
- Revenue Generation: Each SMS sent to these numbers incurs a cost, which is shared with the fraudsters.
This leads to significant financial losses for businesses, as they pay for messages that serve no legitimate purpose.
Signs Your Business Might Be a Target
Be vigilant if you notice:
- Unusual Traffic Patterns: A sudden spike in OTP requests, especially from unfamiliar regions.
- Sequential Number Requests: Multiple OTP requests to consecutive phone numbers, indicating automated bot activity.
- Low Conversion Rates: A high number of OTPs sent but a low rate of successful authentications.
Preventive Measures: Safeguarding Your Business
To protect against SMS pumping fraud, consider implementing the following strategies:
- Rate Limiting: Restrict the number of OTP requests per user or IP address within a specified time frame.
- Bot Detection: Use CAPTCHA or other bot detection mechanisms to prevent automated submissions.
- Geo-Blocking: Limit OTP requests to regions where your user base is located.
- Traffic Monitoring: Regularly analyze traffic patterns to identify and mitigate suspicious activities.
Plivo’s Solutions to SMS Pumping
Recognizing the growing threat of SMS pumping, Plivo is proud to offer two innovative tools, free of charge, designed to protect your business from fraudulent SMS traffic:
- SMS Pumping Protection for OTP Traffic: This solution is specifically built to safeguard your SMS API endpoints that handle OTP traffic. By detecting and preventing fraudulent OTP requests, it helps ensure your messaging services remain both secure and cost-effective. Read more about SMS Pumping Protection here.
- Fraud Shield for Verify Applications: Designed for applications leveraging Plivo’s Verify API, Fraud Shield delivers advanced fraud detection by analyzing traffic patterns, identifying anomalies, and blocking suspicious activities. This ensures your verification processes stay protected from abuse. Read more about Fraud Shield here.
Learn more about Plivo’s tools for combating SMS pumping by requesting a trial.
.jpg)
RCS Marketing 101: Your Complete Guide
Discover how RCS marketing delivers rich, branded messages that drive engagement for your business.
SMS marketing works, but let’s be honest: it feels a bit outdated compared to modern apps.
But what if you could send rich, interactive messages with branded content, images, buttons, and carousels straight to your customers’ native messaging apps?
Rich communication services (RCS) makes that possible.
If you’re ready to explore how RCS marketing can transform your engagement strategy, this guide will walk you through everything you need to know. Let’s get started.
What is RCS marketing?
RCS marketing uses rich communication services to send interactive, branded messages through a customer’s default messaging app. It’s a modern upgrade to SMS that lets businesses share images, buttons, carousels, and more — all without needing third-party apps.
A user on Reddit summed up this perfectly:

RCS lets you send messages that are visually branded with logos and colors while remaining interactive. This turns static updates into an app-like experience inside a message.
This shift is part of a broader industry move, led by Google and backed by major mobile carriers, to upgrade messaging infrastructure and make RCS the default standard on Android devices.
As support continues to grow, businesses are adopting RCS as part of their customer engagement strategy. Platforms like Plivo make that adoption easier with a reliable, enterprise-grade gateway to deliver rich, reliable RCS campaigns at scale.
RCS vs. SMS marketing: A quick comparison
Marketers today are looking for ways to deliver more interactive and visual communication, and RCS is clearly leading the way.
While SMS still works well for simple alerts, it lacks the creativity and engagement that RCS marketing offers.
Let’s take a quick look at RCS vs. SMS marketing.
4 key benefits of RCS marketing
RCS marketing makes messaging feel more natural for both you and your customers. And since you can see what’s working and what’s not, it’s easier to pivot your strategy and get better results.
Here are its four key benefits.
1. Improved user interaction
One of the biggest advantages of RCS marketing is how seamless it makes the experience for your customers. Instead of typing out replies or clicking a link to open a website, users can just tap a button right inside the message.
Want them to book a demo, check order status, or browse products? It’s all possible with just a tap.
Fewer steps mean less effort, and that leads to more people following through. In fact, individuals spend up to 37 seconds engaging with RCS messages, which is a lot longer than most other types of mobile messaging.

That extra time and interaction can make all the difference when you’re trying to convert interest into action.
2. Consistent brand experience
RCS marketing doesn’t just tell people who you are — it shows them.
Verified business profiles help people know they’re getting messages from the real brand. Every message shows your brand’s logo, name, colors, and a checkmark. These small details make it clear that the message is coming from a genuine source.

This consistency matters because 88% of people are more likely to buy from a brand they trust.
3. In-depth analytics
With RCS marketing, you can track open rates, button clicks, and how people interact with each part of your message.
You get clear visibility into what’s working and where users are dropping off.
This makes it much easier to measure the return on investment (ROI) and fine-tune your campaigns. The more you understand how people engage, the better you can shape your messaging for results.
4. Higher conversion potential
RCS marketing makes it easier for customers to take action — whether that’s browsing products, booking a service, or making a purchase — all within the message itself.
With fewer clicks and no need to switch apps, the path to conversion feels effortless. And when it’s that easy, more people follow through.
For example, EaseMyTrip used RCS to run a post-COVID travel survey. They added quick-tap answer options and followed up with a thank-you coupon. The campaign saw a 4x higher click-through rate than email, 10x more survey completions, and a 2.7% increase in conversion rate.
5 major use cases of RCS marketing
Here are five major use cases showing how brands are using RCS marketing effectively.
1. Product promotions
RCS makes product promotions feel more like browsing a store than reading a message. Brands can send image carousels that customers can swipe through to explore new arrivals, check product details, and see what’s available without leaving their messaging app.

2. Abandoned cart reminders
The average cart abandonment rate is over 70%, which means most shoppers never make it to the finish line. RCS marketing can help bring them back by making the reminder more engaging and easier to act on.
You can send a message that shows exactly what they left behind, along with a clear button to complete the purchase. It’s visual, straightforward, and the entire experience stays within their messaging app.
3. Appointment confirmations and reminders
A PhD thesis from Manchester Metropolitan University found that forgetfulness is the most common reason people skip their appointments.
RCS makes it easier for both businesses and customers to stay on the same page. You can send a message that shows the appointment details along with a simple calendar view. Add buttons to confirm, reschedule, or cancel — all within the chat.

4. Customer surveys and feedback
Getting feedback is important, but most customers lack the time or patience to complete lengthy forms. RCS marketing makes it easier by allowing brands to ask short, targeted questions and receive quick responses.
Plus, the rich features of RCS let you include images, ratings, or multiple-choice options, making feedback feel more like a conversation.
5. Customer support follow-ups
After a support request is resolved, following up shows customers you care and helps close the loop on their experience. But if the follow-up message gets buried in an email inbox or goes unnoticed, that opportunity to connect is lost.
With RCS marketing, you can send a quick message to check if everything’s working fine. You can include helpful buttons like “Change Password,” “Manage Account,” or “Talk to Support.”

RCS marketing myths and realities
Despite RCS marketing’s growing adoption and proven results, some common misconceptions still hold businesses back from trying it. Let’s look at a few of the biggest myths and what’s actually true.
Myth 1: RCS marketing is too expensive
At first glance, RCS business messaging can seem like a pricey upgrade. Rich visuals, tap-to-action buttons, and branded layouts look premium, so it’s easy to assume they come with a hefty cost.
But cost alone doesn’t tell the full story.
What you get in return matters more. RCS drives significantly stronger engagement with higher click-through rates, increased interactions, and better overall outcomes.
Take Club Comex, the loyalty program of North American paint brand Comex. They sent two rich and interactive RCS campaigns to their members and saw a 10x higher click-through rate, which helped increase revenue by 115%.
That’s the value side of the equation. Better targeting and richer content mean more people click, engage, and convert.
Myth 2: RCS marketing doesn’t reach enough users to be worth it
This concern made sense in the early days of RCS, when adoption was still catching up. But the landscape looks very different now.
In June 2024, the 12-month growth of RCS users reached 36.3%, showing faster uptake than other messaging channels. More Android devices support RCS by default, and it’s being rolled out across more networks globally. Even Apple has announced support, which means RCS is on track to reach a massive number of smartphone users worldwide.
With that kind of growth and widespread support, the hesitation around RCS is starting to fade. Brands can confidently invest in RCS marketing knowing it will connect with more customers than ever before.
Myth 3: RCS gets treated like spam and ends up ignored just like emails
Unlike email, RCS messages appear directly in the user’s primary messaging app alongside personal conversations. They include rich media and interactive elements, making them more engaging and less likely to be ignored.
This creates a more natural, conversational experience that drives higher open and response rates than traditional marketing channels.
Why choose Plivo for your RCS marketing needs
With RCS, you can turn simple messages into rich, branded conversations that feel more like chatting than broadcasting.
Plivo gives you the tools to make that shift without the hassle. From verified messaging to smart automation, everything works together to help you connect better and respond faster.
When combined with AI Agents and a unified customer data platform, RCS becomes more than just messaging. You can deliver personalized experiences at scale, automate everyday interactions, and keep conversations flowing without lifting a finger.
Here’s what you get with Plivo’s RCS API:
- Real-time personalization: AI Agents tailor conversations using customer profiles and behavior triggers to improve engagement and conversions.
- Multi-channel fallback: If RCS isn’t supported, messages automatically switch to SMS to ensure delivery and maintain consistent communication.
- Conversational automation: AI Agents handle FAQs, process orders, schedule deliveries, and route complex queries within RCS.
- All-in-one messaging platform: Manage RCS, SMS, WhatsApp, Voice, and more from a single dashboard.
- Reliable performance: 99.99% uptime and global infrastructure keep your campaigns running smoothly.
With Plivo’s no-code tools, you can quickly launch AI-powered RCS messaging across channels and deliver a consistent customer experience from day one.
See how you can launch your first RCS marketing campaign with Plivo by requesting a demo today!

WhatsApp Agent Setup: How to Launch AI-Powered Conversations at Scale
Learn how WhatsApp agent setup works using Plivo to launch AI-powered, no-code agents that handle support, sales, and engagement at scale.
Your customers are on WhatsApp but are your agents?
If you’re still relying on manual replies, scripted chatbots, or email follow-ups, you’re leaving response time and revenue on the table.
The smarter path? AI-powered WhatsApp agents. They’re full-service, no-code agents that can resolve issues, qualify leads, and send personalized offers 24/7.
In this guide, we’ll walk you through WhatsApp agent setup using Plivo and understand how these agents help you automate conversations that convert.
What is a WhatsApp AI agent?
A WhatsApp AI agent is an automation designed to operate over the WhatsApp Business API. Unlike scripted bots, agents are built to understand intent, pull in context from your internal systems, and complete business tasks like answering account-specific questions or initiating transactions.
Plivo’s WhatsApp AI agents can be trained to use your brand voice, integrated with your CRM or helpdesk, and customized to handle specific use cases, such as subscription renewals, cart recovery, refund processing, or customer onboarding.
They are accessible through a no-code interface and support a multilingual, omnichannel customer experience across WhatsApp, SMS, RCS, and voice.
What you need before setting up your agent
To go live with a WhatsApp agent, you need:
- A verified Meta Business Account
- An active WhatsApp Business Account (WABA) tied to a phone number
- Pre-approved message templates for outbound communication
- WhatsApp Business API access through a business solution provider (BSP) (Plivo offers this natively)
- A platform to design, train, and manage agents (Plivo Agent Studio)
Also read: How to Create WhatsApp Message Templates: A Complete Guide
Optional but recommended integrations:
- CRM (like Salesforce, HubSpot, or Zoho)
- Helpdesk (like Zendesk or Freshdesk)
- E-commerce or billing tools (Shopify, Stripe, etc.)
Step-by-step: How to set up a WhatsApp agent with Plivo
Follow this step-by-step guide for a smooth WhatsApp agent setup with Plivo.
Step #1: Choose your primary use case and define agent scope
Don’t build a generic bot. Start with why you’re automating. This could be handling support queries, sending order updates, re-engaging inactive customers, or managing subscription renewals.

Plivo provides a library of prebuilt AI agents for common use cases like cart recovery, lead qualification, appointment reminders, and product recommendations. You can choose to use one as-is or customize it to fit your business process. Each agent is compatible with WhatsApp and designed to operate across channels as needed.
Step #2: Build the agent using Plivo’s no-code platform
Since your API access is already set up, you can begin building your agent in Plivo’s Agent Studio. This is a visual, drag-and-drop builder where you create conversation flows using blocks that represent actions, responses, conditions, and triggers.

You can structure your flow to respond to specific keywords, match customer intent, route inquiries to different departments, or escalate to a live agent when needed. Each step in the journey can include media-rich responses like buttons, product carousels, quick replies, and file attachments.
Beyond logic design, you can also configure fallback rules for when the agent is unsure, and add human handoff conditions to ensure escalations happen smoothly with full context transferred to the live agent.

This step allows you to fully customize the agent’s tone, workflow, and logic to reflect how your brand communicates.4
Step #3: Train your agent with AI
Plivo supports integration with internal systems like your CRM, order management platform, inventory tools, or helpdesk. This means your agent can access real-time customer data, past orders, preferences, and policies to deliver personalized responses.
You can also connect your knowledge base, including FAQs, SOPs, product documentation, or policy articles. These resources train the agent to respond accurately and contextually, without needing scripted answers.

For natural language understanding, Plivo gives you the flexibility to choose the AI model that powers your agent.

Step #4: Test, launch, and monitor your agent
Once your flow is built and trained, run controlled tests:
- Check for flow accuracy and intent matching
- Review how it handles incomplete or unclear inputs
- Test human handoff and see if the agent transfers the full context

Plivo’s real-time dashboard lets you:
- Monitor delivery, engagement, and satisfaction metrics
- Track where users drop off in conversations
- Identify areas to improve agent logic or content
- Compare campaign and agent performance across channels
After launch, your agent keeps learning. As more customers interact, you’ll gather insight to improve how it responds or what paths it offers.
Plivo is purpose-built for WhatsApp AI agent deployment
Plivo’s platform is designed to help you move from idea to live AI-powered engagement without requiring engineering support or external consultants. When you use Plivo for WhatsApp agent setup, you get:
- Access to prebuilt agents for sales, support, and engagement
- Intuitive no-code builder (Agent Studio) that puts you in control
- Deep integration with your business systems for real-time, contextual replies
- Support for the best LLMs on the market, so your agent is trained with intelligence
- Built-in compliance with WhatsApp’s policies and global data laws
- Unified interface to manage messaging across WhatsApp, SMS, RCS, and Voice
- Enterprise-grade infrastructure with 99.99% uptime and expert onboarding support
Automate outcomes with WhatsApp agent setup in Plivo
Smart WhatsApp automation starts with smart setup. With Plivo's no-code platform, you can automate customer conversations, boost sales, and scale support — all without a development team.
Plivo offers the tools to build agents that reflect your brand, the infrastructure to scale securely, and the intelligence to adapt with your customer needs.
Whether you're trying to cut support wait times, recover abandoned carts, or drive upsells through personalized outreach, a well-built WhatsApp agent can make it happen, and Plivo makes it achievable.
Ready to get started? Request a free trial today!

The Definitive Guide to Automating WhatsApp for Business
Learn how WhatsApp automation can simplify customer communication and scale operations. Know about its key benefits and use cases. Get started today.
Remember when WhatsApp was just a simple messaging app? Launched in 2009, it was a tool for friends and family to stay in touch.
Fast-forward to today, and WhatsApp has become a global powerhouse with over 3 billion monthly active users. Businesses worldwide leverage WhatsApp to connect with customers, share updates, and provide support.
Many businesses struggle to keep up with the growing volume of customer messages on WhatsApp. Manually handling inquiries, sending updates, or following up on leads can quickly become overwhelming and inefficient.
This is where WhatsApp automation steps in.
By automating repetitive messaging tasks, businesses can reduce manual workload, respond faster, and deliver more personalized, timely communication.
In this article, we'll explore what WhatsApp automation is, why it's essential for modern businesses, and how you can implement it to improve customer engagement and operational workflows.
What is WhatsApp automation?
WhatsApp automation is the use of technology to automatically send and manage messages on the platform, especially for business and customer engagement purposes.
It doesn’t require human intervention for every interaction. As a result, businesses can handle customer inquiries, deliver updates, and engage with prospects efficiently.

With WhatsApp business automation, you can:
- Auto-respond to FAQs and reduce ticket volume.
- Reduce customer support load with proactive messaging.
- Route complex support queries to live agents only when needed.
- Send order confirmations and delivery updates automatically.
- Share return instructions based on customer actions.
- Run re-engagement campaigns with smart timing.
- Integrate with Shopify, Magento, and more for real-time updates.
- Trigger workflows from CRMs or e-commerce platforms.
- Keep messaging compliant with auto opt-outs and logs.
Here’s a breakdown of the three main types of automated messaging on WhatsApp:
Key benefits of WhatsApp automation
By automating routine tasks, WhatsApp can help your business stay responsive and consistent across customer touchpoints. Here’s how it can benefit your business:
Reduce manual workloads and response times
When you automate WhatsApp interactions, every department, from marketing to customer service, runs more smoothly.
By automating routine tasks like order updates, FAQs, and customer inquiries, businesses can significantly reduce the manual effort required.
This means your team spends less time on repetitive tasks and more time focusing on high-priority interactions.
Increases the scalability of customer interactions
As your business grows, the number of customer interactions increases. Automation allows you to scale communication efforts without hiring additional staff or losing the personal touch.
Whether you're dealing with 50 or 5,000 customers, automated responses ensure that each inquiry is handled swiftly and consistently.
Enhances customer experience through personalization
Automated WhatsApp messages can be personalized based on customer data, creating a more relevant and tailored experience.
From addressing customers by name to offering product recommendations based on past purchases, personalization makes customers feel valued. This leads to higher engagement rates and improved loyalty.
Cost-effectiveness compared to manual processes
WhatsApp automation eliminates the need for large customer support teams and reduces the time spent on repetitive tasks.
This saves on operational costs and also leads to a more efficient allocation of resources.
5 popular use cases of WhatsApp automation across industries
Businesses everywhere are finding new ways to use WhatsApp automation. Here are five popular examples:
1. Customer support
Automating common FAQs and routine inquiries on WhatsApp helps customers get instant answers anytime. This reduces the number of tickets support teams have to handle, letting them focus on more complex problems.
2. E-commerce operations
Order confirmations, shipping updates, and delivery notifications keep customers informed every step of the way. Automating returns and collecting feedback via WhatsApp speeds up these processes and improves customer satisfaction.
3.Marketing and lead nurturing
Automated lead follow-ups ensure timely, consistent engagement with prospects, boosting conversion chances. Also, you can use personalized re-engagement campaigns to help bring back inactive customers with offers or updates tailored to their interests.
4.Event management and invitations
Automated WhatsApp invites, updates, and follow-ups keep your audience informed and engaged, boosting the attendance rate. This helps you stay connected and make every event a success.
5.Appointment scheduling and reminders
Timely reminders help customers remember appointments, reducing cancellations and improving the overall experience. Automation makes scheduling easier and more efficient for both businesses and customers.
Step-by-step guide to implement WhatsApp automation for your business
To successfully implement WhatsApp automation, follow these key steps that cover planning, setup, and optimization.
Step 1: Define your use cases and goals
Start by identifying which business functions, such as order updates, customer support, or lead follow-ups, will benefit most from automation.
Set clear, measurable goals like:
- Reducing response times
- Lowering manual workload
- Boosting customer engagement
This will guide your automation strategy and help you track success.
Also, ensure compliance from the start. WhatsApp requires businesses to obtain explicit customer opt-in before sending messages. To stay compliant:
- Use clear, transparent language when requesting consent.
- Collect opt-ins through channels like website forms, checkout flows, or click-to-chat ads.
- Log and manage consent within your systems for audit readiness.
Data privacy and compliance are essential for building trust and maintaining long-term customer relationships.
Step 2: Choose the right WhatsApp business API provider
Select a platform that fits your specific needs. Look for features like:
- Robust CRM integrations
- Audience segmentation
- Flexible automation workflows
These capabilities simplify your communication and scale your efforts efficiently.
Make segmentation a priority, use tagging and grouping strategies to target the right customers with the right messages.
With smart tagging and grouping, you can:
- Deliver personalized messages
- Engage the right people at the right time
- Improve conversion and retention
Step 3: Set up your WhatsApp business account
You must set up a verified WhatsApp Business account to use WhatsApp for automated messaging. This includes:
- Registering your business name and details.
- Verifying a dedicated phone number.
- Getting approval from Meta to use the WhatsApp Business API.
This ensures that your business is recognized as a legitimate sender.
Your WhatsApp API provider will typically assist with onboarding, including submitting documentation and setting up the technical aspects.
Some platforms also offer pre-built tools to help you manage mobile number registration, display name approval, and message template submissions.
Step 4: Create and submit message templates
Start by designing message templates for everyday customer interactions, such as:
- Promotional messages (e.g., limited-time offers)
- Transactional updates (e.g., order confirmations, delivery alerts)
- Support messages (e.g., ticket updates or issue resolution)
Each template must follow WhatsApp’s formatting and content policies.
Once your templates are ready, submit them through your WhatsApp API provider for Meta’s approval. Only approved templates can be used for proactive messaging.
Step 5: Build automation workflows
Now that your account and templates are ready, it’s time to connect WhatsApp with the rest of your tech stack. Integrate with:
- CRM systems (to access customer data)
- Support tools (for query management)
- E-commerce platforms (to track orders and actions)
Use event-based triggers, like a new order, a cart abandonment, or a support ticket, to automatically send relevant messages.
Additionally, plan for human fallback. Automation can’t handle everything. Build intelligent workflows that escalate to a human agent when:
- A customer requests help
- The query is too complex
- Sentiment detection flags a negative experience
This keeps your support experience smooth, responsive, and frustration-free.
Step 6: Test, launch, and optimize
Start with a pilot campaign to ensure everything runs smoothly.
Track key metrics:
- Response time
- Open rate
- Conversion rate
Use these insights to refine your workflows, improve message content, and adjust targeting.
Best practices for WhatsApp automation
Following some proven best practices is essential to get the most out of WhatsApp automation. Here’s what you need to know:
Tips for optimizing messaging frequency and timing
To keep your audience interested, it's vital to message thoughtfully and strategically. Here are some quick tips:
- Avoid over-messaging to prevent unsubscribes.
- Use analytics to identify when your audience is most active and receptive.
- Space out messages to keep it natural.
- Monitor response rates and adjust based on customer behavior and feedback.
Leverage data analytics for campaign performance
By tracking metrics such as open rates, click-through rates, and response times, you gain valuable insights into what works and what doesn’t. Use this data to refine your messaging, target relevant audience segments, and optimize timing.
Regularly reviewing analytics helps you make informed decisions that boost engagement and drive better results over time.
Compliance and customer privacy protection
To protect your customers and stay compliant, focus on these key areas:
Enhance customer communication with Plivo’s AI WhatsApp automation
The growing demand for instant, tailored communication on WhatsApp puts pressure on businesses to respond quickly. Customers expect fast, personalized replies around the clock, and doing this manually often leads to delays, inconsistent service, and missed opportunities.
Finding a way to scale these conversations efficiently is critical for businesses looking to stay competitive.
That’s where Plivo comes in, an industry-leading omnichannel platform that automates and personalizes WhatsApp conversations, delivering timely responses at scale.
By leveraging Plivo’s WhatsApp AI agents, businesses can manage a wide range of customer communication tasks, from pre-sales inquiries to post-purchase support, without increasing their team size.
Here’s how Plivo can enhance your customer communication:
- Brand-aligned AI agents: You can customize the AI agents to reflect your brand’s voice, tone, and style. This makes all customer interactions align with your brand’s identity and deliver a personalized experience.
- AI customer service agent: Plivo’s AI agents work around the clock, ensuring your customers receive timely responses, regardless of the time zone. These agents process orders, resolve support issues, and answer questions.

- Natural, human-like conversations: With AI agents, you can engage in context-aware conversations, mimicking human interactions. They remember customer preferences and history to provide relevant responses like a human agent would.
- Simple, volume-based pricing: Plivo charges a flat fee per conversation rather than per message, making costs predictable and scalable. Volume discounts are available to lower your total spend as your messaging needs grow.

- Built-in compliance: Plivo ensures compliance with GDPR, HIPAA, PCI DSS, ISO 27001, and SOC 2 standards.
- Guaranteed message delivery with fallback options: The platform delivers billions of messages annually and uses SMS and voice fallback channels to ensure your customers always receive important communications.
- 24/7 availability: Plivo's AI agents provide instant, 24/7 assistance, answering questions, processing orders, and resolving customer issues.
- Multilingual support: With support for 70+ languages, Plivo’s AI agents can engage with customers globally and offer a multilingual customer service experience.
- E-commerce platform integrations: Integrate seamlessly with popular e-commerce platforms like Shopify, BigCommerce, WooCommerce, and Magento to deliver a unified customer experience across all touchpoints.
With Plivo’s vast carrier network spanning over 220 countries, businesses can significantly cut SMS costs by up to 70% while achieving threefold returns on investment.
Many companies using Plivo CX have experienced remarkable results, earning an outstanding $71 for every dollar invested in their SMS marketing efforts.
Book a free demo today and see how Plivo’s AI WhatsApp agents can change your customer communication strategy.

How to Build a Voice-controlled Virtual Assistant (IVR) in Node.js Using Express.js and Plivo
Voice API | Plivo | You can get started to build a Voice-controlled Virtual Assistant (IVR) in Node.js Using Express.js and Plivo
A virtual assistant can help your business if you have clients who call your phone number. Interactive voice response (IVR) helps you to automate call reception by routing callers to the most appropriate department or the agent most qualified to meet their needs. Among its many advantages, IVR can provide increased operational efficiency, a stronger brand image, and better customer insights.
A voice-controlled virtual assistant is one step ahead of the legacy Touch-Tone/DTMF controlled one because of the flexibility it allows end users. They can just speak into their phone’s microphone to provide input to control the call.
Building a voice-controlled virtual assistant using Plivo’s automatic speech recognition (ASR) feature in Node.js using Express.js is simple. This guide shows you how to set up a voice-controlled IVR phone tree to a Plivo number and manage the call flow when the call reaches the Plivo voice platform. To see how to do this, we’ll build an Express.js application to receive an incoming call and use the GetInput XML element to capture speech input and implement a simple IVR phone system.
Prerequisites
Before you get started, you’ll need:
- A Plivo account — sign up for one for free if you don’t have one already.
- A voice-enabled Plivo phone number if you want to receive incoming calls. To search for and buy a number, go to Phone Numbers > Buy Numbers on the Plivo console.
- Expressjs and Plivo npm packages — run npm i -S plivo express body-parser to install them.
- ngrok — a utility that exposes your local development server to the internet over secure tunnels.
How it works

Create an Express.js application to create a voice-controlled virtual assistant
Once you’ve installed Express.js and the Plivo Node.js SDK, create a simple Express.js application to handle incoming calls on a Plivo number. To handle an incoming call, you need to return an XML document from the URL configured as the Answer URL in the application assigned to the Plivo number. The Node.js SDK can manage the XML document generation, and you can use the GetInput XML element to capture speech inputs and implement a simple IVR phone system. Use this code:
Test the code locally
Save this code in any file (name the file something like detect_speech.js). To run this file on the server, go to the folder where this file resides and use the following command:
And you should see your basic server app in action on http://localhost:3000/response/ivr/
Expose the local server to the internet using ngrok
Once you see the application working locally, the next step is to connect the application to the internet to return the XML document to process the incoming call. For that, we recommend using ngrok, which exposes local servers behind NATs and firewalls to the public internet over secure tunnels.
Install it and run ngrok on the command line, specifying the port that hosts the application on which you want to receive calls (5000 in this case, as our local Express.js application is running there):
Ngrok will display a forwarding link that you can use as a webhook to access your local server over the public network.

Test the link by opening the ngrok URL(https://02a9fe62aabd.ngrok.io/detect_speech) in a browser or HTTPie to check the XML response from the ngrok URL.

Connect the Express.js application to a Plivo number
The final step is to configure the application as a Plivo voice application and assign it to a Plivo number on which you want to activate the voice-controlled virtual assistant.
Go to the Plivo console and navigate to Voice > Applications > XML, then click on the Add New Application button in the upper right.
Provide a friendly name for the application — we used “App-Virtual-Assistant” — and configured the ngrok URL https://02a9fe62aabd.ngrok.io/detect_speech as the Answer URL. Select the HTTP verb as POST, then click Create Application.

Now go to Phone Numbers > Your Numbers and click on the number to which you want to assign the application. From the Plivo Application drop-down, choose the voice application you just created. Finally, click Update Number.

Test the application
Make a phone call to the Plivo number you selected. You should see that the VirtualAssistant Express.js application automatically routes the call to the Sales and Support departments based on the speech inputs received on the call.
And that’s how simple it is to set up a voice-controlled virtual assistant on a Plivo number and handle it using XML documents using Plivo’s Node.js SDK and an Express.js application. You can implement other use cases on the Plivo Voice platform, such as phone system IVR, call forwarding, and number masking, as your business requires.
Haven’t tried Plivo yet? Getting started is easy and only takes five minutes. Sign up today.
Best Practices for SMS Notifications
Tips and best practices for SMS notifications that can help your business use text messaging more effectively.
Our customers use our cloud communications platform to send out billions of SMS messages every year. In keeping them happy and productive, we’ve learned a few things about best practices for sending SMS notifications. Whether you’re one of our customers or you haven’t tried Plivo yet (what are you waiting for?) here are some tips that can help your business use messaging more effectively.
Do you need convincing that SMS is the best communications channel for sending notifications to customers? According to Techjury, SMS messages have a 98% open rate, and 60% of people read text messages within 5 minutes after receiving them. And since almost 4 billion people worldwide own smartphones, you can send SMS messages to just about anyone — and do it cost-effectively. Alternatives like email, postal mail, and voice calling cost more and lack the reach, ease of use, and immediacy of SMS.
Maybe you already use SMS for some use cases — reminders or delivery alerts, maybe. You can leverage your investment in SMS messaging by doing more with it: offering event notifications or collecting customer feedback, for instance.
We’ve written a guide that talks about more possible use cases, and offers best practices for using SMS. You should download it to get all the details, but to stimulate your imagination, here’s a preview of what you’ll find.
Get permission
First, before you start sending messages willy-nilly, make sure you have permission to contact recipients. Thanks to privacy regulations such as the GDPR and CCPA, businesses need consumers to opt into being contacted. Organizations that fail to get permission may be subject to heavy fines.
Timing
Think about the optimal time to send your messages. Aim for times when your customers are likely to read them and take advantage of what you have to say. For example, if you’re a restaurant offering a lunchtime discount, think about scheduling your texts for the midmorning, so that your offers will be on your customers’ minds when they’re making lunch plans.
Personalization
Personalizing your messages lets you build deeper relationships with customers and treat them as unique individuals. Use your subscribers’ names, and keep the customer benefit at the front and center of the message.
Measure your results
Don’t just send out messages and hope for the best. You should have a plan to track and measure your efforts in place before you send your first message. Consider not only open and response rates, but also things like list growth rate, acquisition cost per recipient, and return on investment.
Infrastructure
Use a single platform to manage all your communication channels. A single platform takes less training, speeds up your time to market, and takes fewer resources and less time to maintain.
Prioritize deliverability
To be effective, SMS messaging should be timely — received as quickly as they’re sent — and reliable — there’s no point in sending out messages that people can’t receive. But if your SMS messages can’t make it through, have a backup plan. Voice messaging offers an alternative to SMS for when your message absolutely, positively has to be there right away.
Get the guide
We go into more depth on these and other points in our best practices guide. Download it for free, or sign up for a free Plivo trial account and see how we let businesses take advantage of SMS messaging.

Plivo Wins TMC 2021 Communications Solutions Products of the Year Award
TMC names Plivo a 2021 Communications Solutions Product of the Year.
Global media company TMC just named Plivo a 2021 Communications Solutions Product of the Year for our SMS API.
“We’re grateful to be recognized for all the hard work we’ve put into Plivo over the last decade,” says Venky B, Plivo co-founder and CEO.
In its blog post announcing the award, TMC says, “Winners represent prominent players in the market who consistently demonstrate the advancement of technologies. Each recipient is a verifiable leader in the marketplace.”
“This list encompasses the true leaders within their market segments,” says Rich Tehrani, CEO, TMC. “Honorees truly represent the best-of-the-best communications products and solutions available today.” Tehrani called Plivo “amongst the best communications products and services available on the market today.”
To see for yourself what the excitement is about, sign up today for a free trial.
SMS and Voice API Features to Look for in a Twilio Alternative
Twilio may be the best-known name for SMS and voice APIs, but strong Twilio alternatives offer better quality, reach, pricing, and support.
By automating SMS and voice communication and integrating those communication channels with your applications, your business can more easily communicate with customers and meet their needs. But choosing the right communications API provider is critical to delivering the best experience for your customers.
While you may have started out with Twilio or another API provider to connect with your customers via SMS and voice, your first partner may not be the best long-term solution.
For many companies, Twilio’s communications APIs aren’t the right fit for three reasons:
- You notice inconsistent quality or deliverability in certain regions.
- You feel frustrated by lackluster customer support and ongoing technical issues that you can’t get resolved.
- Their pricing seemed great at the beginning, but costs have risen as your customer base has grown, and the expense doesn’t fit your ROI plan.
If your goal is to improve uptime and reliability, you need to diversify your provider mix so you don’t rely on one partner alone and expose your business to the risks of a single point of failure. To do that, figure out your use case, then evaluate new platforms.
Twilio alternative: primary provider or backup?
The first key question is whether to replace Twilio or add a second platform to provide high availability and more throughput.
Adding a backup provider to existing services ensures access to redundant infrastructure and diversifies your services in case one provider goes down.
Switching your primary provider away from Twilio might be the right move if your usage has grown and you’re finding your overall spend to be too high. But you don’t want to trade off cost savings for quality, so you need to find a new primary provider that has equivalent, if not better, delivery rates globally.
Whether you’re looking for a better price point, higher quality, wider reach, or infrastructure redundancy, it’s important to know what to look for when evaluating your new communications API provider.
Make sure your Twilio alternative has these essential features
Once you decide you need a Twilio alternative, either as your new primary provider or as a redundant provider for your failover strategy, you have to determine which cloud communications platform is the right partner for your business.
To evaluate each provider’s unique platform, network, and features, focus on these six key areas.
Key features and essentials
Look for a voice API with programmatic building blocks that let you implement call forwarding, call recording, multiparty conference calling, voicemail, customized audio alerts, voice survey functionality, interactive voice response (IVR), text to speech, call transcription, and call transfers.
On the SMS API side, your team should be able to quickly and painlessly set up automated account alerts and SMS notifications throughout the user journey, send and receive messages, enable SMS autoresponders, send text message reminders, and implement common workflows such as two-factor authentication.
Additionally, look for advanced SMS API functionality like Plivo’s Powerpack, which, on top of ensuring high deliverability and better open rates, gives you the ability to connect and engage with your customers using local phone numbers and eliminates the need to worry about compliance regulations across the globe.
Compare your options to make sure your next provider meets — or exceeds — the bar set by Twilio.
Regional deliverability
If your business operates in multiple regions or countries, you know that not all providers perform equally well in every region. SMS and voice API providers all highlight great global reach on paper, but their SMS delivery rates and call quality vary across countries and regions.
If you decide to use two providers in tandem, then no matter whether Twilio is your primary or your backup API, your new provider should solve for Twilio’s coverage and quality gaps so you can improve your reach and reliability.
On the voice API side, your provider should let you easily integrate voice calling into your web and mobile apps to create a fully integrated user experience. For example, when making outbound calls to the public switched telephone network (PSTN), your provider should allow for specific caller IDs (domestic or international) as per your business requirements. The provider should have direct relationships with Tier 1 local carriers to efficiently connect calls over the PSTN.
For SMS services, your provider should support not only high SMS deliverability to in-country carriers, but also global coverage for businesses that cater to customers around the world. It should support customized sender IDs outside of North America to improve open rates.
Infrastructure reliability
Reliable, redundant infrastructure is critical in ensuring your messages and calls reach your customers every time.
Your API provider should offer at least 99.99% uptime. You can find Plivo’s 90-day uptime rate through our real-time and historical service status page.
Check to make sure that your communications API provider invests in its infrastructure to consistently deliver high quality globally. A strong provider should have:
- Globally distributed points of presence (PoP) across the regions where you do business
- Geographically distributed and monitored network operations centers (NOC) for 24/7 support
- Latency-free connectivity of less than 150 milliseconds to carriers and end phones
- Optimized routing and uptime through an intelligent routing system that routes based on quality
These infrastructure features ensure a robust, fault-tolerant, and reliable platform to support your communications needs.
Compliance and security measures
According to the 2019 CGS Customer Service Security and Compliance Survey, 69% of US consumers would not return to a business that exposed sensitive user information. Your new SMS and voice API provider must implement the compliance and security measures necessary to keep customer information safe.
Your new provider should guarantee GDPR and CCPA compliance and adhere to any other compliance standards your business requires. Additionally, your provider should support features like smart queuing that give you automatic compliance with local carrier requirements. To ensure access security, the provider should support two-factor authentication. These features ensure you meet data protection requirements when personal consumer data is transferred between regions.
In addition to these features, a modern communications API provider should guarantee:
- On-premises security for their networks
- Application security through at-rest and in-transit encryption
- PCI-compliant payment security
- Role-based access control
- Authentication for accessing recordings
- Regular third-party penetration testing
By working with an SMS and voice API provider that provides these features, you ensure your company keeps customers happy and their data secure.
Easy migration
You need APIs that are easy to customize and implement to streamline migration from Twilio to your new provider.
Your Twilio alternative SMS and voice API provider should make it painless to add communications services to your existing setup. That’s why Plivo offers:
- Familiar REST APIs and XML code
- Extensive reference documentation and how-to guides
- SDKs for browser and mobile apps to integrate native voice calling
- Call Insights and debug logs for easier troubleshooting
- The PHLO low-code visual workflow builder
These features make it easy for your team to understand, customize, and troubleshoot applications.
Pricing flexibility
Pricing is one of the major pain points for Twilio customers. As companies scale their usage, they often find that Twilio becomes cost-prohibitive.
Relative to Twilio, Plivo saves customers 40% on outbound SMS, provides free inbound SMS, and offers 20% cost savings on calls to toll-free and local phone numbers. Additionally, Plivo offers lower outbound and inbound SMS rates and lower phone number rental fees.
Better pay-as-you-go pricing and volume discounts as you scale help you lower your TCO. Contact our team to explore pricing scenarios for your business.
Choose the Twilio alternative that best fits your business needs
When choosing an API provider, you should evaluate every facet of their offering to ensure that it meets your needs. Thousands of innovative businesses rely on Plivo for SMS and voice API services. Every day, companies on our platform experience the benefit of our globally distributed, direct-to-carrier network with high SMS delivery and low call latency.
Our proven quality and scale, enterprise-grade platform, uptime of 99.99%, 24/7 customer support, and low cost of ownership make offering reliable SMS and voice services easy.
Announcing the Plivo APIs Postman Collection
Voice API | Plivo | You can get started with the Plivo APIs Postman Collection
With Plivo’s SMS platform and voice platform you can add messaging and calling capabilities to your applications with a few lines of code via our server SDKs for PHP, Node.js, Python, .NET, Java, Ruby, and Go. Before you get started, you’d probably like to evaluate our APIs using an HTTP client. You can use any HTTP client you like; many developers choose Postman, a popular HTTP REST client. Postman makes it easy for developers to set up and use to explore API request and response structures.
About Plivo Postman collections
Plivo has released a new Postman collection that includes APIs for our SMS, Voice, Phone Numbers, Account, Lookup, and PHLO products, along with documentation for each API to help you learn about them. You can import these APIs and start using them instantly. The API collection comes with predefined environment variables to help you get started immediately. This post walks you through the process of installing and configuring Postman and our Postman collection and making API requests.
Install Postman and download the Postman collection
First, download and install Postman. You also need a Plivo account; if you don’t have one yet, sign up now. Next, click on the button below.
A window will appear asking if you want the collection to be added to your local Postman app or if you want to use a web app.
You’ll see the collection in your chosen space based on the options you’ve chosen.
Configure environment variables
Now you can add your keys and tokens to your Postman collection. Open Postman from Applications under macOS or your desktop on Windows. The first thing you need to do is add your authentication credentials.
- Click on the collection Plivo REST API.

- Select Authorization, then, from the drop-down list, set the Type as Basic Auth.

- For Username and Password, fill in your Plivo Auth ID and Auth Token respectively, which you can find on the overview page of the console.
You’ve now authenticated Postman to your Plivo account. The next step is to make that authentication available for every endpoint.
Set up environment variables
Set up the auth_id as an environment variable, so you can use it in every endpoint you have.
- Click on the collection Plivo REST API.

- Click on Variables. Declare the variable auth_id, and provide the initial and current value as the Auth ID from the console.

- Once you’ve done that, you can access your Auth ID by writing within your Postman collection. We’ve already done that for you for all the APIs in the Plivo collection.
Make an API request to send an SMS
To see how Plivo and Postman work together, let’s start by sending an SMS message. From the imported Plivo REST API collection, select the folder named Messaging, and select the request to Send SMS. Replace src with your from_number, dst with destination number where you’d like to send the message, and text with appropriate content. These are the only mandatory parameters.
You can replace the other optional parameters with meaningful values for your use case, or you can leave them out if you’re not using them in the request.
To learn more about optional and required parameters, either refer to the documentation available within the Postman collection or visit our Messaging API reference guide.
Make an API request to make a phone call
To see how Plivo and Postman work together to making an outbound call. From the imported Plivo REST API collection, select the folder named Call and select the request to make an outbound call. Replace from with your caller_id, to with the destination number you’d like to make a call & answer_url with a valid publicly accessible URL that returns a valid XML. These are the only mandatory parameters.
Note:
To learn more about optional and required parameters, either refer to the documentation available within the Postman collection or visit our Voice API reference guide.
Make an API request to buy a phone number
To see how Plivo and Postman work together for searching for an available phone number. From the imported Plivo REST API collection, select the folder named Phone Numbers followed by Search/Buy a Phone Number, and select the request named Buy a Phone Number.
You can find a number by using the Search Phone numbers API, which is right above the Buy a Phone number API request in your collection, or from the console. Update the URL with the number you wish to purchase — it should look like
Under Body, replace app_id with the application you want to attach, if you have one.
To learn more about optional and required parameters, either refer to the documentation available within the Postman collection or visit our Phone number API reference guide.
Conclusion
Postman helps us keep all of our APIs organized, categorized, and always ready to use with just a few modifications depending on our needs. It helps us not only with triggering API requests but also with testing APIs. Overall, Postman makes it easier for developers to test and integrate their systems with Plivo.
Haven’t tried Plivo yet? Getting started is easy and only takes five minutes. Sign up today.

How to Build a Voice-Controlled Virtual Assistant (IVR) in PHP Using Laravel and Plivo
Voice API | Plivo | You can get started to build a Voice-Controlled Virtual Assistant (IVR) in PHP Using Laravel and Plivo
A virtual assistant can help your business if you have clients who call your phone number. Interactive voice response (IVR) helps you to automate call reception by routing callers to the most appropriate department or the agent most qualified to meet their needs. Among its many advantages, IVR can provide increased operational efficiency, a stronger brand image, and better customer insights.
A voice-controlled virtual assistant is one step ahead of the legacy Touch-Tone/DTMF controlled one because of the flexibility it allows end users. They can just speak into their phone’s microphone to provide input to control the call.
Building a voice-controlled virtual assistant using Plivo’s automatic speech recognition (ASR) feature in PHP using Laravel is simple. This guide shows you how to set up a voice-controlled IVR phone tree to a Plivo number and manage the call flow when the call reaches the Plivo voice platform. To see how to do this, we’ll build a Laravel application to receive an incoming call and use the GetInput XML element to capture speech input and implement a simple IVR phone system.
Prerequisites
Before you get started, you’ll need:
- A Plivo account — sign up for one for free if you don’t have one already.
- A voice-enabled Plivo phone number if you want to receive incoming calls. To search for and buy a number, go to Phone Numbers > Buy Numbers on the Plivo console.
- Laravel and Plivo PHP packages.
- ngrok — a utility that exposes your local development server to the internet over secure tunnels.
How it works

Create a Laravel application to create a voice-controlled virtual assistant
First, install Laravel if you haven’t done so already. We suggest using Composer to install it. Add a new Laravel project with boilerplate code with the command composer create-project laravel/laravel virtual_assistant --prefer-dist. This will create a receive_calls project directory with the necessary folders and files for development. Then change to the newly created receive_calls directory and install the Plivo PHP package (composer require plivo/plivo-php).
Once you’ve installed Laravel and the Plivo PHP SDK, run php artisan make:controller VirtualassistantController to create a Laravel controller to handle incoming calls on a Plivo number. To handle an incoming call, you need to return an XML document from the URL configured as the answer URL in the application assigned to the Plivo number. The PHP SDK can manage the XML document generation, and you can use the GetInput XML element to capture speech inputs and implement a simple IVR phone system. Use this code:
Now add a route for the virtualAssistant function in the VirtualassistantController class. Open the routes/web.php file and add these lines at the end of the file:
Note: We need to add the route of the app to the “except” array to disable cross-site request forgery (CSRF) verification in the app/Http/Middleware/VerifyCsrfToken.php file.
Test the code locally
Now the VirtualassistantController is ready to handle incoming calls to your Plivo number using Laravel and the Plivo PHP SDK. To run the code on the Laravel server, use the command
You should see your basic server application in action on http://127.0.0.1:8000/detect_speech.
Expose the local server to the internet using ngrok
Once you see the application working locally, the next step is to connect the application to the internet to return the XML document to process the incoming call. For that, we recommend using ngrok, which exposes local servers behind NATs and firewalls to the public internet over secure tunnels.
Install it and run ngrok on the command line, specifying the port that hosts the application on which you want to receive calls (8000 in this case, as our local Laravel application is running there):
Ngrok will display a forwarding link that you can use as a webhook to access your local server over the public network.

Test the link by opening the ngrok URL(https://02a9fe62aabd.ngrok.io/detect_speech) in a browser or HTTPie to check the XML response from the ngrok URL.

Connect the Laravel application to a Plivo number
The final step is to configure the application as a Plivo voice application and assign it to a Plivo number on which you want to activate the voice-controlled virtual assistant.
Go to the Plivo console and navigate to Voice > Applications > XML, then click on the Add New Application button in the upper right.
Provide a friendly name for the application — we used “App-Virtual-Assistant” — and configure the ngrok URL https://02a9fe62aabd.ngrok.io/detect_speech as the Answer URL. Select the HTTP verb as POST, then click Create Application.

Now go to Phone Numbers > Your Numbers and click on the number to which you want to assign the application. From the Plivo Application drop-down, choose the voice application you just created. Finally, click Update Number.

Test the application
Make a phone call to the Plivo number you selected. You should see that the VirtualAssistant Laravel application automatically routes the call to the Sales and Support departments based on the speech inputs received on the call.
And that’s how simple it is to set up a voice-controlled virtual assistant on a Plivo number and handle it using XML documents using Plivo’s PHP SDK and a Laravel application. You can implement other use cases on the Plivo Voice platform, such as phone system IVR, call forwarding, and number masking, as your business requires.
Haven’t tried Plivo yet? Getting started is easy and only takes five minutes. Sign up today.

How to Build a Call Forwarding App in Node.js Using Express.js and Plivo
Voice API | Plivo | You can get started to build a Call forwarding app in Node.js Using Express.js and Plivo
Businesses use call forwarding all the time to route incoming calls to available agents, extensions, or departments that cater to the caller’s needs. Creating a call forwarding app is simple when you use Plivo’s Node.js SDK. This guide shows you how to receive incoming calls on Plivo numbers and manage the call flow once a call reaches the Plivo voice platform. To see how to do this, we’ll build an Express.js application to forward the call to a mobile number using the Dial XML element.
Prerequisites
Before you get started, you’ll need:
- A Plivo account — sign up for one for free if you don’t have one already.
- A voice-enabled Plivo phone number if you want to receive incoming calls. To search for and buy an available number, go to Phone Numbers > Buy Numbers on the Plivo console.

- Express.js and Plivo npm packages — run npm i -S plivo express body-parser to install them.
- ngrok — a utility that exposes your local development server to the internet over secure tunnels.
Create an Express.js application to forward incoming calls
Once you’ve installed Express.js and the Plivo Node.js SDK, create a simple Express.js application to handle incoming calls on a Plivo number. To handle an incoming call, you need to return an XML document from the URL configured as the Answer URL in the application assigned to the Plivo number. The Node.js SDK can manage the XML document generation, and you can use the Dial XML element to forward the call to a mobile number. Use this code:
Test the code locally
Save the code in any file — we named the file forward_call.js. To run the code on the server, go to the folder where the file resides and use the command
You should see your basic server application in action on http://localhost:5000/forward_call/.
Expose the local server to the internet using ngrok
Once you see the application working locally, the next step is to connect the application to the internet to return the XML document to process the incoming call. For that, we recommend using ngrok, which exposes local servers behind NATs and firewalls to the public internet over secure tunnels. Install it and run ngrok on the command line, specifying the port that hosts the application on which you want to forward incoming calls (5000 in this case, as our local Express application is running there):

Ngrok will display a forwarding link that you can use as a webhook to access your local server over the public network.
Test the link by opening the ngrok URL (https://5d278f96a504.ngrok.io/forward_call/) in a browser. We used HTTPie to check the XML response from the ngrok URL.

Connect the Express application to a Plivo number
The final step is to configure the application as a Plivo voice application and assign it to a Plivo number on which you want to forward incoming calls.
Go to the Plivo console and navigate to Voice > Applications > XML, then click on the Add New Application button in the upper right.
Provide a friendly name for the application — we used “App-call-forward” — and configured the ngrok URL https://5d278f96a504.ngrok.io/forward_call/ as the Answer URL. Select the HTTP verb as POST, then click Create Application.

Now go to Phone Numbers > Your Numbers and click on the number to which you want to assign the application. From the Plivo Application drop-down, choose the voice application you just created. Finally, click Update Number.

Test the application
Make a phone call to the Plivo number you selected. You should see that the Express application automatically forwards the call to the phone number configured in the call forwarding app.
And that’s how simple it is to receive an incoming call on a Plivo number and forward it using XML documents using Plivo’s Node.js SDK and an Express application. You can implement other use cases on the Plivo Voice platform, such as phone system IVR, receive DTMF/Speech inputs, and number masking, as your business requires.
Haven’t tried Plivo yet? Getting started is easy and only takes five minutes. Sign up today.
New Plivo Voice Pricing Based on Network Group Levels
By moving to a “network group level” pricing structure for voice outbound to all countries Plivo has simplified our Voice API pricing.
Today we’re announcing two updates to our Voice API pricing.
Network group pricing
Today, call pricing can vary depending on the prefix of the phone numbers customers call. This makes it challenging to estimate spend, and customers tend to simply take an average, which may give an inaccurate value.

Going forward, we’ve simplified the pricing into broader groups, which will help customers plan spend by estimating at a group level.

Some common network groups you could see include:
By moving to a “network group level” pricing structure for voice outbound to all countries, we have removed the complexity of prefix level pricing. Our new destination network groups are a logical way to allow customers to more easily understand Plivo pricing and its impact on their spend.
Price changes for outbound and inbound voice
The second change is an update to our voice prices for both outbound and inbound.
Voice Outbound
This chart highlights changes you’ll see in pricing for outbound calls in countries where Plivo has the highest traffic. Prices will change in almost all countries; you should refer to the Voice pricing page for the new pricing in your countries.