GSTIN by PAN
Business & KYBDiscover every GST registration held against a PAN.
Enter a company or proprietor PAN and get back every GSTIN registered to it, across all states. See the full footprint of a emver rather than the single registration it chose to show you.
Endpoint
Request parameters
| Field | Type | Description |
|---|---|---|
p_a_n_number
required
|
string | PAN number |
Example request
curl -X POST https://app.emver.io/api/sandbox/v1/gstin-by-pan \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"p_a_n_number": "string"
}'
import requests
response = requests.post(
"https://app.emver.io/api/sandbox/v1/gstin-by-pan",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
},
json={
"p_a_n_number": "string"
},
timeout=60,
)
response.raise_for_status()
data = response.json()
const response = await fetch("https://app.emver.io/api/sandbox/v1/gstin-by-pan", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
"Accept": "application/json",
},
body: JSON.stringify({
"p_a_n_number": "string"
}),
});
const data = await response.json();
$response = Http::withToken('YOUR_API_KEY')
->acceptJson()
->post('https://app.emver.io/api/sandbox/v1/gstin-by-pan', {
"p_a_n_number": "string"
});
$data = $response->json();
Replace YOUR_API_KEY and the placeholder values. Use the switch above to see production URLs.
Response
Structure · 200
{
"status": INTEGER,
"message": STRING,
"data": {
"p_a_n_confirmation": STRING,
"list_of_g_s_t_i_ns_with_state_and_status": STRING
}
}
Example · 200
{
"status": 200,
"message": "string",
"data": {
"p_a_n_confirmation": "string",
"list_of_g_s_t_i_ns_with_state_and_status": "string"
}
}
Error · 4xx / 5xx
{
"status": INTEGER,
"message": STRING
}
See Errors & status codes for what each status means and which calls are billed.
About this API
Businesses register for GST state by state, so a single GSTIN rarely tells the whole story. The GSTIN by PAN API lists all registrations tied to the PAN, which is how you find the branch that actually supplies you, spot cancelled registrations, or confirm that a claimed multi-state presence is real.
Procurement, credit and compliance teams use it to build the complete entity profile once, then verify each individual GSTIN with the GSTIN Verification API where needed.
Typical uses
- Enterprise vendor due diligence. Map a supplier's complete GST footprint before contracting.
- MSME lending. Verify the number and status of registrations a borrower claims.
- Multi-warehouse seller onboarding. Confirm registrations in each state a seller ships from.
- Compliance investigations. Identify related registrations during audits and fraud reviews.
Questions
- Does it work for individual PANs?
- Yes. Proprietorships register for GST under the owner's PAN, so the API lists their registrations too.
- Does it return filing details for each GSTIN?
- It returns the list with state and status. Call GSTIN Verification for any registration where you need names, emver type and filing compliance.