UPI QR
Request Details
| Parameter Name | Data Type | Mandatory | Description |
|---|---|---|---|
merchantOrderId | String | Yes | Unique order ID generated by merchant |
amount | long | Yes | Amount of order in Paisa |
contraints | List<InstrumentConstraint> | No | Different type of constraints that must be applied to the payment |
Example :
import { CustomCheckoutClient, Env, MetaInfo, CustomCheckoutPayRequest } from '@phonepe-pg/pg-sdk-node';
import { PgPaymentRequest, PgPaymentResponse } from 'pg-sdk-node';
import { v4 as uuid } from 'uuid';
const clientId:string = "<clientId>";
const clientSecret:string = "<clientSecret>";
const clientVersion:number = 1; //insert your client version here
const env = Env.SANDBOX; //change to Env.PRODUCTION when you go live
const client = CustomCheckoutClient.getInstance(clientId, clientSecret, clientVersion, env);
const merchantOrderId = uuid();
const amount = 100;
const deviceOS = 'IOS';
const request = PgPaymentRequest.UpiQrRequestBuilder()
.amount(amount)
.deviceOS(deviceOS)
.merchantOrderId(merchantOrderId)
.build();
client.pay(request).then((response) => {
const qrData = response.qrData;
});Extract the qrData from the response received
Response Details
| Property | Type | Description |
|---|---|---|
orderId | String | Order Id created by PhonePe |
state | String | State of the order. Initially it will be PENDING. |
expireAt | Long | Order expire date in epoch |
IntentUrl | String | Intent url for the amount mentioned |
qrData | String | QR Data which will be used to generate the QR |