Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Extra Tools
  3. WT WhatsApp OTP — Signup Verification v 19.0
  4. Sales Conditions FAQ

WT WhatsApp OTP — Signup Verification

by Waqas Riasat https://way4tech.com
Odoo

$ 20.00

v 19.0 Third Party
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Website (website)
• Discuss (mail)
Lines of code 445
Technical Name wt_whatsapp_otp_odoo
LicenseOPL-1
Websitehttps://way4tech.com
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Website (website)
• Discuss (mail)
Lines of code 445
Technical Name wt_whatsapp_otp_odoo
LicenseOPL-1
Websitehttps://way4tech.com
  • Description
  • License

WT WhatsApp OTP — Signup Verification

Verify customer phone numbers via WhatsApp OTP during Odoo signup — standalone, works with any module, zero configuration required beyond a Meta API token.

WT WhatsApp OTP Banner

Getting Started

Get WhatsApp OTP running on your Odoo signup page in 5 steps.


1
Create Meta App

Log in to developers.facebook.com, create a new App of type Business, and add the WhatsApp product to it.

2
Approve OTP Template

In WhatsApp Manager, create a message template named phone_otp with one body variable {{1}} containing the code. Wait for Meta approval (usually <24 hours).

3
Install Module

Install WT WhatsApp OTP from Odoo Apps. Required dependencies (Portal, Auth Signup, Website) install automatically.

4
Configure & Enable

Go to Settings → Website → WhatsApp OTP. Paste your API Token, Phone Number ID, template name, then tick Enable WhatsApp OTP on Signup.

Module Features

Everything you need for secure phone verification on Odoo signup — nothing more, nothing less.


📱
WhatsApp Cloud API

Sends OTP codes via the official Meta WhatsApp Cloud API (v18.0). No third-party intermediary — direct from your Meta Business account to the customer's WhatsApp.

🔐
Secure 6-Digit OTP

Generates a cryptographically random 6-digit numeric code. OTPs are single-use, expire after a configurable number of minutes, and prior codes are invalidated when a new one is requested.

✅
Inline Verification UI

Phone field and OTP code input are injected directly into the standard Odoo /web/signup page. The Submit button stays disabled until OTP is verified — no redirect, no separate page.

👥
Auto Partner Link

If a res.partner with the same email already exists (e.g. created from a booking or inquiry), the new user account is automatically linked to it — no duplicate contacts.

📞
Phone Saved to Partner

After successful signup, the verified phone number is automatically saved to the customer's res.partner record (both phone and mobile fields) so you always have a valid number on file.

🕐
Configurable Expiry

Set OTP expiry from 1 to 60 minutes in Website Settings. A scheduled cron job automatically cleans up expired OTP records every hour to keep the database lean.

🔒
Server-Side Validation

OTP is validated server-side at form submission — not just in JavaScript. Even if a user bypasses the browser UI, the server rejects the signup with an error message if the OTP is invalid.

🔁
Resend OTP

Customer can request a new OTP at any time by clicking Resend OTP. Previous codes for the same phone are automatically invalidated so only the latest code is valid.

🔌
Fully Standalone

Does not depend on any other WT module. Works alongside any Odoo module that uses the standard portal signup — salon, real estate, school, ecommerce, or custom apps.

Step-by-Step Setup Guide

Complete guide from creating your Meta App all the way to a customer receiving their OTP on WhatsApp.


1
Create a Meta Developer Account

Go to developers.facebook.com and log in with your Facebook / Meta account. Click My Apps → Create App. Select Other as the use case, then choose Business as the app type. Give your app a name (e.g. “My Odoo Notifications”) and click Create App.

2
Add WhatsApp to Your App

Inside your app dashboard, scroll down to Add Products and click Set Up next to WhatsApp. You will be taken to the WhatsApp Getting Started page. Link your app to a Meta Business Account when prompted — create one if you don't have it yet.

3
Get Your API Token & Phone Number ID

In your app, go to WhatsApp → API Setup. You will see two important values:
• Temporary access token — for testing (expires in 24 hours). For production, generate a permanent System User token from Business Settings → System Users.
• Phone Number ID — a long numeric ID shown under From.
Copy both — you will need them in Odoo Settings.

4
Add a Test Phone Number (Development Only)

During development, Meta only allows sending to verified test numbers. Go to WhatsApp → API Setup → To and click Manage phone number list. Add your mobile number and verify it with the code Meta sends. You can add up to 5 test numbers for free. In production, you must upgrade your Meta App to Live mode to message any number.

5
Create the OTP Message Template

