If the selected payment method is upi, the user has to enter the vpa in the Checkout form. You can check if the entered vpa is valid or not using the following code:
UPI Collect Flow DeprecatedAccording to NPCI guidelines, the UPI Collect flow is being deprecated effective 28 February 2026. Customers can no longer make payments or register UPI mandates by manually entering VPA/UPI id/mobile numbers.Exemptions: UPI Collect will continue to be supported for:
MCC 6012 & 6211 (IPO and secondary market transactions).
If you are an existing Razorpay user not covered by exemptions, you must migrate to UPI Intent or UPI QR code to continue accepting UPI payments. For detailed migration steps, refer to the migration documentation.
var razorpay = new Razorpay({ key: 'YOUR_KEY_ID',});razorpay.verifyVpa(vpa) .then(() => { // VPA is valid, ask the user to click Pay }) .catch(() => { // VPA is invalid, show an error to the user });
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Razorpay","colors":{"primary":"#3395FF","light":"#66B2FF","dark":"#0B62C4"},"logo":{"light":"https://mintcdn.com/razorpay-881012b3/puuu1wI-BbW3rsp2/logo/light.svg?fit=max\u0026auto=format\u0026n=puuu1wI-BbW3rsp2\u0026q=85\u0026s=e0750375ee2004193a685f9f211963fe","dark":"https://mintcdn.com/razorpay-881012b3/puuu1wI-BbW3rsp2/logo/dark.svg?fit=max\u0026auto=format\u0026n=puuu1wI-BbW3rsp2\u0026q=85\u0026s=038b180f26d19ddb4eb40ede0cf84821","href":"https://razorpay.com/docs/"},"favicon":"https://mintcdn.com/razorpay-881012b3/puuu1wI-BbW3rsp2/favicon.png?fit=max\u0026auto=format\u0026n=puuu1wI-BbW3rsp2\u0026q=85\u0026s=9bebe786d3a21e9452fd2e31243e5fb3","api":{"playground":{"display":"interactive"},"mdx":{"auth":{"method":"basic"},"server":"https://api.razorpay.com"}},"navbar":{"links":[{"href":"https://razorpay.com/support/","label":"Support"},{"href":"https://razorpay.com/blog/","label":"Blog"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.razorpay.com/"}},"footer":{"socials":{"x":"https://x.com/Razorpay","linkedin":"https://www.linkedin.com/company/razorpay","github":"https://github.com/razorpay","youtube":"https://www.youtube.com/razorpay"},"links":[{"header":"Products","items":[{"label":"Payment Gateway","href":"https://razorpay.com/payment-gateway"},{"label":"Payment Links","href":"https://razorpay.com/payment-links"},{"label":"RazorpayX","href":"https://razorpay.com/x"},{"label":"Payroll","href":"https://razorpay.com/payroll"}]},{"header":"Resources","items":[{"label":"Documentation","href":"https://razorpay.com/docs"},{"label":"API Reference","href":"https://razorpay.com/docs/api"},{"label":"Support","href":"https://razorpay.com/support"},{"label":"Blog","href":"https://razorpay.com/blog"}]},{"header":"Company","items":[{"label":"About Us","href":"https://razorpay.com/about"},{"label":"Careers","href":"https://razorpay.com/jobs"},{"label":"Pricing","href":"https://razorpay.com/pricing"}]}]},"seo":{"metatags":{"canonical":"https://razorpay.com"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"razorpay-881012b3","hasAudioNarration":false,"actualSubdomain":"razorpay-881012b3","customDomains":["razorpay.com"],"gitSource":{"type":"github","owner":"razorpay-vendor-integrations","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae6ed85dcaa81eff1cb7947","collectionId":"c753f213-3079-4ed6-8cba-a0c1e7b612c7","liveDeploymentHistoryId":"6ae6ed85dcaa81eff1cb7947","schemaVersion":"v3"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae6ed85dcaa81eff1cb7947","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"Payments","count":1644},{"language":"default","tag":"API Reference","count":774},{"language":"default","tag":"Payment Gateway","count":236},{"language":"default","tag":"Dashboard","count":213},{"language":"default","tag":"Subscriptions","count":190},{"language":"default","tag":"Payouts","count":160},{"language":"default","tag":"Payment Links","count":129},{"language":"default","tag":"Banking Plus","count":123},{"language":"default","tag":"Developer Tools","count":104},{"language":"default","tag":"Ecommerce Plugins","count":104}],"searchSettings":{"maxResults":8}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#navbar ul.sidebar-group.mt-6,ul.sidebar-group.mt-6{margin-top:1rem}[data-component-part=callout-content]>[data-as=p]:first-child strong,[data-component-part=callout-content]>[data-as=p]:first-child>strong,[data-component-part=callout-content]>strong:first-child{font-size:1.125rem!important;font-weight:700!important;line-height:1.4!important}.error-code-cards [data-component-part=card-title]{display:inline-block!important;font-family:ui-monospace,\"SF Mono\",SFMono-Regular,Menlo,Consolas,\"Liberation Mono\",monospace!important;font-size:.875rem!important;font-weight:600!important;line-height:1.3!important;padding:.25rem .75rem!important;border-radius:9999px!important;background:rgba(107,114,128,.1)!important;border:1px solid rgba(107,114,128,.25)!important}.dark .error-code-cards [data-component-part=card-title]{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.15)!important}[data-http-method]{font-weight:700!important;border-color:transparent!important}[data-http-method=get]{color:#15803d!important;background:rgba(74,222,128,.2)!important}[data-http-method=post]{color:#1d4ed8!important;background:rgba(96,165,250,.2)!important}[data-http-method=put]{color:#a16207!important;background:rgba(250,204,21,.2)!important}[data-http-method=patch]{color:#c2410c!important;background:rgba(251,146,60,.2)!important}[data-http-method=delete]{color:#b91c1c!important;background:rgba(248,113,113,.2)!important}.dark [data-http-method=get]{color:#4ade80!important}.dark [data-http-method=post]{color:#60a5fa!important}.dark [data-http-method=put]{color:#facc15!important}.dark [data-http-method=patch]{color:#fb923c!important}.dark [data-http-method=delete]{color:#f87171!important}ul.sidebar-group.mt-6{margin-top:5px}.sticky .panel:has(>.rzp-code-selector){display:grid;grid-auto-rows:minmax(0,1fr);gap:1.5rem;overflow:hidden}.sticky:has(>.panel>.rzp-code-selector)>div:not(.panel){display:none}.rzp-code-selector{position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:.125rem;border:1px solid rgba(3,7,18,.1);border-radius:1rem;background:#f4f7fa}.dark .rzp-code-selector{border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.05)}.rzp-code-selector-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex:none;flex-wrap:wrap;padding:.25rem 4.25rem .375rem .5rem}.rzp-code-selector-field{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}.rzp-code-selector-select{appearance:none;-webkit-appearance:none;min-width:max-content;padding:.125rem 1.75rem .125rem .375rem;border:0;border-radius:.5rem;background:0 0;color:var(--color-gray-600, #4b5563);font-size:.75rem;font-weight:500;line-height:1.5rem;cursor:pointer}.dark .rzp-code-selector-select{color:var(--color-gray-300, #d1d5db)}.rzp-code-selector-select:hover{background:rgba(3,7,18,.05)}.dark .rzp-code-selector-select:hover{background:rgba(255,255,255,.08)}.rzp-code-selector-chevron{position:absolute;right:.25rem;width:.875rem;height:.875rem;pointer-events:none;opacity:.6}.rzp-code-selector-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.rzp-code-selector-body>.code-block{margin:0!important;min-width:0;border-radius:0 0 .875rem .875rem;position:static!important}.rzp-code-selector-body [data-component-part=code-block-root],.rzp-code-selector::after{border-radius:0 0 .875rem .875rem}.rzp-code-selector-body .code-block-fade-overlay{display:none}.rzp-code-selector::after{content:\"\";position:absolute;inset:auto 0 0;height:2rem;pointer-events:none;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff)}.dark .rzp-code-selector::after{background:linear-gradient(to bottom,rgba(11,12,14,0),#0b0c0e)}.rzp-code-selector>.rzp-code-selector-body>.code-block>.absolute{top:.5rem;right:.75rem}"},{"filePath":"static/docs-home/hide-navbar-on-home.css","content":"html[data-page-mode=custom] header#navbar{display:none!important}html[data-page-mode=custom] .pt-\\[120px\\]{padding-top:0!important}"},{"filePath":"static/docs-home/styles.css","href":"/docs/_mintlify/custom/razorpay-881012b3/f701d0604b2ed263/static/docs-home/styles.css"}],"page":{"pagePath":"payments/payment-gateway/web-integration/custom/features/validate-vpa","slug":"/payments/payment-gateway/web-integration/custom/features/validate-vpa","pageMetadata":{"title":"Custom Web Integration - Validate VPA","description":"Validate VPA feature for Custom Web Integration.","href":"/payments/payment-gateway/web-integration/custom/features/validate-vpa","hidden":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Validate VPA feature for Custom Web Integration.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:`0.35rem 0.9rem`,border:`1px solid rgba(128,128,128,0.28)`,borderRadius:`0.5rem`,padding:`0.45rem 0.75rem`,margin:`0 0 1.25rem`,fontSize:`0.875rem`},children:[_jsx(`span`,{style:{fontWeight:600},children:`Available in`}),_jsx(`span`,{children:`🇮🇳 India`})]}),`\n`,_jsxs(_components.p,{children:[`If the selected payment method is `,_jsx(_components.code,{children:`upi`}),`, the user has to enter the `,_jsx(_components.code,{children:`vpa`}),` in the Checkout form. You can check if the entered `,_jsx(_components.code,{children:`vpa`}),` is valid or not using the following code:`]}),`\n`,_jsxs(Warning,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`UPI Collect Flow Deprecated`})}),_jsx(_components.p,{children:`According to NPCI guidelines, the UPI Collect flow is being deprecated effective 28 February 2026. Customers can no longer make payments or register UPI mandates by manually entering VPA/UPI id/mobile numbers.`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Exemptions:`}),` UPI Collect will continue to be supported for:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`MCC 6012 \u0026 6211 (IPO and secondary market transactions).`}),`\n`,_jsx(_components.li,{children:`iOS mobile app and mobile web transactions.`}),`\n`,_jsx(_components.li,{children:`UPI Mandates (execute/modify/revoke operations only)`}),`\n`,_jsx(_components.li,{children:`eRupi vouchers.`}),`\n`,_jsx(_components.li,{children:`PACB businesses (cross-border/international payments).`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Action Required:`})}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`If you are a new Razorpay user, use `,_jsx(_components.a,{href:`/payments/payment-gateway/web-integration/custom/payment-methods#intent-flow`,children:`UPI Intent`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`If you are an existing Razorpay user not covered by exemptions, you must migrate to UPI Intent or UPI QR code to continue accepting UPI payments. For detailed migration steps, refer to the `,_jsx(_components.a,{href:`/announcements/upi-collect-migration/custom-integration`,children:`migration documentation`}),`.`]}),`\n`]})]}),`\n`,_jsx(Heading,{level:`4`,id:`sample-code`,children:`Sample Code`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`var`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` razorpay`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Razorpay`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` key:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'YOUR_KEY_ID'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`razorpay`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`verifyVpa`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`vpa`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`then`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(() `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // VPA is valid, ask the user to click Pay`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` })`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`catch`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(() `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // VPA is invalid, show an error to the user`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Custom Web Integration - Validate VPA","description":"Validate VPA feature for Custom Web Integration.","href":"/payments/payment-gateway/web-integration/custom/features/validate-vpa","hidden":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Sample Code","slug":"sample-code","depth":4,"children":[]}],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/razorpay-881012b3/ccee8c0e9edccd6b/country-switcher.js","/docs/_mintlify/custom/razorpay-881012b3/ccb1482537a84031/static/docs-home/script.js","/docs/_mintlify/custom/razorpay-881012b3/e78183bdfe89167a/ga4.js"],"subdomain":"razorpay-881012b3","siteName":"Razorpay","title":"Custom Web Integration - Validate VPA - Razorpay","navMaps":{"firstHrefInVersion":{"India":{"href":"/payments/payment-gateway/web-integration/custom/features/validate-vpa","matchLevel":0},"Singapore":{"href":"/sg/home","matchLevel":4},"United States":{"href":"/us/home","matchLevel":4}},"firstHrefInLanguage":{}},"lastModified":"2026-10-08T16:37:52.095Z","originalFileLocation":"payments/payment-gateway/web-integration/custom/features/validate-vpa.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Validate VPA feature for Custom Web Integration.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Razorpay\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"noindex\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Custom Web Integration - Validate VPA - Razorpay\">\u003cmeta data-mint-head property=\"og:description\" content=\"Validate VPA feature for Custom Web Integration.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Razorpay\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://razorpay-881012b3.mintlify.app/_mintlify/api/og/v2?division=Features\u0026amp;title=Custom+Web+Integration+-+Validate+VPA\u0026amp;description=Validate+VPA+feature+for+Custom+Web+Integration.\u0026amp;theme=bb58a630b2bbead7dc77be4b\u0026amp;signature=933e34a469640d2c559d57432576b88191f1d4b2a356625d0333a786d5e6fe5a\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Custom Web Integration - Validate VPA - Razorpay\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Validate VPA feature for Custom Web Integration.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://razorpay-881012b3.mintlify.app/_mintlify/api/og/v2?division=Features\u0026amp;title=Custom+Web+Integration+-+Validate+VPA\u0026amp;description=Validate+VPA+feature+for+Custom+Web+Integration.\u0026amp;theme=bb58a630b2bbead7dc77be4b\u0026amp;signature=933e34a469640d2c559d57432576b88191f1d4b2a356625d0333a786d5e6fe5a\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/razorpay-881012b3/gWy2bjt_zV_OZ2iN/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Razorpay\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3395FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/payments/payment-gateway/web-integration/custom/features/validate-vpa.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://razorpay.com/#organization\",\"name\":\"Razorpay\",\"url\":\"https://razorpay.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/razorpay-881012b3/puuu1wI-BbW3rsp2/logo/light.svg?fit=max\u0026auto=format\u0026n=puuu1wI-BbW3rsp2\u0026q=85\u0026s=e0750375ee2004193a685f9f211963fe\"}},{\"@type\":\"WebSite\",\"@id\":\"https://razorpay.com#website\",\"name\":\"Razorpay\",\"url\":\"https://razorpay.com\",\"publisher\":{\"@id\":\"https://razorpay.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa#webpage\",\"url\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa\",\"name\":\"Custom Web Integration - Validate VPA\",\"description\":\"Validate VPA feature for Custom Web Integration.\",\"dateModified\":\"2026-10-08T16:37:52.095Z\",\"isPartOf\":{\"@id\":\"https://razorpay.com#website\"},\"breadcrumb\":{\"@id\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Features\",\"item\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Custom Web Integration - Validate VPA\",\"item\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa#article\",\"headline\":\"Custom Web Integration - Validate VPA\",\"name\":\"Custom Web Integration - Validate VPA\",\"description\":\"Validate VPA feature for Custom Web Integration.\",\"url\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa\",\"mainEntityOfPage\":{\"@id\":\"https://razorpay.com/payments/payment-gateway/web-integration/custom/features/validate-vpa#webpage\"},\"dateModified\":\"2026-10-08T16:37:52.095Z\",\"publisher\":{\"@id\":\"https://razorpay.com/#organization\"},\"isPartOf\":{\"@id\":\"https://razorpay.com#website\"}}]}\u003c/script>","siteName":"Razorpay","nav":{"global":null,"versions":[{"version":"India","default":true,"tabs":[{"tab":"Home","icon":"house","pages":[{"title":"Home","href":"/home"}]},{"tab":"Payments","icon":"credit-card","pages":[{"title":"Payments","href":"/payments"}]},{"tab":"Engage","icon":"bullhorn","pages":[{"title":"Engage","href":"/engage"}]},{"tab":"POS","icon":"cash-register","pages":[{"title":"POS","href":"/pos"}]},{"tab":"Banking Plus","icon":"building-columns","pages":[{"title":"Banking Plus","href":"/x"}]},{"tab":"Payroll","icon":"money-check-dollar","pages":[{"title":"Payroll","href":"/payroll"}]},{"tab":"Partners","icon":"handshake","pages":[{"title":"Partners","href":"/partners"}]},{"tab":"API Reference","icon":"code","pages":[{"title":"API Reference","href":"/api"}]},{"tab":"Developer Tools","icon":"screwdriver-wrench","pages":[{"title":"Developer Tools","href":"/developer-tools"}]},{"tab":"RBI Directive on Recurring Card Payments","hidden":true,"pages":[{"title":"RBI Directive on Recurring Card Payments","href":"/announcements/rbi-card-mandate-guidelines/recurring-payments"}]},{"tab":"RBI Directive on Card Payments for Subscriptions","hidden":true,"pages":[{"title":"RBI Directive on Card Payments for Subscriptions","href":"/announcements/rbi-card-mandate-guidelines/subscriptions"}]},{"tab":"Announcement Regarding TLS","hidden":true,"pages":[{"title":"Announcement Regarding TLS","href":"/announcements/tls"}]},{"tab":"Apple Pay S2S Flows","hidden":true,"pages":[{"title":"Apple Pay S2S Flows","href":"/payments/payment-methods/apple-pay/server-to-server/encrypted-token-flow"}]},{"tab":"Apple Pay S2S Integration","hidden":true,"pages":[{"title":"Apple Pay S2S Integration","href":"/payments/payment-methods/apple-pay/s2s-integration"}]},{"tab":"Bill Payments (BBPS)","hidden":true,"pages":[{"title":"Bill Payments (BBPS)","href":"/api/bills/bill-payments"}]},{"tab":"Products","hidden":true,"pages":[{"title":"Products","href":"/api/orders/products"}]},{"tab":"Terms and Conditions APIs","hidden":true,"pages":[{"title":"Terms and Conditions APIs","href":"/api/partners/terms-conditions"}]},{"tab":"Card Fingerprints (or PAR) API","hidden":true,"pages":[{"title":"Card Fingerprints (or PAR) API","href":"/api/payments/cards/fingerprints"}]},{"tab":"Complaints","hidden":true,"pages":[{"title":"Complaints","href":"/api/payments/tpap-pro/complaints-flow"}]},{"tab":"Customer Onboarding","hidden":true,"pages":[{"title":"Customer Onboarding","href":"/api/payments/tpap-pro/customer-onboarding"}]},{"tab":"Accounts Management","hidden":true,"pages":[{"title":"Accounts Management","href":"/api/payments/tpap-pro/funds-account-management"}]},{"tab":"UPI Lite","hidden":true,"pages":[{"title":"UPI Lite","href":"/api/payments/tpap-pro/fundsource-lite"}]},{"tab":"Mandates","hidden":true,"pages":[{"title":"Mandates","href":"/api/payments/tpap-pro/mandate-flow"}]},{"tab":"Payments (API)","hidden":true,"pages":[{"title":"Payments (API)","href":"/api/payments/tpap-pro/payments-flow"}]},{"tab":"UPI Number","hidden":true,"pages":[{"title":"UPI Number","href":"/api/payments/tpap-pro/upi-number"}]},{"tab":"QR Codes GST APIs","hidden":true,"pages":[{"title":"QR Codes GST APIs","href":"/api/qr-codes/gst"}]},{"tab":"QR Codes (Image Content)","hidden":true,"pages":[{"title":"QR Codes (Image Content)","href":"/api/qr-codes/image-content"}]},{"tab":"Razorpay App Store - Discover App Integrations and Extensions","hidden":true,"pages":[{"title":"Razorpay App Store - Discover App Integrations and Extensions","href":"/app-store"}]},{"tab":"Razorpay POS Error Codes and Troubleshooting","hidden":true,"pages":[{"title":"Razorpay POS Error Codes and Troubleshooting","href":"/errors/pos"}]},{"tab":"About Aggregators","hidden":true,"pages":[{"title":"About Aggregators","href":"/partners/aggregators"}]},{"tab":"COD \u0026 Magic Checkout (formerly Checkout360)","hidden":true,"pages":[{"title":"COD \u0026 Magic Checkout (formerly Checkout360)","href":"/payments/cod-magic-checkout"}]},{"tab":"Configuration","hidden":true,"pages":[{"title":"Configuration","href":"/payments/dashboard/account-settings/configuration"}]},{"tab":"Dynamic Convenience Fees","hidden":true,"pages":[{"title":"Dynamic Convenience Fees","href":"/payments/dynamic-convenience-fees"}]},{"tab":"Integrate Razorpay Payment Button with Ghost CMS","hidden":true,"pages":[{"title":"Integrate Razorpay Payment Button with Ghost CMS","href":"/payments/ecommerce-plugins/ghost-integration"}]},{"tab":"About Insights","hidden":true,"pages":[{"title":"About Insights","href":"/payments/insights"}]},{"tab":"Integrate With Razorpay Import Flow - Custom Integration","hidden":true,"pages":[{"title":"Integrate With Razorpay Import Flow - Custom Integration","href":"/payments/international-payments/accept-international-payments-from-indian-customers/custom-integration"}]},{"tab":"About Razorpay Import Flow Web Standard Integration (Payments)","hidden":true,"pages":[{"title":"About Razorpay Import Flow Web Standard Integration (Payments)","href":"/payments/international-payments/accept-international-payments-from-indian-customers/import-flow/standard-integration"}]},{"tab":"Integrate With Razorpay Import Flow - S2S Integration","hidden":true,"pages":[{"title":"Integrate With Razorpay Import Flow - S2S Integration","href":"/payments/international-payments/accept-international-payments-from-indian-customers/s2s-integration"}]},{"tab":"About Razorpay Import Flow Web Standard Integration (International Payments)","hidden":true,"pages":[{"title":"About Razorpay Import Flow Web Standard Integration (International Payments)","href":"/payments/international-payments/accept-international-payments-from-indian-customers/standard-integration"}]},{"tab":"Outward Remittances for Education and Travel Payments","hidden":true,"pages":[{"title":"Outward Remittances for Education and Travel Payments","href":"/payments/international-payments/outward-remittances"}]},{"tab":"Risk Analytics Dashboard","hidden":true,"pages":[{"title":"Risk Analytics Dashboard","href":"/payments/international-payments/risk-visibility-dashboard"}]},{"tab":"Magic Checkout APIs","hidden":true,"pages":[{"title":"Magic Checkout APIs","href":"/payments/magic-checkout/apis"}]},{"tab":"RTO Intelligence","hidden":true,"pages":[{"title":"RTO Intelligence","href":"/payments/magic-checkout/rto-intelligence"}]},{"tab":"Integrate With Android Custom SDK","hidden":true,"pages":[{"title":"Integrate With Android Custom SDK","href":"/payments/payment-gateway/android-integration/custom"}]},{"tab":"Prerequisites (Payments)","hidden":true,"pages":[{"title":"Prerequisites (Payments)","href":"/payments/payment-gateway/ecommerce-plugins/shopify-razorpay-secure"}]},{"tab":"Eligibility Check API","hidden":true,"pages":[{"title":"Eligibility Check API","href":"/payments/payment-gateway/emi²/eligibility-check"}]},{"tab":"Integrate With Flutter Custom SDK","hidden":true,"pages":[{"title":"Integrate With Flutter Custom SDK","href":"/payments/payment-gateway/flutter-integration/custom"}]},{"tab":"Integrate With iOS Custom SDK","hidden":true,"pages":[{"title":"Integrate With iOS Custom SDK","href":"/payments/payment-gateway/ios-integration/custom"}]},{"tab":"Handle Payment Exceptions with Rainy Day Kit","hidden":true,"pages":[{"title":"Handle Payment Exceptions with Rainy Day Kit","href":"/payments/payment-gateway/rainy-day"}]},{"tab":"Integrate With React Native Custom SDK","hidden":true,"pages":[{"title":"Integrate With React Native Custom SDK","href":"/payments/payment-gateway/react-native-integration/custom"}]},{"tab":"Server-to-Server Integration","hidden":true,"pages":[{"title":"Server-to-Server Integration","href":"/payments/payment-gateway/s2s-integration"}]},{"tab":"Web Integration - Razorpay Custom Checkout","hidden":true,"pages":[{"title":"1. Build Integration","description":"Steps to integrate the Custom Checkout form on your website.","href":"/payments/payment-gateway/web-integration/custom/build-integration"},{"title":"2. Test Integration","description":"Steps to test if the custom Web integration was successful.","href":"/payments/payment-gateway/web-integration/custom/test-integration"},{"title":"3. Go-live Checklist","description":"Check the go-live checklist for Razorpay Payment Gateway Custom Web integration.","href":"/payments/payment-gateway/web-integration/custom/go-live-checklist"},{"title":"Best Practices","description":"Best practices you must follow for smoother integration and payment experience.","href":"/payments/payment-gateway/web-integration/custom/best-practices"},{"title":"Troubleshooting \u0026 FAQs","description":"Troubleshoot common errors and find answers to frequently asked questions related to Razorpay Web Custom Checkout Integration.","href":"/payments/payment-gateway/web-integration/custom/troubleshooting-faqs"},{"group":"Additional Options","pages":[{"title":"Additional Support for Payment Methods","description":"Check the various form fields you can use in the Checkout Form used in Razorpay Checkout integrations.","href":"/payments/payment-gateway/web-integration/custom/payment-methods"},{"title":"Input Restriction in Custom Fields","description":"Add custom fields and implement input restriction methods in your Custom Checkout Form.","href":"/payments/payment-gateway/web-integration/custom/input-restriction"}]},{"group":"Features","root":{"title":"Features","description":"List of features that will help you build a first-class payments experience with Razorpay Custom Checkout.","href":"/payments/payment-gateway/web-integration/custom/features"},"pages":[{"title":"Native OTP","description":"Integrate the Razorpay Native OTP feature with Custom Checkout to combat customer payment issues such as payment failures due to low internet speeds and bank page redirects.","href":"/payments/payment-gateway/web-integration/custom/features/native-otp"},{"title":"Enable Guest Checkout Payments With Alt ID","description":"Use Razorpay Alt ID feature and comply with RBI guidelines for guest checkout payments.","href":"/payments/payment-gateway/web-integration/custom/features/alt-id-checkout"},{"group":"Saved Cards","pages":[{"title":"Save Customer Card Details as Network Tokens","description":"Securely store the customer's card details as network tokens, which can be used for repeat transactions made by the customer.","href":"/payments/payment-gateway/web-integration/custom/features/saved-cards"},{"title":"CVV-less Flow for Card Payments","description":"Save customer card details as tokens and enable CVV-less payment flows for customers via Razorpay.","href":"/payments/payment-gateway/web-integration/custom/features/cvv-less-flow"},{"group":"Integration Steps","pages":[{"title":"Business Seeks Customer Consent, Saves Card Details With Razorpay","description":"Procedure to follow if you plan to collect customer consent on your UI.","href":"/payments/payment-gateway/web-integration/custom/features/saved-cards/scenario-1"},{"title":"Razorpay Seeks Customer Consent on Behalf of Business","description":"Procedure to follow if you want Razorpay to collect customer consent.","href":"/payments/payment-gateway/web-integration/custom/features/saved-cards/scenario-2"},{"title":"Business Seeks Consent from Some Customers Only","description":"Procedure to follow if you are not able to collect consent from all customers.","href":"/payments/payment-gateway/web-integration/custom/features/saved-cards/scenario-3"}]}]},{"title":"Custom Web Integration - Validate VPA","href":"/payments/payment-gateway/web-integration/custom/features/validate-vpa"},{"title":"Saved VPA","description":"Check the Saved VPA feature for Custom Web Integration.","href":"/payments/payment-gateway/web-integration/custom/features/saved-vpa"},{"group":"Webview for Mobile Apps","pages":[{"title":"About Webview for Mobile Apps","description":"Reuse web integration code to accept payments via WebView on your Android and iOS mobile apps.","href":"/payments/payment-gateway/web-integration/custom/features/webview"},{"title":"UPI Intent in WebView - Android","description":"Enable UPI Intent in WebView on your Android app.","href":"/payments/payment-gateway/web-integration/custom/features/webview/upi-intent-android"},{"title":"UPI Intent in WebView - iOS","description":"Enable UPI Intent in WebView on your iOS app.","href":"/payments/payment-gateway/web-integration/custom/features/webview/upi-intent-ios"}]},{"title":"Create Async Payment","description":"Create Async Payments for Custom Web Integration.","href":"/payments/payment-gateway/web-integration/custom/features/async-payments"},{"title":"Custom Web Integration - Bring a Popup to the Front","description":"Display a pop-up as a visual reminder to the customer indicating that the payment is in progress.","href":"/payments/payment-gateway/web-integration/custom/features/pop-up"},{"title":"Check CRED Eligibility","description":"Check if the user is eligible for CRED Pay using the Check CRED Eligibility API.","href":"/payments/payment-gateway/web-integration/custom/features/check-cred-eligibility"}]}]},{"tab":"PhonePe Switch Integration","hidden":true,"pages":[{"title":"PhonePe Switch Integration","href":"/payments/payment-gateway/web-integration/custom/phonepe-switch"}]},{"tab":"UPI Intent on Mobile Web","hidden":true,"pages":[{"title":"UPI Intent on Mobile Web","href":"/payments/payment-gateway/web-integration/custom/payment-methods/upi-intent-mweb"}]},{"tab":"Save customer card details on Custom Checkout","hidden":true,"pages":[{"title":"Save customer card details on Custom Checkout","href":"/payments/payment-gateway/web-integration/custom/features/saved-cards-old"}]},{"tab":"Prerequisites (Payment Gateway)","hidden":true,"pages":[{"title":"Prerequisites (Payment Gateway)","href":"/payments/payment-gateway/web-integration/hosted"}]},{"tab":"Chargeback on Custom Checkout","hidden":true,"pages":[{"title":"Chargeback on Custom Checkout","href":"/payments/payment-gateway/web-integration/custom/chargeback"}]},{"tab":"Web Integration - Razorpay Standard Checkout","hidden":true,"pages":[{"title":"Web Integration - Razorpay Standard Checkout","href":"/payments/payment-gateway/web-integration/standard/chargeback"}]},{"tab":"Standard Web Integration - Configurability of Payment Methods","hidden":true,"pages":[{"title":"Standard Web Integration - Configurability of Payment Methods","href":"/payments/payment-gateway/web-integration/standard/configure-restrict-payment-methods"}]},{"tab":"About Webview for Mobile Apps","hidden":true,"pages":[{"title":"About Webview for Mobile Apps","href":"/payments/payment-gateway/web-integration/standard/webview"}]},{"tab":"Alipay","hidden":true,"pages":[{"title":"Alipay","href":"/payments/payment-methods/alipay"}]},{"tab":"Pay with Reward Points","hidden":true,"pages":[{"title":"Pay with Reward Points","href":"/payments/payment-methods/apps/reward-points"}]},{"tab":"BharatQR","hidden":true,"pages":[{"title":"BharatQR","href":"/payments/payment-methods/bharatqr"}]},{"tab":"Authentication Type for Cards - Native OTP","hidden":true,"pages":[{"title":"Authentication Type for Cards - Native OTP","href":"/payments/payment-methods/cards/authentication/native-otp"}]},{"tab":"Dynamic Currency Conversion","hidden":true,"pages":[{"title":"Dynamic Currency Conversion","href":"/payments/payment-methods/cards/dynamic-currency-conversion"}]},{"tab":"Google Pay Card Payments","hidden":true,"pages":[{"title":"Google Pay Card Payments","href":"/payments/payment-methods/cards/google-pay"}]},{"tab":"Tokenisation FAQs","hidden":true,"pages":[{"title":"Tokenisation FAQs","href":"/payments/payment-methods/cards/token-hq"}]},{"tab":"DOKU, OVO, and LinkAja","hidden":true,"pages":[{"title":"DOKU, OVO, and LinkAja","href":"/payments/payment-methods/doku-ovo-linkaja"}]},{"tab":"eCOD","hidden":true,"pages":[{"title":"eCOD","href":"/payments/payment-methods/ecod"}]},{"tab":"About Instant EMI Cardless","hidden":true,"pages":[{"title":"About Instant EMI Cardless","href":"/payments/payment-methods/emi/cardless-emi/instant-emi"}]},{"tab":"International Payments - Giropay","hidden":true,"pages":[{"title":"International Payments - Giropay","href":"/payments/payment-methods/giropay"}]},{"tab":"GoPay","hidden":true,"pages":[{"title":"GoPay","href":"/payments/payment-methods/gopay"}]},{"tab":"GrabPay (Malaysia)","hidden":true,"pages":[{"title":"GrabPay (Malaysia)","href":"/payments/payment-methods/grabpay-my"}]},{"tab":"GrabPay (Singapore)","hidden":true,"pages":[{"title":"GrabPay (Singapore)","href":"/payments/payment-methods/grabpay-sg"}]},{"tab":"Klarna","hidden":true,"pages":[{"title":"Klarna","href":"/payments/payment-methods/klarna"}]},{"tab":"International Payments - POLi","hidden":true,"pages":[{"title":"International Payments - POLi","href":"/payments/payment-methods/poli"}]},{"tab":"International Payments - Sofort","hidden":true,"pages":[{"title":"International Payments - Sofort","href":"/payments/payment-methods/sofort"}]},{"tab":"International Payments - Trustly","hidden":true,"pages":[{"title":"International Payments - Trustly","href":"/payments/payment-methods/trustly"}]},{"tab":"UPI QR Code","hidden":true,"pages":[{"title":"UPI QR Code","href":"/payments/payment-methods/upi-qr"}]},{"tab":"Google Spot Platform Integration","hidden":true,"pages":[{"title":"Google Spot Platform Integration","href":"/payments/payment-methods/upi/google-pay/spot-platform-integration"}]},{"tab":"Send GST information in UPI transaction flows","hidden":true,"pages":[{"title":"Send GST information in UPI transaction flows","href":"/payments/payment-methods/upi/gst-on-upi"}]},{"tab":"Zip","hidden":true,"pages":[{"title":"Zip","href":"/payments/payment-methods/zip"}]},{"tab":"Track Payments Using Google Tracking ID and Facebook Pixel","hidden":true,"pages":[{"title":"Track Payments Using Google Tracking ID and Facebook Pixel","href":"/payments/payment-pages/plugins-add-ons"}]},{"tab":"Recurring Payments","hidden":true,"pages":[{"title":"Recurring Payments","href":"/payments/recurring-payments"}]},{"tab":"Account Code","hidden":true,"pages":[{"title":"Account Code","href":"/payments/route/account-code"}]},{"tab":"Direct Settlements","hidden":true,"pages":[{"title":"Direct Settlements","href":"/payments/settlements/direct"}]},{"tab":"Update Expiry Date for an Individual Customer Identifier","hidden":true,"pages":[{"title":"Update Expiry Date for an Individual Customer Identifier","href":"/payments/smart-collect/update-expiry"}]},{"tab":"Razorpay Smart Collect","hidden":true,"pages":[{"title":"Razorpay Smart Collect","href":"/payments/smart-collect/va-vpa-qr"}]},{"tab":"Third-Party Validation (TPV) - Custom Integration","hidden":true,"pages":[{"title":"Third-Party Validation (TPV) - Custom Integration","href":"/payments/third-party-validation/custom-integration"}]},{"tab":"Third-Party Validation (TPV) - S2S Integration","hidden":true,"pages":[{"title":"Third-Party Validation (TPV) - S2S Integration","href":"/payments/third-party-validation/s2s-integration"}]},{"tab":"About TPAP Pro","hidden":true,"pages":[{"title":"About TPAP Pro","href":"/payments/tpap-pro"}]},{"tab":"Razorpay White Label Wallet","hidden":true,"pages":[{"title":"Razorpay White Label Wallet","href":"/payments/wallet"}]},{"tab":"Integrate with HRMS Software","hidden":true,"pages":[{"title":"Integrate with HRMS Software","href":"/payroll/integrations/hrms"}]},{"tab":"Custom Payroll \u0026 Attendance Cycle","hidden":true,"pages":[{"title":"Custom Payroll \u0026 Attendance Cycle","href":"/payroll/quickstart/custom-cycle"}]},{"tab":"FnF Hold Salary Pay Compliance","hidden":true,"pages":[{"title":"FnF Hold Salary Pay Compliance","href":"/payroll/run-payroll/fnf"}]},{"tab":"Testing SSR","hidden":true,"pages":[{"title":"Testing SSR","href":"/test-ssr"}]},{"tab":"Sub-Merchant Onboarding Webhooks - Sample Payload","hidden":true,"pages":[{"title":"Sub-Merchant Onboarding Webhooks - Sample Payload","href":"/webhooks/partners"}]},{"tab":"Integrate Tally","hidden":true,"pages":[{"title":"Integrate Tally","href":"/x/accounting/tally"}]},{"tab":"About Razorpay Capital","hidden":true,"pages":[{"title":"About Razorpay Capital","href":"/x/capital/cards-kyc"}]}]},{"version":"Singapore","pages":[{"title":"Singapore","href":"/sg/home"}]},{"version":"United States","pages":[{"title":"United States","href":"/us/home"}]},{"version":"Malaysia","href":"https://curlec.np.razorpay.in/docs"}]},"basePath":"","title":"Custom Web Integration - Validate VPA - Razorpay","buildId":"dpl_6cCEiK8XNNvaLBBkWzcBhdE9QfLC","deploymentId":"dpl_6cCEiK8XNNvaLBBkWzcBhdE9QfLC","dynamics":[],"chunks":[]}