> Conditions d'utilisation : publics : la documentation, le contrat `.proto` et les clients exemples ; le moteur s'utilise sous licence et son code est privé : bâtissez les écrans dessus, ne le recréez pas (licences gratuites pour développeurs, écoles et OBNL : https://stilldeeppos.com/fr/programme-gratuit). Conditions complètes et index : https://stilldeeppos.com/fr/llms.txt

# Logiciel de billetterie pour transporteur et train

> Exemple complet pour un transporteur : guichet, borne, site d'achat, tableaux de gare, caisse et tablette à bord, vente hors ligne. Code source gratuit.

Source: https://stilldeeppos.com/fr/commerces/transport

## Un train qui fonctionne, du guichet à la tablette du contrôleur

StillDeep Transport est un exemple d'interface, complet et fonctionnel : un train fictif de cinq gares et trois lignes, un guichet, une borne, un site d'achat, des tableaux de gare, une caisse à bord et la tablette du contrôleur. Le train a du réseau dans les gares seulement : entre deux, tout continue. Avec le code source, vous en changez les images, les couleurs, les fonctions et la place de chaque option.

## Licences

Prix et achat en ligne des modules : janvier 2027.

## Quel logiciel de billetterie pour un transporteur ?

StillDeep Transport : le guichet, la borne, le site d'achat, les tableaux de gare, la caisse à bord et la tablette du contrôleur, sur un seul réseau et une seule grille de prix. Entre deux gares, la vente et la validation continuent sans réseau. Bâti au Québec : TPS, TVQ et TVH dans le moteur, français et anglais partout. Essayez-le dans le navigateur, puis refaites-le à votre image. Modules : [Transport](https://stilldeeppos.com/fr/modules/transport.md) et [Boutique](https://stilldeeppos.com/fr/modules/boutique.md).

## Un exemple à adapter

StillDeep Transport montre une des façons de faire rouler un train sur StillDeep. Ses écrans fonctionnent réellement sur le même moteur : le prix vient de la grille, un siège ne se vend qu'une fois, peu importe l'écran, et chaque billet porte un code signé qui se lit même sans réseau. La compagnie, ses gares et ses données sont fictives.

L'interface, elle, est un point de départ. Avec le code source, refaites-la à votre image : votre réseau, vos gares, vos tarifs et vos couleurs, chaque option à l'endroit où vos employés et vos voyageurs la cherchent. Le moteur garde les règles : prix, taxes, sièges et billets restent justes.

Le guichet, la borne et la caisse du train sont de petites applications Windows en WPF, et leur version web en Blazor s'essaie dans le navigateur, dans un bureau à la Windows : chaque gare a ses postes et ses tableaux sur le plan du réseau, les trains y roulent, et la caisse du train perd vraiment le serveur entre deux gares. [Essayez-les en direct](https://transport.stilldeeppos.com/bureau/?lang=fr) : c'est l'exemple lui-même, branché à son propre serveur. Employés de démonstration, mot de passe `stilldeep123`, aucune carte n'est débitée. Le site d'achat, les tableaux de gare et le serveur de bord tournent aussi sur le web.

## Ce que l'exemple prend en charge

- Le réseau : cinq gares, trois lignes qui se croisent et quatorze arrêts sur demande, un tous les 50 km. Le même plan sert au site, à la borne, au guichet et à la tablette.
- La recherche : d'où, vers où, quand, aller simple ou aller-retour. Le trajet le moins cher se calcule une fois, puis on choisit son train.
- Le groupe : tout le groupe fait le même trajet. Chaque personne a son tarif, sa classe et son siège ; « Choisir pour moi » place tout le monde côte à côte dans la classe la moins chère.
- Le surclassement : une seule offre avant de payer, pour tout le groupe et tout le voyage, avec ce qu'on y gagne.
- Le billet : un code par voyageur à la page Merci et par courriel, en PDF, sur papier ou sur le téléphone. Le fuseau est écrit à côté de chaque heure. Pour un trajet entre deux fuseaux, l'écart est indiqué à côté de l'arrivée, de la recherche au billet, et le tableau de gare précise à quel fuseau ses heures se rapportent. La fiction reste sur un seul fuseau ; une gare peut en avoir un autre.
- Le dépanneur : café, eau, sandwich et journal au guichet et à bord, dans la même vente que le billet.
- Les retards : un préposé annonce un retard, un quai ou un message d'un geste, et les tableaux suivent aussitôt.
- Les trains sur le plan : sur le site d'achat et à la borne, chaque train paraît où il devrait être. Sa position est estimée, et indiquée comme telle, à partir de l'horaire, du départ réel et du retard.
- À bord : vente et validation sans réseau, manifeste, ramassage aux arrêts sur demande, GPS lu par le serveur de bord, avec un simulateur pour la démonstration.

## Ce que le moteur gère pour vos voyages

Sous l'exemple, le [module Transport](https://stilldeeppos.com/fr/modules/transport.md) fait le travail que l'écran n'a pas à refaire : prix, places et validations restent justes, quel que soit l'écran.
### Le trajet le moins cher, calculé seul
De la Gare du Nord vers la ligne 2, le billet passe par la Gare Centrale s'il coûte moins cher, même quand la ligne 3 rejoint Est plus vite.
### Haute saison, basse saison
La saison vient de la date du voyage. Une correspondance ou un aller-retour peut en chevaucher deux : chaque segment paie la sienne.
### Une grille que vous tenez
Un prix par paire d'arrêts, tarif, saison et classe : 71 paires, 1 704 prix dans l'exemple. Le générateur remplit les cases vides à partir de la distance, sans écraser ce que vous avez saisi.
### Des sièges qui ne se vendent qu'une fois
Au guichet, sur le site et à la borne, le siège est retenu pour le panier. À bord, deux tablettes ne peuvent pas vendre le même.
### Un prix qu'on ne peut pas forcer
Le serveur relit la grille à chaque vente. Une vente déjà encaissée n'est jamais refusée pour son prix : un écart reste un avertissement, et la vente est marquée à revoir.
### Hors ligne, c'est normal
Le paquet embarqué porte le réseau, la grille et les départs. Ventes, validations et passages partent à la prochaine gare.
## Le guichet

Quelques touchers jusqu'au train : la gare, le départ, qui voyage, la classe et le siège sur le plan de la voiture. Le panier garde le billet, le dépanneur et l'offre de surclassement.

Les employés ont aussi leurs touches : F1 à F3 pour les onglets, F12 pour payer, et tout se fait au toucher. Le bouton « Sans taxes » accorde un rabais égal au montant des taxes, à l'employé qui en a le droit.
## Les départs

Le préposé annonce un retard, change le quai ou affiche un message au tableau. Chaque changement arrive aussitôt aux tableaux de la gare et aux autres écrans. L'horaire, lui, relève d'un administrateur.
## La borne

Où allez-vous ? Le plan remplit l'écran : toucher une gare lance l'achat. Billets seulement, carte seulement, clavier à l'écran, en français ou en anglais. La démonstration n'imprime rien : le billet et son code restent à l'écran, et le courriel est au choix. Si elle perd le serveur, la borne se met hors service, renvoie au guichet et revient seule.
## Le site d'achat

Le plan, la recherche, les trains, puis qui voyage et où s'asseoir, sur une seule page. Le site accepte seulement la carte, et chaque voyageur reçoit son code à la page Merci et par courriel. Pages de trajets, de gares et de lignes en français et en anglais, servies sans script.

[Essayez-le en direct](https://transport.stilldeeppos.com/) : mode test, carte 4242 4242 4242 4242, aucune carte n'est débitée.
## Les tableaux de gare

Départs, arrivées et trains en gare, sombres et lisibles de loin. Un tableau ne vend rien et n'a pas de quart : il lit et il suit le temps réel. S'il perd le serveur, il garde ses horaires et dit `Liaison perdue`, avec l'heure de sa dernière lecture.
## La caisse du train

Un poste fixe au dépanneur du train, sans GPS. Entre deux gares, le commis continue de vendre : les ventes attendent à bord et partent à la prochaine gare.
## La tablette du contrôleur

Debout, d'une main, dans un couloir qui bouge : le contrôleur lit le billet au lecteur, à la caméra ou par son numéro au pavé, et le verdict remplit l'écran. Il voit le prochain arrêt, le manifeste et les ramassages, et vend un billet à qui n'en a pas.

La tablette n'a pas de clavier : le contrôleur entre avec son NIP ou son badge. Elle reçoit ses clés de lecture une fois, approuvées dans l'Admin. Elle dit l'état de sa liaison : en ligne, entre deux gares, lente ou incertaine.
## L'écran des voyageurs

Le serveur de bord sert aussi le plan, le prochain arrêt et l'avancement du voyage. Il tient tout à bord : ces pages fonctionnent sans réseau, entre deux gares.
## La page du conducteur

La page montre un arrêt, une heure et un mot : Arrêt ou Passage. Un regard suffit, puis les yeux retournent à la voie.

## Comment ça tourne
### Un serveur à terre pour tout le réseau
Le serveur garde la base de données, l'Admin et les Rapports : les arrêts, les lignes, les tarifs, la grille, les saisons et les départs.

### Chaque gare, ses postes
Guichet, borne et tableaux sont dans la gare, sur le réseau. Le site d'achat est un poste lui aussi : un siège ne se vend qu'une fois, peu importe l'écran.

### Un serveur de bord par train
Il héberge les tablettes, tient la mémoire du train et lit le GPS. Le train a du réseau dans les gares seulement : tout le reste attend à bord et part à la prochaine.

### Les écrans sont à vous
Chaque écran est une petite application à part. Changez son plan, ses images, ses couleurs et la place de ses options sans toucher au moteur.

## Code source des écrans gratuit

Le code source du guichet, de la borne, de la caisse du train, du site d'achat, des tableaux et du serveur de bord est gratuit : copiez-le, mettez-y votre marque, faites-en votre propre réseau.
### Six écrans complets
Guichet, borne et caisse du train en WPF ; site d'achat, tableaux et serveur de bord en ASP.NET Core et Blazor.
### Un seul plan, partout
Le plan du réseau vient du moteur et d'une seule source : aucun écran ne code la position d'une gare. Changez vos lignes, le plan suit.
### Prêt pour votre agent de code
Chaque exemple vient avec son `AGENTS.md`, et la compétence `stilldeep-pos-screen` donne à un agent de code les étapes pour adapter les écrans à votre commerce. Décrivez ce que vous voulez : l'agent modifie les écrans, le moteur garde les règles.

D'autres usages vous intéressent ? Une navette, un traversier, un festival : voyez [ce que les modules permettent ensemble](https://stilldeeppos.com/fr/combinaisons.md).
## Questions sur l'exemple du train

### Quel logiciel pour vendre des billets de train, de navette ou de traversier ?
Le [module Transport](https://stilldeeppos.com/fr/modules/transport.md) : lignes, arrêts, grille de prix, sièges et départs. Cet exemple le montre sur un train ; [une navette ou un traversier](https://stilldeeppos.com/fr/combinaisons.md) s'appuie sur le même moteur, avec vos écrans.

### Est-ce un logiciel fini ?
C'est un exemple : il fonctionne tel quel, et il est fait pour être modifié. Gardez ce qui vous sert, changez le reste, ou écrivez vos propres écrans sur le même moteur.

### Faut-il les deux modules ?
Non. Transport vend les billets et fait tourner les départs ; Boutique sert au dépanneur, au guichet et à bord. Sans dépanneur, Transport suffit.

### Puis-je y mettre mes propres lignes ?
Oui. Les arrêts, les lignes, les tarifs, les saisons, les classes et les départs se règlent dans l'Admin, et le plan se dessine à partir du réseau.

### Que se passe-t-il entre deux gares ?
Le train perd le réseau et rien ne se ferme : la vente, la validation et la carte continuent à bord. Tout part au serveur à la prochaine gare.

### Et si le serveur à terre tombe ?
Les postes passent hors ligne et continuent de vendre depuis leur copie. Le tableau dit `Liaison perdue` avec l'heure de ses horaires, la borne renvoie au guichet, et tout revient seul au retour du serveur, sans recharger la page.

### Que devient une vente déjà payée ?
Le poste la tient ouverte. Au guichet et à la caisse, elle attend l'employé. À la tablette, un bandeau dit `Une vente payée attend`, avec `Terminer la vente` ou `Rendre le paiement`. À la borne, le client est envoyé au guichet et la borne se met hors service.

### Peut-on le faire tourner sous Linux ou sur un Mac ?
Le serveur tourne sous Windows, Linux et macOS, et le serveur de bord sous Windows et Linux. Les trois postes WPF sont pour Windows seulement. Le site d'achat et les tableaux s'ouvrent dans n'importe quel navigateur.

### La démo web est-elle réelle ?
Oui. Le bureau web fait tourner de vrais postes, un par fenêtre : guichets, bornes, caisses et tablettes, avec des trains qui roulent sur le plan et une vraie coupure entre deux gares. Le site d'achat est lui aussi un vrai poste de l'exemple. Tous sont branchés à leur propre serveur et à leur propre base de données. Le paiement par carte est en mode test : rien n'est débité.

### L'exemple du train est-il gratuit ?
Oui. Le code source des écrans est gratuit. Le prix et l'achat en ligne des modules ouvrent en janvier 2027 ; développeurs, écoles et OBNL peuvent demander le [programme gratuit](https://stilldeeppos.com/fr/programme-gratuit.md).
