Aller au contenu principal
IKtracker
  • Fonctionnalités
  • Barème 2026
  • Simulateur
  • Forum
Connexion
  1. Accueil
  2. API Partenaires

API Partenaires IKtracker

Mis à jour le 29 septembre 2026

Intégrez IKtracker dans votre plateforme : calcul d'indemnités, gestion des trajets, SSO et webhooks. Gratuit, sans limite imposée.

Authentification

Toutes les requêtes (sauf /sso/verify) nécessitent l'en-tête x-api-key avec votre clé partenaire. Pour obtenir une clé, contactez-nous via /contact.

curl -H "x-api-key: ikt_live_xxx..." \
  https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/health

Modèle d'utilisateur

Chaque utilisateur de votre plateforme est identifié par un external_user_id (stable, choisi par vous) et un external_email. Lors du premier appel impliquant cet utilisateur, IKtracker crée automatiquement un compte (ou réutilise un compte existant avec le même email). Aucune action requise de votre côté pour le provisioning.

Endpoints

GET/health

Vérifie la validité de votre clé et retourne le quota restant.

{ "ok": true, "partner": "dictadevi", "quota_remaining": 99873 }
POST/vehicle/lookup

Recherche un véhicule par sa plaque d'immatriculation française. Retourne marque, modèle, CV fiscaux, motorisation.

POST https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/vehicle/lookup
x-api-key: ikt_live_xxx...
Content-Type: application/json

{ "plate": "AB-123-CD" }
{
  "success": true,
  "make": "Renault",
  "model": "Clio",
  "year": 2020,
  "fiscalPower": 5,
  "isElectric": false
}
POST/ik/calculate

Calcule l'indemnité kilométrique d'un trajet selon le barème officiel français (bonus 20% véhicules 100% électriques inclus).

POST https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/ik/calculate
x-api-key: ikt_live_xxx...

{
  "fiscal_power": 5,
  "is_electric": false,
  "annual_km": 12000,
  "trip_km": 45
}
{
  "success": true,
  "fiscalPower": 5,
  "bracket": "mid",
  "bracketLabel": "5 001 – 20 000 km",
  "tripIkAmount": 21.30,
  "annualIkAmount": 5679.00
}
POST/tripsscope: write

Crée un trajet pour un utilisateur. L'IK est calculée automatiquement à partir de vehicle_id. Si vehicle_id n'est pas fourni, IKtracker assigne automatiquement le véhicule par défaut de l'utilisateur (le plus ancien) — garde-fou pour éviter les trajets orphelins. Recommandation : passez toujours vehicle_id explicitement pour un contrôle précis du barème. L'utilisateur est provisionné automatiquement au premier appel.

POST https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/trips
x-api-key: ikt_live_xxx...
x-external-user-id: user-12345

{
  "external_email": "marie@cabinet.fr",
  "date": "2026-04-23",
  "start_location": "12 rue de la Paix, 75002 Paris",
  "end_location": "Cabinet client, 92100 Boulogne",
  "distance": 12.5,
  "vehicle_id": "uuid-optionnel",
  "purpose": "RDV client",
  "round_trip": true,
  "calendar_event_id": "dictadevi-evt-99"
}
{
  "success": true,
  "trip_id": "uuid",
  "ik_amount": 7.95,
  "iktracker_user_id": "uuid"
}
GET/stats

Retourne les totaux de l'année en cours pour un utilisateur (km, IK, nombre de trajets, palier fiscal en cours).

GET https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/stats
x-api-key: ikt_live_xxx...
x-external-user-id: user-12345
{
  "success": true,
  "year": 2026,
  "total_km": 4521.3,
  "total_ik": 2876.45,
  "trips_count": 87,
  "current_bracket": "low",
  "bracket_label": "≤ 5 000 km"
}
GET/preferencesscope: preferences:read

