Pricing & Payment Component
Empower users to design custom plans and effortlessly handle payments via Stripe with this versatile component.
Component Visuals

Demo
In this video, you'll learn:
How to set up the
QuestProvider
with your API credentials.Configuration of the
Payment
component with required props.Customization options for the
Payment
component.Integration of the component into your React application.
Installation
To install the Quest react-sdk
into your project, follow these steps:
Open your terminal/command prompt.
Navigate to your project's root directory using the
cd
command if you're not already there.Run the following command to install the
quest-sdk
package using npm:
npm install @questlabs/react-sdk
This command will download and install the package and its dependencies into your project.
Props of Payment Component
The Payment
component accepts the following props
stripePublishableKey
string
required
sripe publishable key
paymentBanefits
array
required
array of plan details
userId
string
required
The unique identifier of the user.
questId
string
required
The unique identifier for the tutorial or quest
token
string
required
An authentication token or API key necessary for accessing tutorial or quest data.
description
array
required
description of plans
buttonBgColor
string
optional
The background color of the login button
inputBgColor
string
optional
The background color of the input boxes
btnTextColor
string
optional
The text color of the login button.
fontColor
string
optional
The text color of other UI elements in the component.
bgColor
string
optional
The background color of the entire component.
mainLayout
number
optional
defines number of columns of the main layout
width
string
optional
set the width of the component
uniqueUserId
string
optional
one uniqueUserId for all the user
uniqueEmailId
string
optional
one uniqueEmailId for all the user
forEntityId
string
optional
yout EntityId
Usage
To integrate the Payment
component into your React application, follow these steps
Import the CSS: In your JavaScript or TypeScript file where you're using the
Payment
, import the CSS styles for the component. This ensures that the component's styling is applied correctly.
import '@questlabs/react-sdk/dist/style.css'
Import the Payment Component: Import the
Payment
component from the@questlabs/react-sdk
package.Import the QuestProvider Component: Import the
QuestProvider
component from the@questlabs/react-sdk
package.
import { QuestProvider, Payment } from '@questlabs/react-sdk';
Pass the Required Props: Pass the required props to the
QuestProvider
. The required props areapiKey
,apiSecret
, andentityId
. and required props for thePayment
component areuserId, stripePublishableKey, token, description, paymentBanefits.
<QuestProvider
apiKey="your-api-key"
entityId="your-entity-id"
>
<Payment
tier={tiers[selectedIndex]}
desc={desc[selectedIndex]}
paymentBanefits={paymentBanefits[selectedIndex]}
bgColor={bgColor}
fontColor={fontColor}
buttonBgColor={buttonBgColor}
btnTextColor={btnTextColor}
inputBgColor={inputBgColor}
pymentGatewayLayout={pymentGatewayLayout}
userId={userId}
token={token}
forEntityId={forEntityId}
/>
</QuestProvider>
Example Usage
Here's an example of how to use the Payment
component within your React application
import { QuestProvider, Payment } from '@questlabs/react-sdk';
import '@questlabs/react-sdk/dist/style.css';
function App() {
return (
<div>
<QuestProvider
apiKey={"your apiKey"}
entityId={"your entityId"}
>
<Payment
token={"your token"}
userId={"your userId"}
btnTextColor='xxxxx'
buttonBgColor='xxxxxx'
inputBgColor='xxxxx'
fontColor='xxxx'
bgColor="xxxxx"
mainLayout={x}
pymentGatewayLayout={x}
description={[
'Basic xxxxxx-xxxxxxost-xxxxx exploration.',
'Polished xxxxxx xxxxxx xxxxxxx.',
'Cutting-edge, xxxxxxxxxxa xxxxxxxxxxxx.',
]}
paymentBanefits={xxxxx}
stripePublishableKey="xxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxx-xxxxxxxxxx"
/>
</QuestProvider>
</div>
);
}
export default App;
Last updated