Shop & Establishment Certificate Verification

1 endpoint · Core API

What is it?

To operate various commercial establishments such as shops, hotels, restaurants, theaters, or retail stores, individuals must obtain a valid Shop Establishment License verified by the state labor department post-registration. This licensing ensures compliance with labor laws and safeguards workers' rights and conditions.

Mandatory registration under the Shop and Establishment Act applies to all businesses, including home-based operations, facilitating governance of labor rights. Our Shop Establishment License Verification API aids in preventing fraud and ensures authenticity.

Benefits

  1. Streamlined Verification: Enables quick and efficient validation of shop and establishment data.
  2. Enhanced Compliance: Helps businesses ensure compliance with labor laws and regulations.
  3. Fraud Prevention: Mitigates the risk of fraud by verifying the authenticity of shop and establishment details.
  4. Time and Cost Savings: Saves time and resources by automating the data verification process, leading to increased efficiency and reduced operational costs.

What you can do

This API validates Shop & Establishment Certificates issued by Municipal Authorities in specific regions of India (refer to below list for supported areas), ensuring accurate verification of establishment credentials.

Supported Areas (Area Codes):

  • Delhi (DL)
  • West Bengal (WB)
  • Madhya Pradesh (MP)
  • Jammu And Kashmir (JK)
  • Uttar Pradesh (UP)
  • Himachal Pradesh (HP)
  • Haryana (HR)
  • Jharkhand (JH)
  • Ranchi (RAN)
  • Gurugram (GUR)
  • Kolkata (CAL)
  • Mumbai (MUM)
  • Karnataka (KA)
  • Gujarat-Bhavnagar (GJ)
  • Telangana (TS)
POST

/api/v1/shop/verify

#

Get shop certificate verification details

docs.signcare.io/core/api/business-registration/shop-establishment-certificate-verification/#post-api-v1-shop-verify

Headers

  • X-API-KEY
    stringrequired
    Your secret API key for the environment you are calling (Stage and Live use different keys).
  • X-API-APP-ID
    stringrequired
    The App ID issued together with the key.
  • Content-Type
    stringrequired
    application/json

Body parameters

application/json
  • regNo
    stringrequired
    Required. Shop and establishment registration number, as printed on the certificate.
    minLength 1default 2017012345
  • pdfRequired
    booleanrequired
    Optional. Set to true to also receive a PDF copy of the certificate. Defaults to false when omitted.
    default true
  • areaCode
    stringoptional
    Optional. Code of the state or region that issued the certificate (for example DL for Delhi). Matching is not case-sensitive. Allowed values: DL, WB, MP, JK, UP, HP, HR, JH, RAN, GUR, CAL, MUM, KA, GJ, TS.
    nullabledefault DL
  • consent
    stringrequired
    Optional. Consent flag: Y or N (not case-sensitive). Defaults to Y when omitted; it cannot be sent empty or null.
    minLength 1pattern ^[YyNn]{1}$default Y
  • request_id
    stringoptional
    Optional. Your own unique reference for this request. A UUID is generated when omitted and returned as requestId.
    nullable
Sample request body
{ "regNo": "2017012345", "pdfRequired": true, "areaCode": "DL", "consent": "Y" }

Responses