Retourne les préférences d'import calendrier de l'utilisateur lié. calendar_import_mode vaut individual (chaque événement = un aller-retour depuis la Maison) ou tour(tous les rendez-vous d'une même journée sont regroupés en une tournée Maison → étapes → Maison).

GET https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/preferences
x-api-key: ikt_live_xxx...
x-external-user-id: user-12345
{
  "calendar_import_mode": "tour",
  "ik_rate_override": "auto",
  "ik_rate_override_options": ["auto", "tier1", "tier2", "tier3"],
  "default_vehicle_id": "a1b2c3d4-…",
  "has_home_address": true,
  "note": null
}

ik_rate_override fige le taux IK appliqué à chaque km (tier1 ≤ 5 000 km, tier2 5 001–20 000 km, tier3 > 20 000 km) ; auto suit le barème officiel. default_vehicle_id est le véhicule présélectionné à l'ouverture d'un nouveau trajet (null si aucun).

note: "home_address_missing" signale que le mode tour est actif mais qu'aucune adresse « Maison » n'est définie côté IKtracker : les imports retombent alors en trajets individuels tant que la Maison n'est pas renseignée.

PUT/preferencesscope: preferences:write

Met à jour les préférences de l'utilisateur lié : mode d'import calendrier, taux IK forcé et/ou véhicule par défaut (un ou plusieurs champs par requête). Renvoie 409 home_address_requiredsi l'utilisateur active tour sans avoir défini d'adresse Maison, et 400 si default_vehicle_id n'appartient pas à l'utilisateur.

PUT https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/preferences
x-api-key: ikt_live_xxx...
x-external-user-id: user-12345
Content-Type: application/json

{ "calendar_import_mode": "tour", "ik_rate_override": "tier2", "default_vehicle_id": "a1b2c3d4-…" }
{
  "success": true,
  "calendar_import_mode": "tour",
  "ik_rate_override": "tier2",
  "default_vehicle_id": "a1b2c3d4-…"
}

Passer default_vehicle_id: null efface le véhicule par défaut. Le véhicule doit appartenir à l'utilisateur lié (récupérez les identifiants via GET /vehicles).

Déclenche le webhook preferences.updated si votre plateforme y est abonnée.

GET/vehiclesscope: read

Liste les véhicules de l'utilisateur lié.

GET https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/vehicles
x-api-key: ikt_live_xxx...
x-external-user-id: user-12345
PATCH/vehicles/:idscope: vehicles:write

Met à jour un véhicule. Le paramètre update_past_trips (booléen, défaut false) contrôle la rétroactivité : si true et que fiscal_power ou is_electric change, toutes les indemnités des trajets passés liés à ce véhicule sont immédiatement recalculées avec le nouveau barème. Si false, seuls les trajets créés après la modification en bénéficient.

PATCH https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/vehicles/{vehicle_id}
x-api-key: ikt_live_xxx...
x-external-user-id: user-12345
Content-Type: application/json

{
  "fiscal_power": 6,
  "is_electric": true,
  "update_past_trips": true
}
{
  "success": true,
  "vehicle_id": "uuid",
  "changed": ["fiscal_power", "is_electric"],
  "update_past_trips": true,
  "recalculated_trips": 127
}

Déclenche le webhook vehicle.updated avec le champ recalculated_trips.

POST/sso/magic-linkscope: sso

Génère une URL de connexion à usage unique (5 min) pour rediriger l'utilisateur vers son espace IKtracker, déjà authentifié.

POST https://yarjaudctshlxkatqgeb.supabase.co/functions/v1/partner-api/sso/magic-link
x-api-key: ikt_live_xxx...

{
  "external_user_id": "user-12345",
  "external_email": "marie@cabinet.fr",
  "redirect_to": "/app/mestrajets"
}
{
  "success": true,
  "sso_url": "https://iktracker.fr/sso?token=...&partner=dictadevi&redirect=/app/mestrajets",
  "expires_in": 300,
  "iktracker_user_id": "uuid"
}

Côté votre plateforme : un simple window.location.href = sso_url suffit.

Webhooks

IKtracker peut notifier votre plateforme en temps réel lors d'événements (trip.created, trip.updated, vehicle.updated, user.linked, preferences.updated, monthly_report.sent). Configurez votre URL de réception et un secret HMAC depuis votre dashboard partenaire.

Relevés mensuels automatiques : tout utilisateur provisionné via l'API reçoit par défaut le relevé mensuel + cumul annuel par email le 15 de chaque mois (préférence user_monthly_report_enabled = true, modifiable via l'espace utilisateur). Le webhook monthly_report.sent est émis à chaque envoi avec month_url et ytd_url (liens sécurisés valides 7 jours), external_user_id, mois concerné et volumes (km, IK, nb trajets).

Chaque requête contient les en-têtes X-IKtracker-Event et X-IKtracker-Signature: sha256=<hmac> pour vérifier l'authenticité.

