Submit OTP
POST
/api/pay/v1/otp/submitSubmit the OTP received on the customer's registered mobile number to validate and process the payment. This endpoint is shared between Card Payments (native OTP flow), BNPL, and Brand Wallet payment verification.
Requires
Bearer token. Get token →Request Body
| Name | Type | Description |
|---|---|---|
payment_id | stringrequired | Unique payment identifier from create payment response. |
otp | stringrequired | OTP received by the customer. |
Response
| Name | Type | Description |
|---|---|---|
status | string | OTP submission status. |
Status Codes
200 | OTP verified and payment processed successfully. |
400 | The request was malformed or missing required fields. |
422 | Unprocessable entity — incorrect OTP. |
500 | An unexpected error occurred on the server. |
503 | Service unavailable. |
Request
curl --request POST \
--url https://pluraluat.v2.pinepg.in/api/pay/v1/otp/submit \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"payment_id": "v1-250708064524-aa-Zd1J9Y-bn-a",
"otp": "123456"
}'Run this request
200 OK
{
"status": "SUCCESS"
}