Payment Element
Implement embedded payment widget in React Native applications
The PaymentElement component from Juspay Hyperswitch renders an embedded, inline payment form directly inside your screen, instead of opening a modal payment sheet. This approach is useful for custom checkout pages where you want full control over layout and UI.
Find the Demo App
Find the demo app here
1. Basic Usage
1.1 Install the react native sdk
npm install @juspay-tech/react-native-hyperswitch
# or
yarn add @juspay-tech/react-native-hyperswitch1.1.1 Install Peer Dependencies
The SDK requires the following peer dependencies to be installed in your project:
yarn add react-native-inappbrowser-reborn
yarn add react-native-svg
yarn add @sentry/react-native
# or
npm install react-native-inappbrowser-reborn
npm install react-native-svg
npm install @sentry/react-native1.2 Initialize Hyperswitch
Initialize Hyperswitch once using your publishable key and profile ID. Reuse the same initialized instance throughout your application.
Keep the Hyperswitch secret API key on your backend only. The app should never handle it.
1.2 Get sdk_authorization from your Backend
Call your payment-creation endpoint. Its JSON response must contain sdk_authorization.
1.3 Wrap your app with HyperElements
To use HyperSwitch hooks and the Embedded UI in a React Native application, wrap your payment screen with the HyperElements component. During initialization, you must provide the required sdkAuthorization prop to HyperElements. This authorization is necessary for the SDK to initialize correctly.
1.4 Render your Payment Element
Use the Hyperswitch PaymentElement component to render an embedded payment form
1.5 Confirm from your own button:
1.6 Handle the result:
Congratulations! You have successfully integrated the Payment Element into your application.
Last updated
Was this helpful?