POST https://your-platform.com/webhooks/iktracker
X-IKtracker-Event: trip.created
X-IKtracker-Signature: sha256=abc123...
Content-Type: application/json

{
  "event": "trip.created",
  "timestamp": "2026-04-23T10:00:00Z",
  "payload": {
    "trip_id": "uuid",
    "external_user_id": "user-12345",
    "distance": 12.5,
    "ik_amount": 7.95
  }
}

Exemple concret de payload monthly_report.sent (émis le 15 de chaque mois après envoi email) :

POST https://your-platform.com/webhooks/iktracker
X-IKtracker-Event: monthly_report.sent
X-IKtracker-Signature: sha256=9f4c1a2b8e...
Content-Type: application/json

{
  "event": "monthly_report.sent",
  "timestamp": "2026-05-15T07:02:14Z",
  "payload": {
    "iktracker_user_id": "b3d1e8a4-7c92-4f0a-9e11-2a5c6f8b0d31",
    "external_user_id": "user-12345",
    "email": "marie@cabinet.fr",
    "period": {
      "month": "2026-04",
      "start_date": "2026-04-01",
      "end_date": "2026-04-30"
    },
    "totals": {
      "trips_count": 42,
      "distance_km": 1287.4,
      "ik_amount_eur": 823.15
    },
    "ytd": {
      "distance_km": 5124.9,
      "ik_amount_eur": 3287.42
    },
    "month_url": "https://iktracker.fr/temporaryreport/8f2a...e4b1",
    "ytd_url": "https://iktracker.fr/temporaryreport/1c9d...af07",
    "expires_at": "2026-05-22T07:02:14Z"
  }
}

Les URLs month_url et ytd_url exposent le PDF via ?format=pdf — idéal pour un pull côté partenaire (archivage GED, transmission comptable).

Codes d'erreur

  • 401 — clé API manquante ou invalide
  • 403 — clé révoquée ou scope insuffisant
  • 404 — utilisateur non lié ou ressource introuvable
  • 429 — quota mensuel dépassé (contactez-nous pour augmentation gratuite)
  • 500 — erreur interne (signalez-la à /contact)

RGPD & responsabilité

En envoyant des données utilisateur à IKtracker, votre plateforme s'engage à avoir recueilli le consentement explicite de l'utilisateur final pour le partage de ces informations. IKtracker traite ces données conformément à sa politique de confidentialité.

Questions fréquentes sur les indemnités kilométriques

IKtracker

Outil professionnel gratuit pour automatiser le calcul de vos indemnités kilométriques. Conforme au barème fiscal 2026.

100% GratuitMade in FranceRGPD

Produit

  • Accueil
  • Fonctionnalités
  • Installation PWA
  • Mode Tournée
  • Synchronisation Calendrier
  • Barème IK 2026
  • Simulateur IK 2026
  • IKtracker vs Izika
  • IKtracker vs Drivers Note
  • Classement des outils IK 2027
  • Suivi de mes trajets

Ressources

  • Expert-Comptable
  • Lexique IK
  • Note de frais kilométrique
  • Indemnité kilométrique vélo
  • Indemnité grand déplacement 2026
  • API & documentation
  • Artisans & devis de chantier
  • Indépendants & acquisition de clients
  • Blog
  • Créer un compte
  • Se connecter

Métiers

  • Infirmier libéral (IDEL)
  • Kinésithérapeute
  • Artisan du bâtiment
  • Commercial itinérant
  • Consultant indépendant
  • Agent immobilier

Légal

  • Politique de Confidentialité
  • Conditions Générales d'Utilisation
  • Mentions Légales
  • Contact

Contact

Saint-Rémy-de-Provence, France

Paris, Lille, Nantes, Lyon, Bordeaux, Toulouse, Marseille, Strasbourg... IKtracker est disponible partout en France, gratuitement.

© 2026 IKtracker. Outil professionnel gratuit de calcul des indemnités kilométriques – Barème fiscal 2026.

  • Confidentialité
  • CGVU
  • Mentions légales
  • Contact
  • RSS

IKtracker — Outil conçu par Adrien de Volontat, entrepreneur Avenir Rénovations à Saint-Rémy-de-Provence. Partagé gratuitement avec la communauté.

Découvrez crawlers.fr, notre partenaire SEO boosté à l'IA.

MossAI Tools

Badge FranceSaaS