200OK
  • success
    booleanoptional
    No description.
  • statusCode
    integer (int32)optional
    No description.
    default 200
  • message
    stringoptional
    No description.
    nullabledefault XXXXX
  • data
    objectoptional
    Response model containing shop and establishment certificate details.
    16 fields
    • category
      stringoptional
      Gets or sets the category of the establishment.
      nullable
    • status
      stringoptional
      Gets or sets the registration status.
      nullable
    • ownerName
      stringoptional
      Gets or sets the name of the shop owner.
      nullable
    • entityName
      stringoptional
      Gets or sets the registered entity or shop name.
      nullable
    • registrationDate
      stringoptional
      Gets or sets the date of registration.
      nullable
    • validTo
      stringoptional
      Gets or sets the registration validity end date.
      nullable
    • contact
      stringoptional
      Gets or sets the contact information of the establishment.
      nullable
    • commenceDate
      stringoptional
      Gets or sets the date when business commenced.
      nullable
    • totalWorkers
      stringoptional
      Gets or sets the total number of workers in the establishment.
      nullable
    • fathersNameOfOccupier
      stringoptional
      Gets or sets the father's name of the occupier.
      nullable
    • natureOfBusiness
      stringoptional
      Gets or sets the nature or type of business.
      nullable
    • address
      stringoptional
      Gets or sets the address of the establishment.
      nullable
    • validFrom
      stringoptional
      Gets or sets the registration validity start date.
      nullable
    • email
      stringoptional
      Gets or sets the email address of the establishment.
      nullable
    • websiteUrl
      stringoptional
      Gets or sets the website URL of the establishment.
      nullable
    • applicantName
      stringoptional
      Gets or sets the name of the applicant who registered the shop.
      nullable
  • messages
    array<string>optional
    No description.
    nullable
  • request_id
    stringoptional
    No description.
    nullable
  • isBillable
    booleanoptional
    Whether this request was charged: true if it was, false if not. Errors always show false. Flows that finish later (ITR Fetch, SHCIL eStamp, DigiLocker, eSign) show false here, because the charge is made when the result is ready. eSign charges each signer when they complete signing. DigiLocker deducts the credit when the link is created and refunds it automatically if the link expires before the user completes it.
Example
{ "success": false, "statusCode": 200, "message": "XXXXX", "data": { "category": "string", "status": "string", "ownerName": "string", "entityName": "string", "registrationDate": "string", "validTo": "string", "contact": "string", "commenceDate": "string", "totalWorkers": "string", "fathersNameOfOccupier": "string", "natureOfBusiness": "string", "address": "string", "validFrom": "string", "email": "string", "websiteUrl": "string", "applicantName": "string" }, "messages": [ "string" ], "request_id": "string", "isBillable": false }
400Bad Request
  • data
    objectoptional
    No description.
  • messages
    array<string>optional
    No description.
    nullable
  • request_id
    stringoptional
    No description.
    nullable
  • success
    booleanoptional
    No description.
    default false
  • message
    stringoptional
    No description.
    nullabledefault XXXXX
  • isBillable
    booleanoptional
    No description.
  • statusCode
    integer (int32)optional
    No description.
    default 400
Example
{ "data": {}, "messages": [ "string" ], "request_id": "string", "success": false, "message": "XXXXX", "isBillable": false, "statusCode": 400 }
401Unauthorized
  • data
    objectoptional
    No description.
  • messages
    array<string>optional
    No description.
    nullable
  • request_id
    stringoptional
    No description.
    nullable
  • success
    booleanoptional
    No description.
    default false
  • message
    stringoptional
    No description.
    nullabledefault XXXXX
  • isBillable
    booleanoptional
    No description.
  • statusCode
    integer (int32)optional
    No description.
    default 401
Example
{ "data": {}, "messages": [ "string" ], "request_id": "string", "success": false, "message": "XXXXX", "isBillable": false, "statusCode": 401 }
500Internal Server Error
  • data
    objectoptional
    No description.
  • messages
    array<string>optional
    No description.
    nullable
  • request_id
    stringoptional
    No description.
    nullable
  • success
    booleanoptional
    No description.
    default false
  • message
    stringoptional
    No description.
    nullabledefault XXXXX
  • isBillable
    booleanoptional
    No description.
  • statusCode
    integer (int32)optional
    No description.
    default 500
Example
{ "data": {}, "messages": [ "string" ], "request_id": "string", "success": false, "message": "XXXXX", "isBillable": false, "statusCode": 500 }
Code samplescurl · Node.js · Python
Stage: uat-ext.signcare.io
curl -X POST 'https://uat-ext.signcare.io/api/v1/shop/verify' \ -H 'X-API-KEY: YOUR_API_KEY' \ -H 'X-API-APP-ID: YOUR_APP_ID' \ -H 'Content-Type: application/json' \ -d '{ "regNo": "2017012345", "pdfRequired": true, "areaCode": "DL", "consent": "Y" }'