The Create Merchant API creates a new merchant account on PayU and posts all KYC details. This API returns the Merchant ID (MID) in the response.
Note:After using this API to create merchants, you can use the Update Merchant API to update the merchant details. For more information, refer to Update Merchant Details API.
Authentication
This API is authorised through a client token generated using the client ID and secret. To create a token, call the get token API with refer merchant
as a scope. Refer to the Get Token API doc for more information.
Important considerations for using this API
- The mobile, PAN number, GSTIN passed in the request has to be valid as checks are performed in real-time.
- If Business Entity type is passed in the create merchant API, ensure that the PAN also belongs to the same entity.
Sample Request
curl --location 'https://uat-partner.payu.in/api/v3/merchants' \
--header 'accept: application/json' \
--header 'authorization: Bearer 74ff89df8ff4aeb3d7cb2c0297cfcb358a8c4c1d69b3980d509bf300c5e82e5f' \
--header 'content-type: application/x-www-form-urlencoded' \
--data-urlencode 'merchant[display_name]=DIVY HARESHKUMAR SHAH' \
--data-urlencode 'merchant[email][email protected]' \
--data-urlencode 'merchant[mobile]=9911100364' \
--data-urlencode 'merchant[business_details][pan]=FANPS6362D' \
--data-urlencode 'merchant[business_details][business_entity_type]=Sole Proprietorship' \
--data-urlencode 'merchant[business_details][registered_name]=DIVY HARESHKUMAR SHAH' \
--data-urlencode 'merchant[business_details][business_category]=Arts, Gifts & Stationery' \
--data-urlencode 'merchant[business_details][business_sub_category]=Art Dealers and Galleries' \
--data-urlencode 'merchant[business_details][pancard_name]=DIVY HARESHKUMAR SHAH' \
--data-urlencode 'merchant[product]=PayUbiz' \
--data-urlencode 'merchant[bank_details][account_no]=919010067278549' \
--data-urlencode 'merchant[bank_details][account_holder_name]=DIVY HARESHKUMAR SHAH' \
--data-urlencode 'merchant[bank_details][ifsc_code]=UTIB0003557' \
--data-urlencode 'merchant[website_details][website_url]=https://www.example.com' \
--data-urlencode 'merchant[monthly_expected_volume]=12000' \
--data-urlencode 'merchant[signing_authority_details][name]=DIVY HARESHKUMAR SHAH' \
--data-urlencode 'merchant[signing_authority_details][pancard_number]=FANPS6362D' \
--data-urlencode 'merchant[signing_authority_details][email][email protected]' \
--data-urlencode 'merchant[integration_type]=ThirdParty' \
--data-urlencode 'merchant[gst_number]=24FANPS6362D1ZE' \
--data-urlencode 'merchant[udyam_number]=UDYAM-UP-19-0002053' \
--data-urlencode 'merchant[gst_consent]=false'
Sample Response
Success Scenario
{
"merchant": {
"name": "DIVY HARESHKUMAR SHAH",
"email": "[email protected]",
"registered_mobile": "9916965913",
"mid": 8791796,
"product": "PayUbiz",
"business_type": "LongTail",
"business_name": null,
"pancard_name": null,
"pancard_number": null,
"website_url": null,
"android_url": null,
"ios_url": null,
"gst_number": null,
"created_at": "2025-06-26T07:16:25.000Z",
"mobile": "9916965913",
"blocked": false,
"first_name": "DIVY",
"last_name": "HARESHKUMAR SHAH",
"bank_detail": {
"bank_account_number": null,
"ifsc_code": null,
"holder_name": null,
"nodal_code": null,
"nodal_status": null
},
"operating_address": {
"address_line": null,
"city": null,
"state": null,
"pincode": null
},
"registration_address": {
"address_line": null,
"city": null,
"state": null,
"pincode": null
},
"business_entity": "Sole Proprietorship",
"status": "account_created",
"partner_source": "Create Merchant API",
"pan_verification_status": "Pending",
"website_approval_status": null,
"notification_email": "[email protected]",
"settlement_status": "Active",
"is_service_agreement_accepted": false,
"is_authorisation_letter_required": false,
"monthly_expected_volume": null,
"business_category": null,
"business_sub_category": null,
"bank_verification_status": null,
"uuid": "11f0-525d-76182ba4-954a-021ec077a271",
"penny_deposit_status": null,
"document_status": "Docs Approved",
"kyc_status": {
"status": "LOCKED",
"kyc_status": "LOCKED"
},
"agreement_status": "Approved",
"integration_type": "Not Selected",
"service_intent": "default"
}
}
Failure Scenario
Various error responses can be received when the API fails. Here are some common examples:
401 Unauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is invalid"
}
Action: Regenerate the token using the Get Token API.
422 Unprocessable Entity
{
"errors": {
"detail": [
"Merchant already exists with given PAN details or email id"
]
}
}
Action: Use a different PAN or email ID.
422 Unprocessable Entity
{
"errors": {
"detail": [
"Missing param: business_entity_id"
]
}
}
Action: Include the missing parameter in your request.
Response Parameters
merchant JSON object descriptions
Field | Description |
---|---|
name | Name of the merchant |
Email address of the merchant | |
registered_mobile | Registered mobile number of the merchant |
mid | Merchant ID generated by PayU |
product | Product type (e.g., PayUbiz) |
business_type | Type of business (e.g., LongTail) |
business_name | Name of the business |
pancard_name | Name as on PAN card |
pancard_number | PAN card number |
website_url | URL of the merchant's website |
android_url | URL of Android app |
ios_url | URL of iOS app |
gst_number | GST registration number |
created_at | Timestamp of merchant creation (ISO 8601 format) |
mobile | Contact mobile number |
blocked | Whether the merchant is blocked (true/false) |
first_name | First name of the merchant |
last_name | Last name of the merchant |
business_entity | Business entity type |
status | Current account status |
partner_source | Source of merchant creation |
pan_verification_status | Status of PAN verification |
website_approval_status | Status of website approval |
notification_email | Email for notifications |
settlement_status | Status of settlement account |
is_service_agreement_accepted | Whether service agreement is accepted |
is_authorisation_letter_required | Whether authorization letter is required |
monthly_expected_volume | Expected monthly transaction volume |
business_category | Category of business |
business_sub_category | Sub-category of business |
bank_verification_status | Status of bank verification |
uuid | Unique identifier |
penny_deposit_status | Status of penny deposit verification |
document_status | Status of document verification |
kyc_status | KYC verification status |
agreement_status | Status of agreement |
integration_type | Type of integration |
service_intent | Service intent type |
registration_address or operating_address JSON object description
Field | Description |
---|---|
address_line | Street address of the merchant |
city | City of the merchant |
state | State of the merchant |
pincode | Postal code of the merchant |
bank_detail JSON object description
Field | Description |
---|---|
bank_account_number | Bank account number of the merchant |
ifsc_code | IFSC code of the bank branch |
holder_name | Name of the account holder |
nodal_code | Nodal code (if applicable) |
nodal_status | Status of nodal account |
KYC and Document Status
The following statuses can be returned for KYC and document verification:
Status | Description |
---|---|
DOCUMENT_SUBMITTED | Documents have been submitted for verification |
VERIFIED | Documents have been verified successfully |
REJECTED | Documents have been rejected |
LOCKED | KYC process is locked (cannot be modified) |
PENDING | Documents are pending verification |
If a document is rejected, the error_message
field will contain the reason for rejection.
Note:
All timestamps are provided in ISO 8601 format (YYYY-MM-DDThh:mm:ss.sssZ).
Request parameter
Mandatory and interdependent parameters:
- The merchant display name, email, mobile, and business entity type parameters are mandatory. For the list of sample errors, refer to the Failure scenario table.
- If the PAN number is posted, PAN name must also be posted along with it. When posting bank account details, all the bank account details should be sent, i.e., account no, IFSC, account holder name.
Parameters Reference
Parameter | Reference |
---|---|
merchant[business_category] | For the list of business categories, refer to Business Category List |
merchant[business_entity_type] | For the list of business entity types, refer to Business Entity Type |
merchant[business_details][business_sub_category] | For the list of business sub-categories, refer to Business Sub-Category List |
Use the following references to get additional information: