- No Redirects, No Friction - Eliminates redirects and reduces payment failures due to drop-offs or slow network
- Single-Click OTP Experience - Provides seamless single-click experience to customers via auto-read and auto-submit functionality
Native OTP boosts SR by ~5%

Difference between Bank OTP payment and Seamless OTP payment
Please reach out to care@cashfree.com to get this feature enabled for your account
Cashfree-Hosted Checkout
Native OTP functionality is supported by default on Cashfree Checkout. Cashfree displays the Native OTP screen directly within the checkout, allowing customers to submit the OTP without redirection. Cashfree’s Native OTP is also enriched with OTP auto-read and auto-submit functionaltiy, enabling single-click OTP experience for customers
Seamless Checkout
To implement Native OTP on Seamless Checkout, merchants must build their own custom Native OTP interface and use Cashfree’s APIs to perform authentication.1
Initiate Native OTP Request
Call the Order Pay API with
"channel": "post"
to request for Native OTP flow for authentication.Native OTP Request
2
Collect OTP
If Native OTP flow is enabled, the Order Pay API response will return It’s advisable to give an option to Redirect to Bank Page on the Native OTP screen, so that in case of any issues customers can choose to complete the payment on bank’s ACS page instead. On click, redirect the user to
"action": "post"
. The merchant should then render Native OTP UI to collect the OTP and submit it on the link provided in data.url
field for authentication.Sample Response
Seamless merchants can also leverage Cashfree’s Seamless Native OTP SDK which offers customisable UI and in-built auto-read and auto-submit functionality, enabling single-click OTP experience for customers
data.redirect_to_bank
URL provided in API response.Handling API Response for Native OTP Flow
Handling API Response for Native OTP Flow
When When
channel = 'post'
is sent in Order Pay API request for Native OTP flow -- If Native OTP is supported, you’ll receive
channel = "post"
andaction = "post"
in response → Render Native OTP UI and submit OTP todata.url
; If user clicks on Redirect to Bank page, then redirect the user todata.redirect_to_bank
Sample Response
- If Native OTP is not supported, you’ll receive
channel = "post"
andaction = "link"
in response → Redirect the user todata.url
ordata.redirect_to_bank
(both will have the same URL)
Sample Response
channel = 'link'
is sent in Order Pay API request for non-Native OTP flow -- Redirect the user to
data.url
which will be the Bank ACS page or Cashfree ACS page if Cashfree ACS is enabled;data.redirect_to_bank
will not be present in this case
Sample Response
3
Submit OTP
Once merchant collects the OTP on its Native OTP screen, they can submit it to Cashfree using the Submit OTP APIAlso, give an option to Resend OTP on your Native OTP screen by calling this same API with
Submit OTP
"action": "RESEND_OTP"
Resend OTP
Cashfree ACS
For seamless merchants who prefer not to build a custom Native OTP interface, they can redirect to Cashfree’s ACS Page where customers can submit the OTP. This offers a standardised experience equipped with auto-read and auto-submit functionality for smooth payment expeirence. Call the Order Pay API Order Pay API with"channel": "link"
to request Cashfree ACS for authentication → Redirect the user to data.url
to open Cashfree ACS page. Cashfree will collect and submit the OTP for authentication.
Sample Response