| Title: | French Tax Mileage Allowance Scale ('Bareme Kilometrique') |
|---|---|
| Description: | The French tax mileage allowance scale ('bareme kilometrique') used to deduct professional travel costs ('frais reels') from French income tax: tax returns 2022 to 2026 (income years 2021 to 2025), cars, motorcycles and mopeds, 135 rates, with the 20 % increase for 100 % electric vehicles. Port of the Go package 'baremekm' published by MaCalculatriceEnLigne; no dependency. |
| Authors: | Rédaction MaCalculatrice [aut, cre], MaCalculatriceEnLigne [cph] |
| Maintainer: | Rédaction MaCalculatrice <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 0.1.0 |
| Built: | 2026-10-07 09:27:15 UTC |
| Source: | https://github.com/tresor4k/fr-bareme-km-r |
Deductible amount in euros, rounded to the cent (half away from zero), for
km professional kilometres driven in the income year preceding the
declaration year. bareme_amount applies to thermal, hybrid and hydrogen
vehicles; bareme_amount_electric adds the 20 % increase for 100 %
electric vehicles, applied to the computed amount before rounding.
bareme_amount(year, vehicle, cv, km) bareme_amount_electric(year, vehicle, cv, km)bareme_amount(year, vehicle, cv, km) bareme_amount_electric(year, vehicle, cv, km)
year |
declaration year, 2022 to 2026. |
vehicle |
|
cv |
fiscal horsepower, a whole number >= 1 (ignored for mopeds). |
km |
professional kilometres, a finite number >= 0. |
Arguments are recycled to a common length. The band applies when
min_km < km <= max_km, or 0 <= km <= max_km for the first band;
amount = km * coef + constant (see bareme_rates).
An input outside the scale signals an error of class
baremekm_out_of_scale and baremekm_year,
baremekm_vehicle, baremekm_horsepower or baremekm_km.
A numeric vector of amounts in euros.
French mileage allowance calculator: https://macalculatriceenligne.com/finance/divers/calcul-frais-kilometriques/. This is an aid to calculation, not tax advice. The official texts prevail.
# 2026 tax return (2025 kilometres), 5 CV car, 4 000 km bareme_amount(2026, "automobile", 5, 4000) # 2544 bareme_amount_electric(2026, "automobile", 5, 4000) # 3052.8 bareme_amount(2026, "automobile", 5, c(5000, 5001)) # 3180 3180.36 tryCatch(bareme_amount(2021, "automobile", 5, 4000), baremekm_year = function(e) conditionMessage(e))# 2026 tax return (2025 kilometres), 5 CV car, 4 000 km bareme_amount(2026, "automobile", 5, 4000) # 2544 bareme_amount_electric(2026, "automobile", 5, 4000) # 3052.8 bareme_amount(2026, "automobile", 5, c(5000, 5001)) # 3180 3180.36 tryCatch(bareme_amount(2021, "automobile", 5, 4000), baremekm_year = function(e) conditionMessage(e))
Horsepower class of a whole fiscal horsepower, named as in the source:
"cv3_et_moins", "cv4", "cv5", "cv6",
"cv7_et_plus" for cars; "cv1_2", "cv3_4_5",
"cv_plus_de_5" for motorcycles; "toutes" for mopeds, whose
cv is ignored.
bareme_class(vehicle, cv)bareme_class(vehicle, cv)
vehicle |
|
cv |
fiscal horsepower, a whole number >= 1. |
A character vector of class names.
bareme_class("automobile", 1:8) bareme_class("motocyclette", 4)bareme_class("automobile", 1:8) bareme_class("motocyclette", 4)
The French tax mileage allowance scale ("bareme kilometrique"), tax returns 2022 to 2026, in the order of the source: one row per distance band.
bareme_rates()bareme_rates()
A data.frame of 135 rows and 7 columns:
declaration year (integer).
"automobile", "motocyclette" or "cyclomoteur".
horsepower class, see bareme_class.
band limits; max_km is Inf for the last band.
amount in euros = km * coef + constant.
Port of the Go package baremekm (generated from its source), itself a
port of the SWI-Prolog pack fr_bareme_km 1.0.0. Official sources: BOFIP
BOI-BAREME-000001 (2022, 2023), DGFiP brochures pratiques IR (2024 to 2026),
service-public.gouv.fr A14686 (2026). Dataset: doi:10.17632/5s59m9wycw.1
(CC BY 4.0). See also bareme_source.
r <- bareme_rates() r[r$year == 2026 & r$vehicle == "automobile", ]r <- bareme_rates() r[r$year == 2026 & r$vehicle == "automobile", ]
bareme_source returns the official text against which the scale of a
declaration year was cross-checked. bareme_income_year returns the
income year whose kilometres are declared (declaration year - 1).
bareme_source(year) bareme_income_year(year)bareme_source(year) bareme_income_year(year)
year |
declaration year, 2022 to 2026. |
A character vector (bareme_source) or an integer vector
(bareme_income_year).
bareme_source(2026) bareme_income_year(2026) # 2025bareme_source(2026) bareme_income_year(2026) # 2025