À l'intérieur de Schengen, une frontière est un panneau. Vous la franchissez à la vitesse de l'autoroute et votre ETA ne s'en aperçoit jamais. Vingt ans de cela ont entraîné chaque moteur de routage, chaque TMS et l'intuition de chaque répartiteur à traiter une frontière européenne comme une erreur d'arrondi.
Puis un chargement part vers la frontière extérieure de l'UE, et l'erreur d'arrondi devient la tournée.
Au matin du 16 juillet 2026, la file des camions chargés à Yahodyn–Dorohusk — le principal point de passage fret Ukraine–Pologne — annonçait une attente de 5 964 minutes. Soit quatre jours et trois heures, avec 1 006 camions physiquement dans la file. La file des camions vides au même point de passage était pire : 6 555 minutes, soit quatre jours et treize heures, avec 1 334 camions en attente.
Aucun routage astucieux sur le réseau routier ne vous dira cela. Ce n'est pas une condition de circulation, ce n'est pas de la congestion, et cela ne se résorbera pas en vingt minutes. C'est une file d'attente qui a une longueur, et le seul moyen de le savoir est de lire la file.
Pourquoi « l'attente moyenne à la frontière » est un chiffre inutile
L'instinct est de recourir à une moyenne et de rembourrer l'ETA. Les données en direct disent : ne vous embêtez pas.
Sur les 38 points de passage poids lourds de la frontière ukrainienne face à l'UE ce matin-là, la distribution n'était pas une courbe en cloche. C'était deux amas et rien entre les deux : 21 points de passage annonçaient une attente d'exactement zéro, et les autres allaient d'environ dix heures à quatre jours et demi. Il n'y avait pour ainsi dire pas de milieu.
Cette forme est tout le problème de planification. Un point de passage frontalier, ou bien il s'écoule — auquel cas il ne vous coûte rien et n'exige aucune marge —, ou bien c'est un parking de plusieurs jours. Une moyenne entre ces deux états ne décrit aucun point de passage réellement existant, et une marge fixe est soit du battement gaspillé, soit très loin du compte. La seule question utile est binaire et actuelle : ce point de passage précis, pour ce type de camion, avance-t-il en ce moment ?
La file est publiée. Elle n'est simplement pas dans votre stack.
L'Ukraine exploite un système de file d'attente électronique pour les passages frontaliers — єЧерга (eCherha) — opéré par le Service national des douanes. Les camions y réservent et y tiennent une place, et il publie l'état en direct de chaque point de passage : le temps que met la file, et combien de véhicules s'y trouvent. Le jeu de données sous-jacent est en open data, publié sous licence CC BY 4.0.
NAPSPAN le normalise dans le même type de feature border_crossings qui porte les attentes aux frontières terrestres du CBP et de l'ASFC côté nord-américain, si bien qu'il répond au même appel /features que tout le reste :
curl -H "X-API-Key: $KEY" \
"https://api.napspan.com/api/v1/features?type=border_crossings&jurisdiction=UKR"
{
"data": [
{
"id": "echerga-truck-1",
"source": "UKR",
"jurisdiction": "UKR",
"feature_type": "border_crossings",
"name": "Ягодин – Дорогуськ (для вантажівок ≥ 7,5 тонн)",
"latitude": 51.1880897,
"longitude": 23.8105033,
"is_active": true,
"properties": {
"source_feed": "echerga",
"vehicle_type": "truck",
"queue_type": "dynamic",
"wait_time_minutes": 5964,
"vehicles_in_queue": 1006,
"neighbor_country": "Польща",
"is_paused": false
},
"last_updated": "2026-07-16T09:40:00Z"
}
],
"total": 68, "limit": 100, "offset": 0, "has_more": false
}
Toute la frontière s'y trouve. Cet appel renvoie 68 files face à cinq pays voisins — la Pologne, la Slovaquie, la Hongrie, la Roumanie et la Moldavie —, chacune avec une attente en direct et une profondeur de file en direct, rafraîchies par une interrogation toutes les dix minutes. 38 d'entre elles sont des files poids lourds ; les autres sont les files d'autocars que le même système publie. vehicle_type les distingue — c'est le champ sur lequel filtrer, car une file d'autocars ne dit rien de votre voie fret.
L'essentiel pour la répartition : la file suit l'itinéraire
Interroger la frontière par pays, c'est la voie manuelle. Celle qui change la journée d'un répartiteur, c'est que la file revient attachée à l'itinéraire. Envoyez une requête de routage poids lourds normale à POST /api/v1/routing/route, et tout passage frontalier sur le corridor arrive dans le canal warnings[] — pas de second appel, pas de jointure spatiale de votre côté :
{
"warnings": [
{
"type": "border_crossing",
"severity": "critical",
"title": "Ягодин – Дорогуськ (для вантажівок ≥ 7,5 тонн)",
"description": "Commercial border wait ~4 d 3 h. 1006 trucks in queue.",
"status": "open",
"as_of": "2026-07-16T09:40:00Z",
"distance_along_route_m": 288000,
"projected_arrival_time": "2026-07-16T14:05:00Z",
"source": "UKR",
"source_id": "1",
"geometry": { "type": "Point", "coordinates": [23.8105033, 51.1880897] },
"properties": {
"commercial_wait_minutes": 5964,
"vehicles_in_queue": 1006
}
}
]
}
Quelques choix délibérés dans cet objet méritent d'être signalés, car ce sont eux qui le rendent exploitable plutôt que simplement présent :
- L'attente se lit comme une attente.
descriptions'affiche en4 d 3 h, pas en~5964 min. Personne ne peut agir sur 5 964 minutes. Le champ lisible par machinecommercial_wait_minutesreste en minutes pour que vos propres seuils continuent de fonctionner — l'humanisation est une question de présentation, pas une perte de donnée. - La profondeur de file vient avec.
vehicles_in_queueest le chiffre qui rend l'attente concrète. « Quatre jours », c'est abstrait ; « mille camions sont devant vous », c'est une décision. - La sévérité est calibrée pour un camion.
infoen dessous de 15 minutes,warningà partir de 15,criticalau-delà de 45 ou dès que le point de passage est fermé. Réglezmin_severity: "warning"et une frontière qui s'écoule reste silencieuse pendant qu'une frontière bouchée crie. - Seule la file poids lourds compte. Le flux publie chaque point de passage une fois par type de véhicule. Une file d'autocars de quatre-vingt-dix minutes au même point de passage ne calibre jamais votre itinéraire fret — nous fondons la sévérité sur la seule file poids lourds.
- Vous connaissez le passage avant le conducteur.
distance_along_route_metprojected_arrival_timele situent sur le corridor, si bien que c'est une décision prise à la répartition — dérouter vers un point de passage plus calme, réordonner le chargement, prévenir le client — et non une surprise découverte à la quatre-vingt-dixième heure.
Cela circule sur la même requête que les restrictions poids lourds et les panneaux à message variable du corridor, ses coûts de péage et la planification des pauses au titre du 561/2006. Un seul appel renvoie un itinéraire poids lourds praticable, les règles qui l'arrêteraient, où le conducteur doit légalement se reposer, ce que cela coûte — et désormais combien de temps la frontière va le retenir.
Ce qu'il faut attendre des données
Quelques notes honnêtes pour que la couverture se comporte comme vous l'attendez :
- Il s'agit de la frontière extérieure, pas de chaque frontière de l'UE. Les passages intra-Schengen ne font pas la queue : il n'y a donc rien à signaler et aucun avertissement à donner. La couche de file en direct couvre les points de passage ukrainiens face à l'UE, là où se situe réellement le problème de la frontière fret de l'UE. Les autres frontières extérieures n'ont pas encore de flux en direct équivalent câblé — nous le dirons franchement plutôt que de rembourrer la carte.
- Un seul point de passage physique publie plusieurs files. Yahodyn–Dorohusk déclare les camions chargés, les camions vides et certaines catégories de marchandises comme des lignes distinctes aux mêmes coordonnées, et elles divergent — le 16 juillet, la file des camions vides courait dix heures de plus que celle des chargés. Lisez le nom du point de passage ; ne supposez pas un seul chiffre par poste frontière.
- Les points de passage suspendus disparaissent. Quand l'opérateur suspend une file, le flux le signale et nous marquons le point de passage comme inactif, si bien qu'il cesse de générer des avertissements au lieu de présenter comme en direct une attente périmée. Dix des 38 étaient suspendus ce matin-là.
- Certains points de passage fonctionnent sur créneaux, pas en direct. Là où un point de passage fonctionne sur créneaux réservés au lieu d'une file en direct, il n'y a pas d'attente à signaler — il reste en
infoet nous ne publions aucun chiffre inventé. - C'est une donnée d'entrée de planification. La file fait autorité sur la file. Elle n'est pas une promesse sur la douane, les documents, ou ce que décide l'agent au guichet.
Le fil conducteur
C'est la même forme que les cinq problèmes de données routières que rencontre toute flotte transfrontalière européenne : l'information existe, une autorité publique la publie, et elle est dans un format national que la pile de routage de personne ne parle. Résoudre cela une fois par pays est un engagement de maintenance permanent qui concurrence le produit que vous vendez réellement.
NAPSPAN fait cette agrégation une fois. La file électronique ukrainienne arrive dans le même schéma border_crossings qu'une attente de voie du CBP américain, filtrable par pays, attachée à votre itinéraire sur la même requête que les péages et les pauses, servie depuis l'Europe, et classée par licence avant sa mise en service — ce flux sous CC BY 4.0, crédité sur chaque enregistrement.
Essayer
- Documentation API —
/featuresavectype=border_crossings, ainsi quePOST /routing/route - Carte en direct — la frontière, telle qu'elle est en ce moment
- Clé API gratuite — sans carte, essai de 14 jours
Trouvez la file de quatre jours à la répartition, pas à la quatre-vingt-dixième heure
Les attentes en direct de la file électronique et la profondeur de file pour chaque point de passage poids lourds de la frontière ukrainienne de l'UE — normalisées dans un seul schéma et remontées automatiquement sur votre itinéraire. Essai gratuit de 14 jours. Sans carte.
Obtenir une clé API gratuite Lire la documentation