Accept Payments v3

Debit is a UI based workflow to allow for Login/Registration to accept payments.

Request Headers

Header Name

Header Value

Content-Type

application/json

X-VERIFY

SHA256(base64 encoded payload + "/v3/debit" +
salt key) + ### + salt index

X-REDIRECT-URL

Dynamic redirect URI for UI callback

X-REDIRECT-MODE

HTTP mode to be used for UI callback

X-CALLBACK-URL

Dynamic callback URI for server to server callback

X-CALL-MODE

HTTP mode to be used for server to server callback

X-PROVIDER-ID

Used for the cases where the merchant has multiple merchant IDs

{  
   "merchantId":"M2306160483220675579140",
   "transactionId":"TX123456789",
   "merchantUserId":"U123456789",
   "amount":100,
   "merchantOrderId":"OD1234",
   "mobileNumber":"9xxxxxxxxx",
   "message":"payment for order placed OD1234",
   "subMerchant":"DemoMerchant",
   "email":"amit***[email protected]",
   "shortName":"Amit"
}
{
  "request": "eyAgCiAgICJtZXJjaGFudElkIjoiTTIzMDYxNjA0ODMyMjA2NzU1NzkxNDAiLAogICAidHJhbnNhY3Rpb25JZCI6IlRYMTIzNDU2Nzg5IiwKICAgIm1lcmNoYW50VXNlcklkIjoiVTEyMzQ1Njc4OSIsCiAgICJhbW91bnQiOjEwMCwKICAgIm1lcmNoYW50T3JkZXJJZCI6Ik9EMTIzNCIsCiAgICJtb2JpbGVOdW1iZXIiOiI5eHh4eHh4eHh4IiwKICAgIm1lc3NhZ2UiOiJwYXltZW50IGZvciBvcmRlciBwbGFjZWQgT0QxMjM0IiwKICAgInN1Yk1lcmNoYW50IjoiRGVtb01lcmNoYW50IiwKICAgImVtYWlsIjoiYW1pdCoqKjc1QGdtYWlsLmNvbSIsCiAgICJzaG9ydE5hbWUiOiJBbWl0Igp9"
}

Request Parameters

Parameter Name

Type

Description

Mandatory

merchantId

STRING

Unique MerchantID assigned to the merchant by PhonePe

Yes

transactionId

STRING

Unique TransactionID generated by the merchant to track request to PhonePe
transactionId length should be less than 38 characters.

Yes

merchantUserId

STRING

Unique UserID generated by merchant. This is used to pre-login users authenticated on PhonePe. Un-authenticated users are redirected to PhonePe login page. Conversions are higher when this is provided. Avoid passing email/mobile number.
Skip this for guest users.
Note:

Yes

userAuthToken

STRING

Unique userAuthTokengiven to merchant in OTP flow. This is used to pre-login users authenticated on PhonePe. If not passed users will be redirected to PhonePe login page.
Note

amount

LONG

Transaction amount in Paise

Yes

merchantOrderId

STRING

OrderID generated by the merchant
merchantOrderId length should be less than 48 characters.

No

subMerchant

STRING

.Tag to categorize merchant transaction.
Skip this field if you don't have multiple merchants tagged under one merchant id

No

mobileNumber

STRING

Mobile number of the user

No

message

STRING

Short message. This message is displayed to the user on completion of payment.

No

email

STRING

Email address of the user

No

shortName

STRING

User's name pre-filled for registration purpose.

No

Response Parameters

Parameter Name

Type

Description

success

Boolean

Success status of the request

code

Enum

See list of response codes below

shortName

String

Short message about code

Regular Debit Response Codes

Code

Description

INVALID_TRANSACTION_ID

Duplicate TransactionID

INVALID_USER_AUTH_TOKEN

The userAuthToken provided is either invalid or not mapped to merchant.

BAD_REQUEST

Invalid request payload

AUTHORIZATION_FAILED

Incorrect X-VERIFY header

INTERNAL_SERVER_ERROR

Something went wrong

🚧

1.Make sure that 'follow redirection' is disabled while calling this API.
2.This location endpoint should be appended to host to get the complete redirection URL.
3.It's recommended to have the server to server call back using x-callback-url header.

Once the transaction is complete, user will be redirected back to the merchant.

Language
Click Try It! to start a request and see the response here!