Node.js SMS OTP Microservice Development

Job ID: 39626390

Budget: $15 – $25 CAD

We're looking for experienced freelancers to implement a critical SMS One-Time Password (OTP) functionality within our existing "Authentication" microservice. This service is essential for user authentication across our ecosystem. We'll start with Plivo as our global SMS provider and Supabase for database interactions. The microservice will be developed using JavaScript (Node.js).

A key requirement is to design the implementation to allow for the future integration of cheaper local SMS providers for specific countries without major architectural changes.

The primary tasks for this proposal include:

OTP Generation & Sending: Implement secure logic to generate and send time-sensitive OTPs via Plivo, including message customization, rate limiting, and comprehensive logging.

OTP Verification: Develop an API endpoint to verify user-submitted OTPs against those securely stored in Supabase (PostgreSQL), with attempt limiting and expiry enforcement.

Multi-Provider Architecture: Design an abstraction layer to easily integrate future local SMS providers, with flexible configuration for country-specific routing.

Error Handling & Robustness: Implement robust error handling for Plivo and Supabase interactions, including graceful fallbacks and clear logging.

Testing: Thoroughly test the end-to-end OTP process across various scenarios (success, expiry, failures, rate limiting).

This project demands rapid development, with a maximum completion time of 2 days.

Freelancers should indicate their total estimated hours for this project and their applicable hourly rate. Please submit your proposals by EOD Tuesday, July 22, 2025.