Redemption – Execute

This API is to debit the amount from the user’s bank account.

Host Details

EnvironmentValue
UAThttps://api-preprod.phonepe.com/apis/pg-sandbox
PRODhttps://api.phonepe.com/apis/pg

API Endpoint

/subscriptions/v2/redeem

Complete Host URL

Http Method: POST

EnvironmentValue
UAThttps://api-preprod.phonepe.com/apis/pg-sandbox/subscriptions/v2/redeem
PRODhttps://api.phonepe.com/apis/pg/subscriptions/v2/redeem

Request Details

Request Headers

Header NameHeader Value
Content-Typeapplication/json
AuthorizationO-Bearer <access_token>

Note: access_token can be generated using the Auth Token API. Refer here

Request Parameters

Parameter NameData TypeDescriptionMandatory (Yes/No)Constraints
merchantOrderIdSTRINGSame merchantOrderId passed in corresponding Notify requestYesMax Length = 63 characters
No Special characters allowed except underscore “_” and hyphen “-“

Sample Request Payload

{
    "merchantOrderId": "MO12344"
}

Sample Response

{
    "state" : "PENDING",
    "transactionId": "OM1234"
}

Response Parameters

Field NameDescription
stateOrder state.
● COMPLETED
● FAILED
● PENDING
transactionIdPhonePe generated transaction Id

Key Notes

  • If paymentFlow.redemptionRetryStrategy is passed as CUSTOM in the Redemption Notify API, then merchants has to retry the redemption until you get COMPLETED/FAILED (Terminal Status) . Maximum Time window for getting the terminal status is 48 hours and Maximum of 10 retries are allowed.
  • If paymentFlow.redemptionRetryStrategy is passed as STANDARD in the Redemption Notify API, then PhonePe will take care of the internal retires for redemption. Maximum Time window for getting the terminal status is 48 hours and these retries are handled by PhonePe internally.
  • Default Value – STANDARD