Shapefile → EUDR GeoJSON

Convert a Shapefile to TRACES-ready EUDR GeoJSON — without rejections

Forestry, cadastral and GIS teams hand over plots as a zipped Shapefile — but TRACES only accepts GeoJSON. And a Shapefile is not one file: it is several, plus a coordinate system, so the conversion has to reproject and repair, not just rename.

Fix your file — free

EUDR is mandatory for medium & large operators from 30 December 2026 — get your supplier files TRACES-ready now.

Files never leave your browser · no upload

Why a Shapefile needs more than a rename

A Shapefile is a set — .shp (shapes), .shx (index), .dbf (attributes) and crucially .prj (the coordinate reference system). Plots are often stored in a national projected grid in metres, not the WGS84 longitude/latitude degrees TRACES requires. Convert the extension without reprojecting and every plot lands in the wrong place — or fails outright.

DDSpass reads the .prj, reprojects to WGS84 decimal degrees, and repairs the geometry Shapefiles commonly carry — self-intersecting rings from machine tracing, unclosed polygons, holes — then flags anything a person must review.

Zip it, drop it, done

Put the .shp with at least its .shx, .dbf and .prj into one .zip and drop it in. You get a clean, TRACES-ready GeoJSON plus a plain-language fix report for your supplier. Cadastral and plot data is sensitive — everything runs in your browser, and the file is never uploaded.

The missing .prj is the classic failure

Open the .shp without its projection and a vertex reads something like 512340, 4318220. Nothing in the file says whether that is metres in a national grid, feet, or anything else — and it plainly is not degrees, since longitude runs −180 to 180 and latitude −90 to 90. The .prj is the only part of the bundle that answers the question.

With it present, DDSpass reprojects to WGS84 decimal degrees and you are done. Without it, the plots are flagged as a local grid to re-send rather than guessed at — and that restraint is the point, because TRACES does not check coordinate sanity. A file converted under an invented projection is accepted in full, with every plot in the wrong place and no warning anywhere.

The remedy is on the GIS side: ask for the layer re-exported with its projection file included, or exported directly in WGS84 / EPSG:4326. Both take one dialog box in QGIS or ArcGIS and remove the ambiguity for good.

Attribute names get cut to ten characters

The DBF format caps field names at ten characters, so the EUDR property names cannot survive a Shapefile round trip intact. TRACES reads an exact, case-sensitive list — ProducerName, ProducerCountry, ProductionPlace, Area — and a truncated name is not read at all:

DDSpass recovers the near misses, including plain case differences, and lists every rename in the fix report by original and final name so nothing is mapped behind your back. What it cannot resolve is reported as missing rather than guessed: a missing production place is filled with a numbered placeholder, and a missing country — or one written out as a name instead of a valid ISO2 code — is flagged for the supplier. Because the ten-character cap belongs to the format and not to your export settings, checking that rename list is part of the job.

Several layers, and the 25 MB ceiling

Forestry and cadastral handovers rarely arrive as one layer. If the zip holds several .shp files — compartments, stands, blocks — every layer is read and combined into one FeatureCollection, so nothing is quietly dropped. A zip that contains no .shp at all but several loose datasets is treated as a batch instead, and each file is checked on its own.

Cadastral and machine-traced boundaries then run into the other wall: a DDS is capped at 25 MB, and parcel edges surveyed to the centimetre carry vertex counts no farm outline needs. DDSpass first strips collinear vertices, which is lossless — a point sitting on a straight line between its neighbours describes nothing — then simplifies further while never letting total area drift more than 0.5%. If it still will not fit, you get the official split-DDS instructions, and per-producer (Type I) output to split along.

One detail specific to high-precision GIS data: the system rounds coordinates to six decimals. A boundary traced at nine decimals can have neighbouring vertices that collide once rounded and become duplicates, which is exactly the condition that turns a valid ring invalid. Those are detected and collapsed during conversion instead of riding into the declaration.

Questions

Does TRACES accept a Shapefile for EUDR?

No. The EU system only accepts GeoJSON for geolocation. A Shapefile must be converted — and reprojected to WGS84 — first.

Which files do I need in the zip?

At minimum .shp, .shx and .dbf; include the .prj so the coordinate system is known. Without a .prj, DDSpass cannot reproject reliably and flags the plots as a local grid to re-send.

Is my Shapefile uploaded anywhere?

No. It is read, reprojected and validated entirely in your browser; the file never leaves your device.

My attribute names were truncated to ten characters — does that matter?

It can. The DBF format caps field names at ten characters, so ProducerCountry comes back as ProducerCo and ProductionPlace as Production, while TRACES reads an exact, case-sensitive list of property names. DDSpass recovers the close matches automatically, lists every rename in the fix report, and flags anything it could not map rather than guessing at it.

Can the zip contain more than one shapefile?

Yes. Every .shp layer inside the zip is read and combined into a single FeatureCollection, so a handover split into compartments or blocks does not lose anything. If the zip contains no .shp at all but several loose data files — KML, Excel, GeoJSON — it is treated as a batch instead and each file is checked separately.