The whole process end to end: what happens to a GST number between the moment you send it and the moment a usable contact row lands back in your inbox.
Most data services begin by asking you to create an account, learn an interface and map your columns to theirs. We start from the opposite assumption: you already have a file, it is already in a shape that works for your team, and the last thing you need is a second system to maintain. Send the file, get the file back with columns appended. That is the entire user experience by design.
For teams that do want programmatic access there is an API, but it is an option rather than the default path, and nobody is required to integrate anything to become a customer.
Take an example number, 27ABCDE1234F1Z0. It is fifteen characters, and every one of them carries meaning. Understanding the structure explains why our first processing stage costs you nothing.
That final character is the useful one. Because it is derived arithmetically from everything before it, a GSTIN can be proved structurally impossible without consulting any external record at all. A number that fails its own checksum was mistyped, corrupted in an export or invented. There is no reason to charge you for processing it, so we do not.
Every row you send is checked for correct length, correct character classes in each position, and a valid check digit. Rows that fail are separated out and returned to you in the summary with the reason attached, rather than quietly dropped.
This stage routinely catches more than customers expect. The usual culprits are spreadsheet software stripping leading zeros from state codes like 07 and 08, optical character recognition misreading a scanned invoice, the letter O standing in for a zero, and copy-paste errors that truncate the final character. Finding these before processing means you can go back and correct your own source records, which is often worth more than the lookup itself.
Valid numbers are resolved against current registration records. This is where the legal name, trade name, principal place of business, constitution, taxpayer type, registration date and status come from, along with the contact fields.
Status deserves particular attention, because it is the field most customers underuse. A registration is active, cancelled or suspended, and the effective date tells you when that changed. For a sales team a cancelled registration means stop chasing the account. For a finance team it can mean something considerably more urgent about input tax credit already claimed against that counterparty. The same field carries different weight depending on which department is reading it.
This is the stage cheap lists skip, and it is precisely why their files look impressive in a demo and perform badly in a call centre. Verification here means three specific checks rather than a marketing adjective:
Anything that fails is returned as an empty cell. This is the single most important decision in how we built the service, and it is the one that costs us row count on every job. An empty cell is honest information: it tells you this registration has no usable number on record. A fabricated cell tells your caller to dial a stranger, wastes ninety seconds, and slowly erodes their confidence in every other row.
You receive your original file with the requested columns appended in the order you asked for, plus a summary. The summary reports rows submitted, structurally valid GSTINs, active registrations, rows with a phone number on record, and billed rows. That last line should reconcile exactly against your invoice, and if it does not, tell us.
Turnaround depends on how many rows you send and what is already in the queue. Small lists are quick; very large jobs are batched and scheduled across several passes. In every case we tell you the delivery window before you commit, so you are working to an agreed date rather than an optimistic guess, and if something slips we tell you before the deadline rather than after it.
Two practical suggestions from customers who get the most out of these files. First, sort by registration date before you start calling: newer registrations are often more receptive to new suppliers because their purchasing relationships are not yet fixed. Second, treat the cancelled and suspended rows as a separate work stream rather than deleting them, because for finance and compliance teams those are frequently the highest-value rows in the entire delivery.
Email a CSV or Excel file, or paste a handful of GST numbers straight into the contact form.
Structure and check digit are verified, so malformed rows are flagged with a reason rather than billed.
Valid numbers are resolved against current registration records, then contact fields are screened.
Your original file returns with columns appended and a reconcilable summary attached.
Columns appended, never reordered or dropped, so existing formulas and imports keep working.
Rows submitted, valid, active, contactable and billed - stated plainly and matching your invoice.
A short, readable note on how the data may be used, so your compliance team has something on file.
Putting the cheapest check first is not an accident. Validation costs almost nothing to run and removes rows that could never have produced a result, which means you are never billed for processing a number that was mistyped in your own system. It also produces a genuinely useful by-product: a list of the malformed GSTINs sitting in your CRM or accounting file right now, with the reason each one failed. Several customers have told us that report was worth more than the lookup, because it exposed data-entry problems that had been quietly corrupting their records for years.
We do not guess. If a registration record has no phone number, we do not substitute a switchboard number found elsewhere, a number belonging to a company with a similar name, or a number from an older file. Each of those would raise the apparent match rate and lower the real one, and the difference only becomes visible to you after you have paid and started calling.
If a delivered row contradicts something you know to be true, tell us with the GSTIN attached rather than assuming the whole file is suspect. Individual records can be stale for legitimate reasons – a status changed between our check and your reading of it, or the business amended its registration – and the fastest way to establish which is to look at the specific row. We would far rather re-check twenty numbers for you than have a customer quietly lose confidence in a file that is largely sound.
Duplicates are collapsed before processing and you are billed once per unique number, not once per row. The returned file keeps your original row structure so nothing shifts.
Yes. Tell us which of your columns to leave untouched and we will only fill genuine gaps, or deliver ours in parallel columns so you can compare before overwriting anything.
They come back in the summary with the specific reason, so you can correct them at source. They are not billed.
It is processed for your order and nothing else. We do not merge your list into a product sold to anyone else. Files are deleted once the job is delivered unless you ask us to retain them for a recurring run.
Send five GST numbers and see the exact output, including the blanks, before any money changes hands.