CIIFragments Studio is CII-accredited: recover up to 20% of your software development spendLearn more

API integration for DVF & cadastre

We build your DVF and cadastre connector

We wire real sales (DVF+) and the cadastral fabric into your property or planning tool. Paris is queried with arrondissement codes, not 75056. wxs.ign.fr no longer resolves: the target is data.geopf.fr.

  • Senior product team
  • public-data connectors in production
  • from scoping to monitoring
In short

What do the DVF and cadastral APIs provide and how can they be integrated into a property application?

The Demandes de Valeurs Foncières (DVF) data records all French property transactions since 2014: price, floor area, property type, municipality. The cadastral APIs give access to land parcels and buildings with their geometries. You integrate them into property valuation tools, land prospecting tools or market analysis applications to display the transaction history around a property, value a plot, or feed a simulation tool. This data is public and free; the integration work involves choosing the right sources for the use case and keeping the feed up to date.

Use cases

What our clients build on DVF and cadastre

01

A price range in an appraisal tool

Mutations filtered to sales and property type, on the municipality or arrondissement, not a national average.

02

A parcel record

API Carto outline (idu) and DVF+ history for the section, for a notary, a planner or a lender.

03

A municipal sales observatory

Open data for a local authority. Nominative land study is DV3F, and only if you are authorised.

04

A cadastral base map in business software

Vector PCI or Parcellaire Express WFS for farming, networks, easements. No more TIFF from December 2025.

For you

What it changes in your property tool

Engineering in service of a measurable outcome: sales in the municipality, the right INSEE code, up-to-date official sources.

The right municipality code, including Paris

Paris, Lyon, Marseille: we query the arrondissement, not the city-wide code. Otherwise sales drop to zero.

Dead Géoportail URLs are avoided

Legacy IGN hosts no longer answer. We target current official entry points, not a 2019 tutorial.

We talk to official sources

No scrape of a consumer app, no dead community API. Cerema and open files: a stack that holds.

Coverage gaps are shown

Alsace-Moselle, Mayotte: a France-wide product says so. A DVF row is not a clean price per sqm.

Method

How we ship your DVF and cadastre connector

01

Scoping

DVF files, DVF+ API, point cadastre or base map, authorised DV3F or not. We split open data and restricted before writing a line.

02

Development

Municipality / arrondissement table, Géoplateforme URL in config, zero wxs.ign.fr, long cache, DGFiP / Cerema / IGN attribution.

03

Acceptance testing

Automated tests for Paris, Lyon, Marseille, an Alsace municipality (absence expected), 75056 = 0, 75111 > 0.

04

Monitoring

Alert if Cerema preprod drops (fallback to the local extract), PCI millésime, Géoplateforme DNS. You see a Paris 0 before the client does.

The API

What DVF and cadastre allow

DVF+ mutations
Cerema API, millésime 2026.1, transactions 2014-2025. Deeper than Etalab's 5 years. Free access for DVF+.
DGFiP DVF files
Twice-yearly source of truth (April, October), rolling 5 years, France + overseas except Alsace, Moselle, Mayotte. Each delivery replaces the previous one.
API Carto cadastre
Municipality, division, parcel, locator, GeoJSON WGS84. Point lookup from a form, not a municipal dump.
Géoplateforme WFS and PCI
data.geopf.fr/wfs, Parcellaire Express layer. Vector PCI files, 2026 millésimes. 5,000 features per WFS request: a naive dump truncates.
Glossary

The vocabulary of DVF and cadastre

code_insee 75111, not 75056
In Paris, Lyon, Marseille, DVF+ sales sit on municipal arrondissements (75101…75120). 75056 is Paris's municipal INSEE code: the Cerema API returned 0 mutations there.
DVF+
Cerema / DGALN open data, deeper than Etalab's 5 years (2014-2025 at millésime 2026.1). This is not DV3F.
DV3F
Buyers, sellers, context (build after sale). Restricted: State, local authorities, EPF, SAFER. Not sellable to a private developer as open data.
idu
Parcel identifier on API Carto. The key to attach a property to an outline, a local plan, a round.
Géoplateforme
data.geopf.fr, successor to Géoportail. wxs.ign.fr: dead DNS. Any QGIS stack or script still on the old host is already broken.
Vector PCI
Digitised cadastral plan, millésimes 1 March and 1 June 2026. PCI Image TIFF: no more deliveries from December 2025. Strasbourg and neighbours outside PCI.
Good to know

