VN-2000 ↔ WGS84 converter API

Convert Vietnamese VN-2000 x, y (sổ đỏ coordinates) to WGS84 lat / lon, UTM or back, with the province central meridian, parcel area and GeoJSON.

GETPOSThttps://apibox.io.vn/v1/vn-vn2000

Converts coordinates between the Vietnamese national system VN-2000 and WGS84: plane coordinates x (northing), y (easting) in the 3° transverse Mercator zone of a province (k0 = 0.9999, the system printed on land-use certificates) or 6° UTM zones, VN-2000 latitude / longitude, WGS84 latitude / longitude (GPS, Google Maps) and WGS84 UTM. The datum shift uses the official seven parameters of TT 973/2001/TT-TCĐC and QĐ 05/2007/QĐ-BTNMT (EPSG:6960); the projection uses the Krüger series, accurate to the millimetre.

Pass province (any of the 63 former provinces or the 34 current ones) and the central meridian of TT 973/2001 is used; for a merged province the response warns when its former provinces have different meridians, because cadastral records keep the meridian of the former province. Or pass meridian directly (105.75 or 105°45').

With three or more points the parcel area and perimeter are computed on the projection plane, as cadastral maps do. format=geojson returns a GeoJSON polygon ready for Google Maps or QGIS. Accuracy between datums is about 1 m: fine for maps, not for legal surveys.

Parameters

NameInTypeRequiredDefault
pointsbody|queryarrayyesPoints: array of [x, y] or [lat, lon], or one pair per line (as printed on the certificate). Single point: x + y or lat + lon.
frombody|querystringnovn2000vn2000 (plane x, y), vn2000_geo, wgs84, utm, vn2000_utm.
tobody|querystringnowgs84Target system (same values).
provincebody|querystringnoProvince for the central meridian (63 former or 34 current names).
meridianbody|querystringnoCentral meridian, e.g. 105.75 or 105°45'.
zone_widthbody|querynumberno33 (k0 0.9999) or 6 (k0 0.9996).
formatbody|querystringnojsonjson or geojson.

Example

curl -X POST "https://apibox.io.vn/v1/vn-vn2000" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"points":[[1192000,600000],[1192000,600020],[1191980,600020],[1191980,600000]],"province":"Hồ Chí Minh"}'

Response

{
  "from": "vn2000",
  "to": "wgs84",
  "meridian": "105°45'",
  "meridian_deg": 105.75,
  "zone_width": 3,
  "k0": 0.9999,
  "province": {
    "former_province": "Hồ Chí Minh",
    "province_since_2025": "Hồ Chí Minh",
    "meridian": "105°45'",
    "meridian_deg": 105.75,
    "warning": "Since 1/7/2025 Hồ Chí Minh also includes Bình Dương (105°45'), Bà Rịa - Vũng Tàu (107°45'); cadastral records keep the meridian of the former province where the parcel lies."
  },
  "count": 4,
  "points": [
    {
      "wgs84": {
        "lat": 10.77752619,
        "lon": 106.66618296
      },
      "vn2000_geo": {
        "lat": 10.77854448,
        "lon": 106.66439662
      },
      "vn2000": {
        "x": 1192000,
        "y": 600000
      },
      "result": {
        "lat": 10.77752619,
        "lon": 106.66618296
      }
    },
    {
      "wgs84": {
        "lat": 10.77752565,
        "lon": 106.66636582
      },
      "vn2000_geo": {
        "lat": 10.77854394,
        "lon": 106.66457948
      },
      "vn2000": {
        "x": 1192000,
        "y": 600020
      },
      "result": {
        "lat": 10.77752565,
        "lon": 106.66636582
      }
    }
  ],
  "polygon": {
    "area_m2": 400,
    "perimeter_m": 80,
    "plane": "VN-2000 TM 3°, meridian 105°45', k0 0.9999"
  },
  "legal": {
    "system": "VN-2000, QĐ 83/2000/QĐ-TTg",
    "projection": "TT 973/2001/TT-TCĐC (k0 0.9999 for 3° zones, 0.9996 for 6°)",
    "transform": "7 parameters of TT 973/2001 / QĐ 05/2007/QĐ-BTNMT (EPSG:6960, coordinate frame)"
  },
  "accuracy": "About 1 m between VN-2000 and WGS84 (national 7-parameter set; local parameter sets of a province can be more accurate). Not a substitute for a licensed survey in cadastral dossiers."
}

Use cases

  • Show a land plot from its certificate on Google Maps
  • Import surveyed parcels into a GIS or a real-estate app
  • Check the area printed on a land-use certificate
  • Convert GPS points to VN-2000 for a survey drawing

FAQ

Which order are x and y?

VN-2000 lists x = northing (about 1–2.6 million m) first, y = easting (about 400–700 thousand m). Swapped pairs are detected and fixed with a warning.

Which central meridian should I use?

The one of the province where the parcel lies (TT 973/2001); for merged provinces use the former province. The certificate often prints it (e.g. KTT 105°45', múi chiếu 3°).

How accurate is it?

The projection is exact to the millimetre; the national 7-parameter datum shift is accurate to about 1 m (checked against published VN-2000 / WGS84 pairs of TT 47/2025/TT-BXD).

Related APIs

Start with 1,000 free requests every month. Get free API key →