Go to business.facebook.com → WhatsApp Manager → Message Templates → Create Template.
• Category: Authentication
• Name: phone_otp (must match the template name in Odoo Settings)
• Language: English (en_US)
• Body text example: “Your verification code is {{1}}. Valid for 10 minutes.”
The variable {{1}} will be replaced with the 6-digit OTP. Submit and wait for approval.

6
Install the Odoo Module

In Odoo, go to Apps, search for WT WhatsApp OTP and click Install. The module automatically installs Portal, Auth Signup, and Website if they are not already installed. No additional configuration of those modules is needed.

7
Configure in Website Settings

Go to Settings → Website and scroll down to the “WhatsApp OTP — Signup Verification” section.
Fill in:
• WhatsApp API Token — paste your permanent system user token.
• WhatsApp Phone Number ID — paste the numeric ID from Meta.
• OTP Template Name — default is phone_otp.
• OTP Expiry (minutes) — default is 10 minutes.
Then tick Enable WhatsApp OTP on Signup and click Save.

8
Test the Signup Flow

Open your Odoo website in an incognito window and go to /web/signup. You will see a Phone Number field has been added. Enter your number (with country code, e.g. +923001234567), click Send OTP, check WhatsApp for the 6-digit code, enter it, click Verify, and then complete the form. The Create Account button becomes active only after verification.

9
Go Live — Upgrade App to Production

Once testing is confirmed, switch your Meta App from Development to Live mode (toggle at the top of your app dashboard). Generate a permanent System User token (no expiry) from Business Settings → Users → System Users → Generate Token with the whatsapp_business_messaging permission, and update it in Odoo Website Settings. Now any phone number in the world can receive OTPs.

WhatsApp API Quick Reference

Where to find each value you need in the Meta dashboard.


🔑
API Token (Bearer)

Location: developers.facebook.com → Your App → WhatsApp → API Setup → Temporary access token
Production: Business Settings → Users → System Users → Generate Token
Required permission: whatsapp_business_messaging

📞
Phone Number ID

Location: developers.facebook.com → Your App → WhatsApp → API Setup → From section — the number below the dropdown
Format: A long numeric string e.g. 123456789012345
Note: This is NOT your actual phone number.

📋
Template Name

Location: business.facebook.com → WhatsApp Manager → Message Templates
Default name used: phone_otp
Requirements: Category = Authentication, Language = en_US, Body has exactly one variable {{1}}, Status = Approved.

Important Notes

Read these before going live.


⚠
Phone Format

Phone numbers must include the country code. The module automatically prefixes a + if missing and strips spaces and dashes. Example: 923001234567 → +923001234567. Educate your users to enter their number with country code.

🔄
Development vs Live Mode

In Meta App Development mode, OTPs can only be sent to phone numbers you have explicitly added as test numbers. Switch the app to Live mode to send OTPs to any WhatsApp user in the world.

💰
Meta Costs

Meta charges per message. Authentication template messages (OTPs) are billed at the authentication conversation rate which is lower than marketing. Check Meta's current pricing at business.facebook.com/pricing/whatsapp for your region.

🔒
Token Security

The WhatsApp API Token is stored as an Odoo system parameter (encrypted field in UI). Never share it publicly. Use a System User token (not a personal user token) in production for better security and no expiry.

🔨
Template Must Be Approved

Meta reviews every message template before it can be used. The Status must show Approved in WhatsApp Manager. If it shows Pending or Rejected, OTPs will not be sent (no error shown to user — OTP is generated but delivery fails silently).

📊
OTP Cleanup Cron

A scheduled action “WT WhatsApp OTP: Cleanup Expired OTPs” runs every hour to remove OTP records older than 1 hour. You can find and adjust it in Settings → Technical → Automation → Scheduled Actions.

90 Days Free Support

Get 90 days of free support after purchase — Meta API setup help, template approval guidance, Odoo integration questions — we've got you covered.

📩
Email Support

Respond within 24 hours on business days.

💻
Bug Fixes

All bugs reported within 90 days fixed at no charge.

📚
Setup Guide

We'll walk you through Meta App setup if needed.

Get Help


🌐
Website

Visit us at way4tech.com for documentation, demos and all our Odoo modules.

📧
Email

Send your support questions or purchase enquiries to info@way4tech.com. Include your Odoo version and module version in the subject.

💻
Custom Development

Need OTP on a custom form, SMS fallback, or a different API provider? We do custom Odoo development. Contact us at info@way4tech.com with your requirements.

WT WhatsApp OTP — Signup Verification  |  Version 19.0.1.0.0  |  By Waqas Riasat / Way4Tech  |  way4tech.com  |  info@way4tech.com

Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with