Integrate Sandbox (developer.sandbox.co.in) into the workflow: verify PAN, Aadhaar, bank accounts, and MCA company records, and look up or verify GSTINs against the GST network. Bring your own Sandbox API key/secret, or fund calls with a stored credential or the platform-provided key.
Verifies an Indian PAN (Permanent Account Number) against the income tax department's records, returning its validity status and whether the supplied name/date of birth match.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
pan | string | Yes | PAN to verify, e.g. ABCDE1234F |
name_as_per_pan | string | No | Name to match against the PAN record |
date_of_birth | string | No | Date of birth to match, DD/MM/YYYY |
consent | string | Yes | Explicit consent to verify, 'Y' |
reason | string | Yes | Purpose of verification (min 20 characters, for audit/compliance) |
| Parameter | Type | Description |
|---|
pan | string | The PAN that was verified |
category | string | PAN holder category, e.g. individual |
status | string | 'valid' or 'invalid' |
remarks | string | Additional remarks, if any |
nameAsPerPanMatch | boolean | Whether the supplied name matched |
dateOfBirthMatch | boolean | Whether the supplied DOB matched |
aadhaarSeedingStatus | string | Aadhaar-seeding status code |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Checks whether a PAN is linked (seeded) to a given Aadhaar number.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
pan | string | Yes | PAN to check, e.g. ABCDE1234F |
aadhaar_number | string | Yes | 12-digit Aadhaar number |
consent | string | Yes | Explicit consent to check, 'Y' |
reason | string | Yes | Purpose of the check (min 20 characters, for audit/compliance) |
| Parameter | Type | Description |
|---|
aadhaarSeedingStatus | string | Seeding status code |
message | string | Human-readable status message |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Sends an OTP to the mobile number linked to an Aadhaar number, as the first step of Aadhaar OKYC verification. Sandbox marks this endpoint deprecated in favor of DigiLocker-based verification -- it still works, but consider DigiLocker for new integrations. Sends a real OTP to whoever holds the Aadhaar number: only call with a number the workflow's own user has consented to verify.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
aadhaar_number | string | Yes | 12-digit Aadhaar number to send an OTP to |
consent | string | Yes | Explicit consent to verify, 'Y' |
reason | string | Yes | Purpose of verification, for audit/compliance tracking |
| Parameter | Type | Description |
|---|
referenceId | string | Reference id to pass to the Verify OTP operation |
message | string | Status message |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Verifies the OTP sent by Aadhaar Generate OTP and returns the Aadhaar holder’s demographic details on success. Returns personal data (name, DOB, address, photo) -- handle the result as sensitive.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
reference_id | string | Yes | Reference id returned by Generate OTP |
otp | string | Yes | 6-digit OTP the user received |
| Parameter | Type | Description |
|---|
status | string | 'VALID' on success |
message | string | Status message |
name | string | Aadhaar holder name |
gender | string | Aadhaar holder gender |
dateOfBirth | string | Date of birth, DD-MM-YYYY |
yearOfBirth | string | Year of birth |
careOf | string | Care-of / guardian's name |
fullAddress | string | Full address as a single string |
address | object | Structured address |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Looks up an Indian bank branch by its IFSC code, returning the bank, branch, address, and supported payment rails (UPI/RTGS/NEFT/IMPS).
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
ifsc | string | Yes | 11-character IFSC code, e.g. HDFC0001234 |
| Parameter | Type | Description |
|---|
ifsc | string | The IFSC that was looked up |
bank | string | Bank name |
bankCode | string | Bank code |
branch | string | Branch name |
address | string | Branch address |
city | string | City |
district | string | District |
state | string | State |
centre | string | Banking centre |
contact | string | Branch contact number |
upi | boolean | Whether UPI is supported |
rtgs | boolean | Whether RTGS is supported |
neft | boolean | Whether NEFT is supported |
imps | boolean | Whether IMPS is supported |
swift | string | SWIFT code |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Verifies a bank account by depositing a small real amount (₹1) and confirming the account holder name -- this has a real financial side effect, unlike Penny-Less verification.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
ifsc | string | Yes | 11-character IFSC code of the account holder’s bank branch |
account_number | string | Yes | Bank account number to verify |
name | string | No | Expected account holder name, for a match check |
mobile | string | No | 10-digit mobile number, for a match check |
| Parameter | Type | Description |
|---|
message | string | Status message |
accountExists | boolean | Whether the account was found and verified |
nameAtBank | string | Registered account holder name |
utr | string | UTR of the ₹1 verification deposit |
amountDeposited | string | Amount deposited for verification |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Verifies a bank account and account holder name WITHOUT depositing any real money -- unlike Penny Drop, this is a pure read/verification call.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
ifsc | string | Yes | 11-character IFSC code of the account holder’s bank branch |
account_number | string | Yes | Bank account number to verify |
name | string | No | Expected account holder name, for a match check |
mobile | string | No | 10-digit mobile number, for a match check |
| Parameter | Type | Description |
|---|
message | string | Status message |
accountExists | boolean | Whether the account was found and verified |
nameAtBank | string | Registered account holder name |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Fetches a company's master data from the Ministry of Corporate Affairs registry using its CIN or LLPIN.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
cin | string | Yes | Corporate Identification Number (or LLPIN), 21 characters |
| Parameter | Type | Description |
|---|
companies | array | Company master data records (usually one entry) for the given CIN/LLPIN |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Searches the MCA company registry by CIN or a company-name prefix, useful for finding a CIN before an exact Company Master Data lookup.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
cin | string | No | Exact CIN/LLPIN to search for (mutually exclusive with company_name) |
company_name | string | No | Company name prefix to search for, min 3 characters (mutually exclusive with cin) |
limit | number | No | Results per page |
offset | number | No | Pagination offset |
| Parameter | Type | Description |
|---|
records | array | Matching companies (cin + companyName) |
limit | number | Page size used |
offset | number | Pagination offset used |
count | number | Number of records in this page |
hasMore | boolean | Whether more pages are available |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Looks up a GSTIN's full public taxpayer profile (legal/trade name, constitution, status, registration date, e-invoice status, address) from the GST network.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
gstin | string | Yes | GSTIN to look up |
| Parameter | Type | Description |
|---|
gstin | string | The GSTIN that was looked up |
legalName | string | Legal name of business |
tradeName | string | Trade name |
constitutionOfBusiness | string | e.g. Proprietorship, Private Limited |
dutyType | string | e.g. Regular, Composition |
status | string | e.g. 'Active' |
registrationDate | string | GST registration date, DD/MM/YYYY |
lastUpdatedDate | string | Last profile update date |
einvoiceStatus | string | Whether e-invoicing applies |
natureOfBusiness | array | Declared nature-of-business activities |
principalAddress | object | Principal place of business address |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Verifies whether a GSTIN is valid and active, returning basic taxpayer details (legal name, PAN, state, registration date).
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
gstin | string | Yes | GSTIN to verify |
| Parameter | Type | Description |
|---|
gstin | string | The GSTIN that was verified |
legalName | string | Legal name of business |
businessNature | string | Nature of business |
stateName | string | Registered state |
stateCode | string | GST state code |
pan | string | PAN backing the GSTIN |
validGstin | boolean | Whether the GSTIN is valid |
registrationStartDate | string | GST registration start date |
status | string | e.g. 'Active' |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Finds every GSTIN registered against a given PAN within one state, useful for discovering a business’s GST registrations before a Verify/Search GSTIN call.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
pan | string | Yes | PAN to search GSTINs for |
state_code | string | Yes | GST state code to search within, e.g. 24 for Gujarat |
| Parameter | Type | Description |
|---|
records | array | GSTIN records found for this PAN in the given state |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Lists which GST returns a GSTIN has e-filed for a financial year, with filing dates and status.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
gstin | string | Yes | GSTIN to track returns for |
financial_year | string | Yes | Financial year, e.g. 'FY 2025-26' |
gstr | string | No | Optional return type filter, e.g. 'gstr-1' |
| Parameter | Type | Description |
|---|
filings | array | E-filed returns for the requested financial year |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Gets a GSTIN's declared quarterly/monthly return-filing preference for a financial year.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
gstin | string | Yes | GSTIN to check |
financial_year | string | Yes | Financial year, e.g. 'FY 2025-26' |
| Parameter | Type | Description |
|---|
preferences | array | Per-quarter filing preference (M=Monthly, Q=Quarterly) |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Lists GSTINs that changed (generated, cancelled, updated, expired) in one state on a given day. GSTINs are returned as an MD5 hash, not plaintext, per Sandbox’s own response format.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
date | string | Yes | Date to check, DD-MM-YYYY |
state_code | string | Yes | 2-digit GST state code |
page | number | No | Page number |
| Parameter | Type | Description |
|---|
totalCount | number | Total changed GSTINs across all pages |
totalPages | number | Total pages available |
currentPage | number | Current page number |
isLastPage | boolean | Whether this is the last page |
count | number | Changed-GSTIN count on this page |
changes | array | Per-state lists of changed GSTIN hashes with change type/date |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Fetches the details of a GST-unregistered applicant (e.g. a casual taxable person) by their enrolment number.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
enrolment_number | string | Yes | Enrolment number of the unregistered applicant |
| Parameter | Type | Description |
|---|
name | string | Applicant name |
pan | string | PAN of the applicant |
state | string | State |
authStatus | string | Authorization status code |
registrationDate | string | Enrolment/registration date |
address | object | Structured address details |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
Checks whether a supplied email and/or mobile number match a GST-unregistered applicant’s enrolment record.
| Parameter | Type | Required | Description |
|---|
apiKey | string | No | Sandbox API key (x-api-key). Leave empty to use a stored credential or the platform-provided key. |
apiSecret | string | No | Sandbox API secret, exchanged for a short-lived access token. |
environment | string | No | Sandbox environment: 'test' or 'production' |
enrolment_number | string | Yes | Enrolment number of the unregistered applicant, max 15 characters |
email | string | No | Email address to match (at least one of email/mobile required) |
mobile | string | No | Mobile number to match, max 10 digits (at least one of email/mobile required) |
| Parameter | Type | Description |
|---|
enrolmentNumber | string | The enrolment number checked |
mobileMatch | string | 'matched' or 'unmatched' |
emailMatch | string | 'matched' or 'unmatched' |
cost | object | Platform-billed cost, present only when the platform-provided credential funded this call |
- Category:
tools
- Type:
sandbox