UpdateMerchant: Bank Details — Step 05 of 16
Adds bank account for settlements. Auto-verification is attempted.
Endpoint
PUT /api/v1/merchants/{uuid}/update
Request Body (form-data)
| Parameter | Type | Required | Validation | Description |
|---|---|---|---|---|
merchant[bank_detail][bank_account_number] | string | Yes | Numeric string | Bank account number |
merchant[bank_detail][holder_name] | string | Yes | Non-empty | Account holder name |
merchant[bank_detail][ifsc_code] | string | Yes | Regex: ^[A-Z]{4}0[A-Z0-9]{6}$ | 11-character IFSC code |
Post-Call: Check Bank Verification
Call GetMerchant (Utilities folder) to check bank_verification_status:
verified→ Skip Step 06, proceed to Step 07failed/pending→ Proceed to Step 06 (upload bank proof)
Error Handling
| Error Code | Cause | Recovery |
|---|---|---|
422 - "IFSC is invalid" | Not valid 11-char IFSC | Verify IFSC code |
422 - "Account number is invalid" | Bad format | Check account number |
Next Step
- If bank verified → Step 07 (Website Details)
- If bank NOT verified → Step 06 (Upload Bank Proof)
API path:
PUT /api/v1/merchants/{uuid}/update— use the merchantuuidfrom Step 01 in the path. (OpenAPI uses a distinct path-parameter name on this page so ReadMe can import multiple Update-Merchant step groups that share the same HTTP method and path.)
The UpdateMerchant Business Details API adds business category, sub-category, expected volume, GST, business name, and CIN where required (Step 04 of 16).
Notes:
- Prerequisites: Step 02 (entity type set); Step 03 (CKYC attempted).
- Entity applicability: All entities.
cin_numberis required for Pvt Ltd, Public Limited, and One Person Company.
HTTP Method: PUT
Environment
| URL | |
|---|---|
| Test Environment | https://test-partner.payu.in/api/v1/merchants/{uuid}/update |
| Production Environment | https://partner.payu.in/api/v1/merchants/{uuid}/update |
Sample Request
Sample request
curl --location --request PUT 'https://test-partner.payu.in/api/v1/merchants/{{uuid}}/update' \
--header 'Authorization: Bearer {{access_token}}' \
--form 'merchant[business_category]="Arts, Gifts & Stationery"' \
--form 'merchant[business_sub_category]="Art Dealers and Galleries"' \
--form 'merchant[monthly_expected_volume]="500000"' \
--form 'merchant[gst_number]="29ABCDE1234F1Z5"' \
--form 'merchant[gst_consent]="true"' \
--form 'merchant[business_name]="MERCHANT BUSINESS NAME"' \
--form 'merchant[cin_number]="U74999KA2020PTC123456"'Sample Response
Success scenario
Success scenario
{
"merchant": {
"mid": 12345678,
"business_name": "MERCHANT BUSINESS NAME",
"status": "account_created"
}
}Failure scenario
Failure scenario
- 401 Unauthorized — Token invalid or expired; call Step 00 again
{
"error": "unauthorized",
"message": "Invalid or expired token"
}- 422 Validation Failed — Request parameters failed validation
{
"error": "validation_failed",
"message": "Check the error details in the response body"
}Response parameters
Response parameters
| Parameter | Description | Example |
|---|---|---|
| merchant.mid | integer — Merchant ID | 12345678 |
| merchant.business_name | string — Updated business name | MERCHANT BUSINESS NAME |
| merchant.status | string — Current onboarding status | account_created |
Additional Request parameters Info
Header parameters
Header parameters
| Header | Description | Example |
|---|---|---|
Authorizationmandatory | string — Bearer token from Step 00 (GetToken) | Bearer {{access_token}} |
Content-Typemandatory | string — Must be multipart/form-data | multipart/form-data |
Path parameters
Path parameters
| Parameter | Description | Example |
|---|---|---|
uuidmandatory | string — Merchant UUID from Step 01 (CreateMerchant) | 11ef-d968-6b042d6c-9b94-02975f21d323 |
Body parameters
Body parameters
| Parameter | Description | Example |
|---|---|---|
merchant[business_category]mandatory | string — Business category | Arts, Gifts & Stationery |
merchant[business_sub_category]mandatory | string — Business sub-category | Art Dealers and Galleries |
merchant[monthly_expected_volume]mandatory | string — Expected monthly volume | 500000 |
merchant[gst_number]optional | string — GSTIN when available | 29ABCDE1234F1Z5 |
merchant[gst_consent]conditional | string — GST consent (true / false) | true |
merchant[business_name]mandatory | string — Legal / business name | MERCHANT BUSINESS NAME |
merchant[cin_number]conditional | string — Required for Pvt Ltd, Public Ltd, OPC | U74999KA2020PTC123456 |
400Bad Request
401Unauthorized - Invalid or expired token
403Forbidden - No access to this resource
404Not Found
422Validation Failed
500Internal Server Error
