Vietnam Business Tax Status Lookup avatar

Vietnam Business Tax Status Lookup

Pricing

$10.00 / 1,000 successful tax code results

Go to Apify Store
Vietnam Business Tax Status Lookup

Vietnam Business Tax Status Lookup

Look up the registered name and raw operating status of Vietnamese businesses by tax code (MST).

Pricing

$10.00 / 1,000 successful tax code results

Rating

0.0

(0)

Developer

Nguyen Long

Nguyen Long

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Look up the registered company name and the original operating-status text published by Vietnam's public tax portal for one or more business tax codes (MST — mã số thuế), and get the results as structured JSON, CSV, Excel, API or MCP output.

Unofficial Actor. Not affiliated with or endorsed by Vietnam's tax authority.

Features

What it does:

  • Looks up 1–50 Vietnamese business tax codes per run, sequentially and politely.
  • Returns exactly the source data the tax portal publishes: the tax code, the registered company name, and the raw status text (statusRaw).
  • Deduplicates input, validates tax-code format before any network call, and solves the portal's CAPTCHA internally — you never need a portal account or credentials.
  • Charges only for successful results (see Pricing).

What it does not do:

  • It does not classify, translate or interpret the status. statusRaw is the portal's own wording (Vietnamese), only HTML-decoded and whitespace-trimmed.
  • It does not search by company name or address, and does not return full registration records.
  • It does not add derived fields such as isOperating — no legal conclusions, no risk scores.

How to use

  1. Click Start. The prefilled example tax code runs with zero configuration.
  2. Replace the example with your own tax codes (one per line, up to 50).
  3. Click Start again and wait for the run to finish.
  4. Open the Dataset tab to view results, or export them as JSON, CSV or Excel.

Input

The only input field is taxCodes:

{
"taxCodes": ["0101234567", "0101234567-001"]
}
  • 1–50 tax codes per run.
  • Each code must be 10 digits, optionally followed by - and a 3-digit branch suffix.
  • Duplicates are removed before lookup (each unique code is looked up and charged at most once per run).
  • Invalid input fails the run before any lookup and nothing is charged.

Proxy, timeouts, retries and concurrency are internal, benchmarked product settings — they are intentionally not configurable.

Output

Each successful lookup produces exactly one dataset item with three fields:

{
"taxCode": "0110181599",
"companyName": "CÔNG TY TNHH AIEC",
"statusRaw": "NNT đang hoạt động"
}

The dataset contains successful results only. Tax codes the portal does not find, and lookups that fail technically, produce no items. Diagnostics appear in the run log and status message, never in the dataset.

Pricing

This Actor uses Apify's pay-per-event model with a single event: one tax-code-result event is charged for each successful result — pay per successful result. Platform usage (compute, proxy) is included in the event price.

You are not charged for:

  • invalid or duplicate input,
  • tax codes the portal reports as not found,
  • CAPTCHA failures, portal outages, blocks, timeouts or any technical error,
  • tax codes skipped because the run stopped early (circuit breaker, budget or spending limit).

A run that stops early keeps (and has charged) the successful items pushed so far. The terminal status message reports how many codes were pushed and charged, how many were not found or failed, and how many were not processed. When retrying a partial run, submit only the tax codes missing from the dataset — resubmitting the whole batch is a new lookup and successful codes will be charged again. Deduplication applies within a single run only.

API and integrations

  • Apify Console — run manually or on a schedule.
  • Synchronous API (run-sync-get-dataset-items) — recommended for 1–5 tax codes only; the endpoint has a 300-second HTTP timeout (the run itself continues if the connection times out).
  • Asynchronous API — recommended for 6–50 tax codes: start a run, then poll or use a webhook and fetch the dataset.

Python:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("<ACTOR_ID>").call(run_input={"taxCodes": ["0101234567"]})
items = client.dataset(run["defaultDatasetId"]).list_items().items

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('<ACTOR_ID>').call({ taxCodes: ['0101234567'] });
const { items } = await client.dataset(run.defaultDatasetId).listItems();

curl (async start):

curl -X POST "https://api.apify.com/v2/acts/<ACTOR_ID>/runs?token=<YOUR_API_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"taxCodes": ["0101234567"]}'

Make, Zapier and n8n can call the Actor through the Apify integration/app; AI agents can call it through Apify's MCP server — the output schema points them at the dataset items automatically.

FAQ and limitations

  • A code returned no item. The portal reported it as not found, or the lookup failed technically. Check the run log; you were not charged for it.
  • What if the portal is down? The Actor checks portal health before looking anything up and fails fast instead of burning retries. Runs stopped this way charge nothing new.
  • Why is there no proxy option? The network route is a benchmarked internal policy included in the price; exposing it would make costs and reliability unpredictable.
  • How fast is it? Typically well under a minute per tax code; large batches run sequentially, so a full 50-code batch can take tens of minutes. Runs have a 60-minute wall-clock limit — if reached, the run ends as partial (wall_clock_limit_reached) and keeps the results so far.
  • Batch limit is 50 codes per run. Split larger lists across runs.
  • A partial/failed run still shows charged items. That is by design — every charged item is a delivered result. Retry only the missing codes (see Pricing).

Results come from Vietnam's public tax-status lookup portal at the time of the query. Data is a point-in-time reference, not legal advice or an official certificate. The Actor stores only the three output fields in your dataset; it does not store raw HTML or CAPTCHA images, and it never asks for your credentials.

Unofficial Actor. Not affiliated with or endorsed by Vietnam's tax authority.

Support and changelog

Report problems through the Actor's Issues tab in Apify Console. See CHANGELOG.md for version history.