PAN to Udyam API
Send a PAN and find out whether the business is MSME-registered, with its Udyam number, class and certificate.
The documentation opens in the VerifyAll dashboard after sign-in, for accounts with approved API access. New to the API? Start with the developer guide.
Overview
What the PAN to Udyam API does
The PAN to Udyam API takes the PAN of a business or its proprietor and finds the Udyam (MSME) registration linked to it. The answer carries the Udyam number, the enterprise name, its class (Micro, Small or Medium), its major activity, its type of organisation, the dates of incorporation, commencement and registration, the district industries centre, the official address, its industries by NIC code and its plants, units and branches.
Most supplier and borrower records hold a PAN; few hold a Udyam number. This API answers the question “is this supplier an MSME?” from the identifier you already have, which is what you need to apply MSME payment timelines, report MSME dues or check eligibility for an MSME loan scheme. When a copy of the Udyam certificate is kept with the result, certificate_available is true and you can download the PDF with the result’s checkResultId.
A “no record” answer is a result in itself. Many businesses, including large companies, are not MSME-registered at all, so record_not_found can simply mean the business has no Udyam registration. The lookup ran, so it is charged like any other completed check. The check takes longer than most, usually about 15 seconds, so give it a generous client timeout.
How it works
- 1
Your server sends POST /universal/pan-to-udyam-verification with the pan, the consent object (the PAN may be a proprietor’s own) and, if you like, a client_ref.
- 2
The request is checked first: a malformed PAN or a missing consent object is refused with 400 invalid_request and a list of every problem, before anything runs or is charged.
- 3
The PAN is checked against live records and the linked Udyam registration comes back in the same call, usually within about 15 seconds.
- 4
The result is stored with a checkResultId. Read it again, find it by your client_ref, download the PAN to Udyam PDF report, and, when certificate_available is true, download the Udyam certificate from GET /check-results/{id}/certificate.
Request and response
PAN to Udyam API endpoints and fields
The main fields; the full reference with every field, error code and a cURL sample is in the dashboard docs.
| Endpoint | What it does |
|---|---|
| POST/universal/pan-to-udyam-verification | Find the Udyam registration linked to a PAN |
| GET/check-results/{id}/certificate | Download the Udyam certificate (PDF) kept with a result |
Request fields
| Field | What it is |
|---|---|
| panRequired | The PAN of the enterprise or its proprietor, 10 characters. |
| consentRequired | obtained: true and a purpose of up to 200 characters, for the person the check is about. |
| client_refOptional | Your own reference, stored with the result (up to 100 characters). |
What the answer returns
| Field | What it is |
|---|---|
| udyam_number | The Udyam registration number linked to the PAN. |
| enterprise_name | The name of the enterprise. |
| enterprise_type | Micro, Small or Medium. |
| major_activity / organisation_type | Manufacturing, Services or Trading; Proprietary, Partnership, Private Limited Company and so on. |
| social_category | Social category of the owner, as registered. |
| incorporated_on / commenced_on / registered_on | Dates of incorporation, commencement and Udyam registration, YYYY-MM-DD. |
| district_industries_centre / official_address | The district industries centre, and the official address in parts and on one line. |
| industries | NIC codes at 2, 4 and 5 digits with names, the activity type and the date each was added. |
| branches | Plants, units and branches of the enterprise, each with name and address. |
| certificate_available | True when a copy of the Udyam certificate (PDF) is kept with the result; download it with the checkResultId. |
Base URL https://api.verifyall.ai. Authenticate with the X-API-Key header (a va_sandbox_ or va_live_ key). Every answer carries data, status_code, success, message and message_code; checks add outcome, checkResultId, charged and charged_amount.
Key features
PAN to Udyam API features and capabilities
MSME status from a PAN
Find the Udyam registration from the identifier your vendor and borrower records already hold.
Udyam certificate as a PDF
When certificate_available is true, GET /check-results/{id}/certificate returns the certificate for your files. The download is free.
Branches and NIC codes
Every plant, unit and branch with its address, and the industries on record, in the same answer.
Runs in bulk too
The Bulk Verification API runs PAN to Udyam on 5 to 10,000 PANs a batch, for a full MSME status check of a vendor list.
Use cases
Where businesses use the PAN to Udyam API
MSME vendor tagging
Find which suppliers in your vendor master are MSMEs, so payment timelines and MSME dues reporting are right.
MSME loan and scheme checks
Confirm a borrower’s MSME class and activity from the PAN in its application.
Distributor and dealer onboarding
Learn a dealer’s MSME status at sign-up without asking for a certificate upload.
Supplier certificate collection
Download the Udyam certificate with the result instead of chasing suppliers for a copy.
Industries
Coverage
PANs of businesses and proprietors in India. It finds Udyam (MSME) registrations only.
Limitations to plan for
- A no-record answer may simply mean the business is not MSME-registered. It is still charged, because the lookup ran.
- It takes longer than most checks, usually about 15 seconds; set your client timeout with room to spare.
- The consent object is required, because the PAN may belong to a proprietor.
- A copy of the certificate is not always kept: check certificate_available before you request it, or the download answers 404.
Integration
How to integrate the PAN to Udyam API
From a business account to your first live call.
Step 1
Create a business account on VerifyAll and get it approved, as for running checks in the dashboard.
Step 2
Request Developer API access under Developers in the dashboard: the APIs you need, your expected monthly volume and your use case. The VerifyAll team reviews it and shares the API Services Agreement.
Step 3
Once the agreement is signed and access is approved, create your Sandbox key and build against sample data. Sandbox calls are never charged.
Step 4
Create your Production key, recharge your wallet and switch the key in your code: the endpoint and fields stay the same.
Get started
Request access to the PAN to Udyam API
Tell us what you want to verify. We reply within one business day with access steps, Sandbox details and your API pricing.
View API documentation
The full reference for PAN to Udyam API (endpoints, fields, errors, cURL) opens in the dashboard once your access is approved.
Open the docs (sign-in)Create a business account
API keys are issued to an approved business account. Sign up, then request access under Developers.
Create account
Pricing
Production calls are charged per check from your prepaid VerifyAll wallet, at your account’s API price; GST is added separately when you recharge. Sandbox calls are never charged. Your API prices are shown in the dashboard once access is approved. How pricing works
Already have a business account? Sign in to request access
PAN to Udyam API: frequently asked questions
Answers for teams planning an integration.
Still have questions? Our team is happy to help.
Contact SupportRelated APIs
Udyam Verification API
LiveInstant answerSend a Udyam registration number and confirm the enterprise, its MSME class, its activity and its units in one call.
View API detailsBulk Verification API
LiveBulk batchSend a whole list of PANs or GSTINs in one request and read back each row’s result, in the same shape as the single check.
View API detailsPAN Verification API
LiveInstant answerConfirm a PAN exists, see who holds it and match the name and date of birth your customer typed, in one call.
View API detailsGST Verification API
LiveInstant answerSend a GSTIN and get the business behind it: names, status, place of business and the returns it has filed, in one call.
View API details
All business verification (KYB) APIsRun PAN to Udyam in the dashboard, without codeBrowse the API Marketplace
Start with the PAN to Udyam API
Request access, build against the Sandbox, then go live with your Production key.
