Check Setup Order Status


This API allows you to check the status of a mandate after a subscription has been successfully set up. Once the mandate is created and the payment is debited, you can use this API to track the corresponding order status, including whether it is successful, pending, or failed.

EnvironmentHTTP MethodAPI
SandboxGEThttps://api-preprod.phonepe.com/apis/pg-sandbox/paylinks/v1/{merchantOrderId}/status?details=[false or true]
ProductionGEThttps://api.phonepe.com/apis/pg/paylinks/v1/{merchantOrderId}/status?details=[false or true]
Request Headers
Header NameHeader Value
Content-Typeapplication/json
AuthorizationO-Bearer <merchant-auth-token>
Path Parameters
Parameter NameDataTypeMandatoryDescription
merchantOrderIdStringYesUnique orderId generated by the merchant to track the transactions.
detailsBooleanNotrue → return all attempt details under paymentDetails list
false → return only latest attempt details under paymentDetails list
Sample Response
{
    "orderId": "OMO2605172306419764430200BW",
    "state": "COMPLETED",
    "currency": "INR",
    "amount": 47900,
    "expireAt": 1781631401790,
    "paymentFlow": {
        "type": "PAYLINK",
        "paylinkUrl": "https://stg.phon.pe/xf72uqe4"
    },
    "paymentDetails": [
        {
            "transactionId": "OM2605172309216534430299BW",
            "paymentMode": "UPI_QR",
            "timestamp": 1779039562040,
            "currency": "INR",
            "amount": 47900,
            "payableCurrency": "INR",
            "payableAmount": 47900,
            "feeCurrency": "INR",
            "feeAmount": 0,
            "state": "COMPLETED",
            "splitInstruments": [
                {
                    "instrument": null,
                    "rail": null,
                    "currency": null,
                    "amount": null
                }
            ]
        }
    ],
    "subscriptionDetails": {
        "merchantSubscriptionId": "MS10000000453",
        "subscriptionId": "OMS2605172309221824430273BW",
        "state": "ACTIVE",
        "productType": "UPI_MANDATE",
        "authInstrumentType": "UPI",
        "authWorkflowType": "TRANSACTION",
        "amountType": "VARIABLE",
        "currency": "INR",
        "maxAmount": 47900,
        "frequency": "ON_DEMAND",
        "expireAt": 2725810762190,
        "pauseStartDate": null,
        "pauseEndDate": null
    }
}
Response Parameters
Field NameData TypeDescription
orderIdStringUnique internal orderId generated by PhonePe Payment Gateway.
stateStringCurrent status of the order. Expected Values:
PENDING
FAILED
COMPLETED
Expire
amountLongTotal order amount in paise.
currencyStringSpecifies the Currency used (INR)
expireAtLongorder expiry time in epoch
paymentFlow.typeStringType of payment flow.
paymentFlow.paylinkUrlStringThe URL where the customer can access the payment page and complete the transaction.
paymentDetailsListContain list of details of each payment attempt made corresponding to this order.
paymentDetails[*].paymentModeStringMode of payment. Expected Values:
UPI_INTENT
UPI_QR
paymentDetails[*].timestampLongTransaction attempt timestamp in epoch
paymentDetails[*].amountLongAmount in paisa, corresponding to payment attempt
paymentDetails[*].transactionIdStringinternal transaction id for given payment attempt
paymentDetails[*].stateStringTransaction attempt state. Expected Values:
PENDING
COMPLETED
FAILED
paymentDetails[*].errorCodeStringError code (Only present when transaction state is failed)
paymentDetails[*].detailedErrorCodeStringDetailed Error Code (Only present when transaction state is failed)
Is this article helpful?