Skip to content

Use case

OTP for fintech products

Add phone and action verification through a server-side API while keeping session, authorization, risk, and anti-fraud decisions in your own system.

Quick Answer

A fintech product can use Cascade for login, recovery, and additional transaction confirmation. Successful WhatsApp or Telegram delivery costs 3 credits and a code expires after 5 minutes, but the fintech system remains responsible for transaction authorization and risk.

Summary

Cascade delivers OTP through WhatsApp and Telegram after a fintech backend request and verifies the code before the selected action continues.

Key Takeaways

  • OTP proves channel access but does not replace anti-fraud.
  • Each action needs a distinct purpose and protected server context.
  • Store the API key only in a secured backend.
  • Send and verify require strict limits and monitoring.
  • A pilot starts with 1000 credits.

Where fintech uses OTP

In a financial product, a one-time code can confirm access to a channel, but it should not independently decide whether a transaction is safe.

Journey OTP role Additional checks
Login Confirm access before session creation Device, login history, risk
Recovery Allow limited account recovery End old sessions, notify user
New beneficiary Confirm a sensitive change Recipient, amount, behavior
Payment or transfer Confirm user intent Balance, limits, anti-fraud, authorization
Detail change Confirm sensitive account updates Recent authentication and session
API-key issuance Add step-up verification Role, scope, and audit

Your system makes the final decision after all checks. Cascade handles OTP delivery and verification, not financial risk scoring.

Bind the code to an action

Do not accept a code by phone alone. Use a distinct purpose such as login, new_beneficiary, or payment_confirmation, and keep a server-side challenge bound to the exact operation.

Do not treat amount, recipient, or other parameters from the client as the source of truth. Load them from protected server state and validate them again before completion.

Server-side flow

  1. The user completes primary authentication.
  2. The backend evaluates risk and decides whether OTP is required.
  3. The server creates a limited transaction challenge.
  4. Cascade receives phone, purpose, and an available channel.
  5. The user enters the code.
  6. The backend verifies it with the same phone and purpose.
  7. After success: true, the system revalidates transaction state before execution.

This final check protects against changes to amount, recipient, or permissions between send and verify.

Channels and cost

WhatsApp and Telegram are publicly available at 3 credits per successful delivery. A new account receives 1000 starting credits. SMS is represented technically with separate post-launch pricing, but the public provider is not live.

Do not display SMS as active fallback before it is enabled. Show users only a channel that actually works.

Limits and security

Fintech flows need independent send and verify limits, controls by phone, account, IP, device, and API key, short expiration, single use, resend cooldown, neutral responses, redacted logs, anomaly alerts, and rapid key rotation.

See the OTP security and rate-limit guides for implementation details.

Audit and observability

Record request ID, internal challenge ID, purpose, technical result, timestamp, and channel. Never store a plaintext OTP or Bearer token.

Measure send, delivery, verification, and transaction completion separately. Successful delivery does not mean that a transaction was successful or safe.

Pilot plan

Start with a lower-risk journey such as test-user login. Exercise valid code, invalid code, expiration, resend, limits, and API-key revocation. Then simulate a transaction changing between send and verify.

Run an internal security review before production and define where OTP alone is insufficient.

Start a pilot · View pricing · Open the API

FAQ

Can one OTP authorize a financial transaction by itself?
OTP can be one factor, but the decision should also consider session, authorization, amount, recipient, device, and anti-fraud signals.
How should a code be bound to a transaction?
Use a distinct purpose and keep the transaction identifier and parameters in protected server-side state.
Which Cascade channels are available to fintech products?
WhatsApp and Telegram are publicly available. The public SMS provider is not live yet.