> For the complete documentation index, see [llms.txt](https://docs.thewalletcrew.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.thewalletcrew.io/connectors/fr/ticketing/aparte/distribution.md).

# Distribution

### Pourquoi la distribution est importante

Un billet Wallet n’est utile que si le point d’entrée est facile à ouvrir et digne de confiance. La distribution Aparté commence généralement juste après l’achat, sur la page de confirmation, dans l’e-mail de confirmation, ou plus tard depuis une page de compte.

The Wallet Crew prend en charge deux modèles pratiques. Un modèle utilise des pages de billets hébergées. L’autre utilise le SDK sur un site web contrôlé par la marque ou le partenaire.

<details>

<summary><strong>Exemples concrets</strong></summary>

* **E-mail de confirmation**: un lien hébergé ouvre la liste des billets pour la réservation.
* **Ma page des billets**: un bouton SDK apparaît à côté de chaque ligne de billet.
* **Parcours de rappel**: le même lien hébergé est réutilisé avant l’événement.

</details>

### Envoyer des billets depuis un e-mail

L’e-mail est le canal de distribution Aparté le plus courant. Il fonctionne bien lorsque le parcours de billetterie envoie déjà un e-mail d’achat ou de rappel.

The Wallet Crew propose des pages hébergées qui détectent l’appareil et ouvrent le bon flux Wallet. Sur mobile, la page affiche l’action native Apple Wallet ou Google Wallet. Sur ordinateur, elle bascule sur un code QR.

Utilisez toujours un domaine personnalisé pour ces liens. Cela maintient la visibilité de l’image de marque de l’organisateur et évite d’exposer aux clients un domaine générique de The Wallet Crew.

Pour le modèle complet d’e-mail, voir [Par e-mail](https://github.com/TheWalletCrew/docs/tree/main/enroll/via-email/README.md).

#### Lien vers plusieurs billets

Utilisez la page `billets` hébergée lorsqu’un élément de commande Aparté résout plusieurs billets.

```
https://<customdomain>/<tenantId>/tickets?ids.aparte.orderItemId=<orderItemId>&ids.aparte.orderItemId.hmac=<hmac>
```

`ids.aparte.orderItemId` est l’identifiant multi-billets. Le HMAC correspondant signe exactement cette valeur.

Cette page liste chaque billet résolu à partir de cet élément de commande Aparté. C’est le point d’entrée standard pour un parcours de confirmation de commande lorsque plusieurs billets doivent être exposés depuis un seul flux de réservation.

Un exemple de QA suit la même structure :

```
https://app-qa.neostore.cloud/<tenantId>/tickets?ids.aparte.orderItemId=1956141&ids.aparte.orderItemId.hmac=<hmac>
```

#### Lien vers un billet unique

Utilisez la page `billet` page lorsque le parcours doit ouvrir directement un billet précis.

```
https://<customdomain>/<tenantId>/ticket?id.aparte.ticketId=<orderItemId>%7C<seatId>&id.aparte.ticketId.hmac=<hmac>
```

`id.aparte.ticketId` est l’identifiant de billet unique. Sa valeur est `<orderItemId>|<seatId>`.

L’encodage du séparateur comme `%7C` est plus sûr que de laisser un `|` brut dans l’URL. Le HMAC doit correspondre à la valeur exacte utilisée dans le lien.

Un exemple de QA suit le même modèle :

```
https://app-qa.neostore.cloud/<tenantId>/ticket?id.aparte.ticketId=1956141%7C29737860&id.aparte.ticketId.hmac=<hmac>
```

#### Notes d’implémentation pour les e-mails

Trois règles sont importantes pour la fiabilité. Calculez le HMAC côté serveur. Utilisez toujours un domaine personnalisé configuré, pas `localhost`. Conservez l’URL complète dans l’outil d’e-mail afin qu’aucun paramètre de requête ne soit tronqué ou réécrit.

### Ajouter le bouton sur un site web avec le SDK

Utilisez le SDK lorsque la marque ou le partenaire contrôle la page où le billet est affiché. Les emplacements typiques sont une page de confirmation de commande, un compte client ou une liste de billets dédiée.

Le SDK gère la détection de l’appareil et affiche la bonne action Wallet. La partie spécifique à Aparté est le contrat d’identifiant transmis au SDK.

Pour le modèle complet d’intégration au site web, voir [Sur votre site web](https://github.com/TheWalletCrew/docs/tree/main/enroll/on-your-website.md).

#### Modèle SDK pour un seul billet

Pour un billet, la page doit résoudre l’identifiant Aparté dans le même format que l’URL hébergée d’un seul billet.

Utilisez `aparte.ticketId` comme identifiant externe. Sa valeur est `<orderItemId>|<seatId>`. Le HMAC correspondant doit être généré côté serveur à partir de cette valeur exacte.

C’est le modèle à utiliser lorsqu’un bouton Wallet est affiché pour une carte de billet ou une ligne de billet.

#### Modèle de site web à plusieurs billets

Pour une page qui affiche plusieurs billets, deux modèles fonctionnent bien.

Le premier modèle affiche un bouton SDK par billet. C’est utile sur une **Mes billets** page authentifiée.

Le second modèle renvoie vers la page `/tickets` hébergée en utilisant `ids.aparte.orderItemId`. C’est généralement plus simple sur une page de confirmation, car un seul lien peut exposer la liste complète des billets résolus à partir de l’élément de commande.

### Notes de sécurité

La distribution Aparté repose sur des identifiants signés. Le HMAC doit rester côté serveur et ne doit jamais être généré dans le code du navigateur.

La valeur de l’identifiant et la valeur signée doivent rester identiques. Si l’identifiant du billet est signé comme `<orderItemId>|<seatId>`, l’URL distribuée doit réutiliser exactement cette valeur. Si le pipe est encodé dans l’URL dans le lien final, le HMAC signe toujours la valeur logique de l’identifiant, et non un identifiant de billet différent.

### FAQ

<details>

<summary><strong>Quelle est la différence entre <code>id.aparte.ticketId</code> et <code>ids.aparte.orderItemId</code>?</strong></summary>

`id.aparte.ticketId` cible un billet précis.

`ids.aparte.orderItemId` cible le flux de liste hébergé et résout les billets associés à cet élément de commande Aparté.

</details>

<details>

<summary><strong>Pourquoi faut-il toujours utiliser un domaine personnalisé ?</strong></summary>

Un domaine personnalisé maintient la visibilité de l’image de marque de l’organisateur pendant le parcours Wallet.

Cela évite d’exposer aux clients un domaine générique de The Wallet Crew et crée une expérience plus cohérente entre l’événement, l’e-mail et la page Wallet hébergée.

</details>

<details>

<summary><strong>Le même lien e-mail peut-il exposer plusieurs billets ?</strong></summary>

Oui.

Utilisez la page `/tickets` page avec `ids.aparte.orderItemId` et son HMAC correspondant.

</details>

<details>

<summary><strong>Quand faut-il préférer le SDK à la page hébergée ?</strong></summary>

Utilisez le SDK lorsque la page est entièrement contrôlée et que l’action Wallet doit s’afficher en ligne.

Utilisez la page hébergée lorsque la distribution par e-mail ou un lien partagé unique est plus simple.

</details>

<details>

<summary><strong>Que se passe-t-il sur ordinateur au lieu de mobile ?</strong></summary>

La page hébergée détecte automatiquement l’appareil.

Sur mobile, elle présente l’action Wallet native. Sur ordinateur, elle bascule sur un code QR afin que la Carte puisse toujours être ouverte depuis un téléphone.

</details>

<details>

<summary><strong>Le HMAC doit-il être généré dans le navigateur ?</strong></summary>

Non.

Le HMAC doit toujours être généré côté serveur. Une signature côté navigateur exposerait le secret et affaiblirait le flux de distribution.

</details>

<details>

<summary><strong>Qu’est-ce qui casse généralement un lien Aparté signé ?</strong></summary>

Le problème le plus courant est un décalage entre la valeur de l’identifiant et la valeur signée.

Cela peut arriver si un séparateur change, si un paramètre de requête est réécrit par l’outil d’e-mail, ou si le lien final ne réutilise pas l’identifiant exact qui a été signé.

</details>

<details>

<summary><strong>Quand faut-il préférer la page hébergée <code>/tickets</code> à plusieurs liens vers un seul billet ?</strong></summary>

Utilisez `/tickets` lorsqu’un seul flux de réservation doit exposer plusieurs billets ensemble.

Cela simplifie l’e-mail ou la page de confirmation et permet à un seul lien signé de résoudre la liste complète des billets associés à l’élément de commande Aparté.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.thewalletcrew.io/connectors/fr/ticketing/aparte/distribution.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