The real constraints of DVF and cadastre

01

The « obvious » INSEE code breaks Paris

75056 → 0 mutations. 75111 → 39,604. Same logic as the Etalab app (Paris 14th = 75114, not 75014). A connector that sends the « obvious » municipal code without an arrondissement table is wrong.

02

wxs.ign.fr no longer resolves

DNS failure in August 2026. ogr2ogr excerpts in data.gouv guides are stale. Géoplateforme URL in configuration, zero historical host hard-coded.

03

preprod in the Cerema URL

That is the host that answers in 2026. The name is a risk signal (SLA, cutover). We do not hard-code it: configuration, and a fallback to the local extract.

04

A DVF row is not a price per m²

Lots, off-plan, land + building, multiple sales. DVF+ helps (nbpar, nblocmut, codtypbien) but the raw-price trap remains. Alsace-Moselle / Mayotte: missing, to be displayed.

File or API

DGFiP DVF files or Cerema DVF+ API?

Two ways into sales. The right product combines them, it does not pick one at random.

CriterionDVF filesDGFiP sourceDVF+ APICerema, interactive
ShapeTwice-yearly .txt.zip filesJSON / GeoJSON API
DepthRolling 5 yearsSince 2014 (millésime 2026.1)
ParisArrondissements in the filearrondissement code_insee, not 75056
CadenceApril and October, full replaceQuery by municipality / parcel
Alsace-Moselle / MayotteMissingMissing from DGFiP DVF
2026 hostdata.gouv.frapidf-preprod.cerema.fr
The right caseWarehouse, full reloadProperty record, price range

We combine them: files for the twice-yearly truth, API for interactive use. We do not scrape app.dvf.etalab.gouv.fr. That is a scoping call.

Our expertise

What we measure on a DVF and cadastre integration

15 d
first price range in production
0
mutations expected on Paris 75056
5,000
max features per Géoplateforme WFS request
4
senior developers on the project

We combine DVF and cadastre with

The stack around land data on our projects.

  • PostgreSQL
  • PostGIS
  • Redis
  • Node.js
  • TypeScript
FAQ

DVF and cadastre integration: your questions

Two paths. DGFiP files, fully reloaded twice a year, for the warehouse. The Cerema DVF+ API for interactive queries, with a municipality / municipal-arrondissement lookup table (Paris, Lyon, Marseille). Tests: 75056 = 0, 75111 > 0, an Alsace municipality absent. We do not scrape the Etalab app. We do not rely on api.cquest.org/dvf (502 in August 2026). The Cerema host still has preprod in the name: URL in configuration, and a local extract as fallback if the API drops.

API Carto for point lookup (parcel form: /api/cadastre/parcelle, commune, division, localisant). WFS data.geopf.fr or PCI files for the base map, honouring 5,000 features per request. Géoplateforme URL in configuration. wxs.ign.fr no longer resolves: any stack still on it is already broken. IGN attribution, Licence ouverte 2.0. PCI Image TIFF is no longer delivered from December 2025: any new base map is designed as vector.

Because code 75056 is the municipality of Paris, and DVF+ serves sales on arrondissements 75101 to 75120. Live survey: 0 on 75056, 39,604 on 75111, 94,403 on Nantes (44109). Same logic as the Etalab app. A connector that sends the « obvious » municipal INSEE code breaks Paris, Lyon and Marseille. Lyon and Marseille follow the same municipal-arrondissement rule. The lookup table is a scoping deliverable, not a production hotfix.

DVF+ is open data: mutations, not the parties. DV3F and land files (MAJIC) are restricted (State, local authorities, EPF, SAFER) and contain persons. We do not « enrich » an open-data sale with an owner name found elsewhere. Selling DV3F to a private developer as open data is an illegal scope. Minimisation: open-data DVF does not identify the parties. We do not reconstitute an owner from another source.

Open-data access is free. The cost is the pipeline: files + API, arrondissement table, point cadastre vs base map, cache, fallback if Cerema preprod drops. A price range on municipalities outside Paris is a short job. A France observatory with PCI, WFS and the Paris trap is a project. We scope the channel and give a firm estimate before we start. Alsace-Moselle and Mayotte are missing from DGFiP DVF: the product shows it, it does not fail silently.

A DVF and cadastre integration project?

Let's talk. 30 minutes to scope files, the Cerema API and cadastre, check the Paris trap, and tell you frankly what is feasible.

Discuss my DVF & cadastre project
Discuss my DVF & cadastre project