> ## Documentation Index
> Fetch the complete documentation index at: https://storekit.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Pay at Table

> Comment storekit lit le check Comtrex ouvert d'une table, permet au client de le régler depuis son téléphone et renvoie le paiement à la caisse.

Avec Comtrex, le pay at table fonctionne directement sur les checks ouverts de la caisse. Quand un client scanne le QR code de sa table, storekit demande au serveur Comtrex le check ouvert sur cette table, l'affiche au client, prend le paiement, puis envoie le paiement sur le check pour qu'il se clôture sur la caisse.

## Prérequis

* [Comtrex connecté](/docs/fr/guides/integrations/pos/comtrex/connect) avec **Payment Type ID** (et **Tip ID** si vous acceptez les pourboires) associés
* Chaque table possède son numéro de table Comtrex dans **POS ID** — voir [Service sur place : tables](/docs/fr/guides/integrations/pos/comtrex/dine-in)
* Pay at table activé pour l'établissement — voir [Vue d'ensemble du Pay at Table](/docs/fr/guides/pay-at-table/overview)

## Comment une addition est récupérée

```mermaid theme={null}
sequenceDiagram
    participant G as Client
    participant S as storekit
    participant C as Serveur Comtrex
    G->>S: Scan du QR de table
    S->>C: ListOrders (checks pour cette table)
    C-->>S: Check ouvert + GuestCheckNumber
    S->>C: Détails de la commande (articles, paiements)
    C-->>S: Articles, totaux, paiements déjà effectués
    S-->>G: Addition à payer
```

1. storekit appelle `ListOrders` du serveur Comtrex pour le POS ID de la table et sélectionne le check ouvert sur cette table.
2. Il charge ensuite le détail du check — articles, quantités, prix, remises, frais de service et les paiements déjà pris sur la caisse.
3. L'addition est enregistrée dans storekit contre le `GuestCheckNumber` du check et affichée au client.
4. Chaque fois que le client actualise, storekit relit le check pour que les articles ajoutés par le personnel depuis la dernière consultation apparaissent.

S'il n'y a pas de check ouvert sur cette table, le client voit un message « aucune addition ouverte » et ne peut pas payer — il doit demander au personnel d'ouvrir un check (ou passer d'abord une commande si l'établissement propose aussi la commande à table).

> [!NOTE]
>
> Seuls les checks que la caisse remonte comme ouverts sont pris en compte. Une fois qu'un check est fermé sur la caisse — payé en totalité, annulé ou transféré — il disparaît de la liste storekit lors de la prochaine actualisation et son addition est marquée close.

## Prendre le paiement

Le client paie le montant total ou une partie — par articles, réparti équitablement entre les personnes, ou un montant choisi ; ce sont les options de partage standard storekit et ne dépendent pas de la caisse — en ajoutant éventuellement un pourboire. Plusieurs clients peuvent régler le même check depuis leurs propres téléphones.

Lorsqu'un paiement réussit, storekit envoie un `UpdateExistingOrder` au check avec :

* Un paiement du montant payé (plus le pourboire) en utilisant votre media **Payment Type ID**
* S'il y a un pourboire, une ligne de pourboire pour le montant du pourboire en utilisant votre media **Tip ID**

La caisse affiche alors le paiement sur le check. storekit relit également chaque paiement du check, pour que les paiements pris par le personnel sur la caisse entre-temps réduisent ce qui est demandé au client. Quand la somme des paiements atteint le total du check, la caisse ferme le check ; storekit le détecte lors de sa prochaine vérification de statut et marque l'addition close.

> [!WARNING]
>
> **Tip ID** est requis pour envoyer les pourboires. S'il n'est pas associé, le pourboire est quand même prélevé au client et affiché dans storekit, mais seul le montant de l'addition parvient à la caisse — le pourboire n'apparaîtra pas sur le check.

### Si le paiement ne peut pas être envoyé

L'envoi du paiement à la caisse est retenté automatiquement — jusqu'à 20 tentatives, espacées de 5 secondes — pour surmonter les courtes interruptions réseau. Si la caisse ne l'a toujours pas accepté après la dernière tentative, storekit **annule le paiement carte du client** (en le remboursant), marque le paiement **Failed** et envoie un email à l'établissement à propos de la synchronisation échouée. Le check reste ouvert sur la caisse sans paiement enregistré, pour que le personnel puisse reprendre le paiement.

Pour les paiements qui ont atteint la carte du client mais pas la caisse d'une autre manière, le support storekit peut renvoyer le paiement au check — contactez le support avec la référence de l'addition.

## Ajouter des commandes à un check ouvert

Si un établissement propose à la fois la commande et le paiement à table, un client qui a ouvert l'addition de sa table dans storekit et commande ensuite à nouveau voit les nouveaux articles ajoutés à ce check Comtrex avec `UpdateExistingOrder`, plutôt qu'un second check soit ouvert. Le client voit une seule addition contenant tout ce qui a été commandé à la table, depuis storekit ou par le personnel, et la règle en une fois.

Les commandes passées sans addition ouverte dans storekit ouvrent toujours un nouveau check. Il n'y a pas de paramètre dans le dashboard pour Comtrex qui achemine toutes les commandes sur place vers le check existant de la table — si vous avez besoin de ce comportement, contactez le support.

> [!NOTE]
>
> Si la caisse refuse les articles ajoutés, la commande est marquée en échec comme n'importe quelle autre commande Comtrex. **Resend order to POS** sur la page de commande renvoie les articles au même check.

## Vérifier les paiements dans le dashboard

Allez dans **Tables** dans le menu de gauche et choisissez l'établissement. **Open bills** liste les tables avec une addition en cours ; **closed bills** liste les additions qui ont été payées ou fermées sur la caisse. Cliquez sur **View payments** sur une addition pour voir chaque paiement, son pourboire et son statut. Les paiements qui n'ont jamais atteint la caisse apparaissent en échec. Pour plus de détails, voir [Vérifier le statut d'un paiement Pay at Table](/docs/fr/guides/pay-at-table/checking-payments).

## Ce que Comtrex Pay at Table ne fait pas

* **Les paiements pris sur la caisse ne se remboursent pas via storekit.** storekit ne rembourse que les paiements qu'il a pris lui-même.
* **Pas de terminaux carte.** Les paiements sont des paiements carte sur le téléphone du client ; storekit ne pilote pas les propres terminaux de paiement de Comtrex.
* **Les partages par article ne sont pas reflétés sur la caisse.** Quand un client paie pour des articles spécifiques, la caisse reçoit un paiement pour ce montant sur le check — elle ne marque pas ces articles comme payés.

## Étapes suivantes

> **[Dépannage](/docs/fr/guides/integrations/pos/comtrex/troubleshooting)**
>
> Additions qui n'apparaissent pas, paiements qui n'atteignent pas la caisse

> **[Vue d'ensemble du Pay at Table](/docs/fr/guides/pay-at-table/overview)**
>
> Configurer le pay at table dans storekit


## Related topics

- [TISSL](/docs/fr/guides/integrations/pos/tissl.md)
- [PointOne](/docs/fr/guides/integrations/pos/pointone/overview.md)
- [Lightspeed K-Series](/docs/fr/guides/integrations/pos/lightspeed/overview.md)
- [Toast Pay at Table](/docs/fr/guides/integrations/pos/toast/pay-at-table.md)
- [Pay at Table Lightspeed](/docs/fr/guides/integrations/pos/lightspeed/pay-at-table.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.