> 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/custom-connector/reference-de-script-des-connecteurs-personnalises.md).

# Référence de script des connecteurs personnalisés

Chaque endpoint enregistrable exposé par le runtime de scripting du tenant, regroupé selon sa fonction et lié à une page dédiée lorsqu’elle existe.

[Connecteurs personnalisés](https://docs.thewalletcrew.io/developers-guides/integration-guides/custom-connectors) présente le modèle customer-provider et Carte-updater utilisé par la plupart des intégrations, ainsi que les variables globales approuvées disponibles pour chaque script (`fetch`, `console`, `getSecret`, et le reste). Cette page répertorie tous les autres points de terminaison enregistrables exposés par l'exécution, y compris des hooks plus étroits qui n'ont pas de procédure dédiée ailleurs. Certains nécessitent un câblage supplémentaire — une étape de flux, une tâche planifiée, une entrée de fichier de configuration — et sont documentés sur la page affichée dans le tableau ci-dessous. Les cinq qui ne nécessitent aucun câblage supplémentaire ont chacune leur propre page ici.

{% hint style="success" %}
L'éditeur de configuration avancée génère l'autocomplétion et la documentation intégrée pour chaque point de terminaison enregistrable — ses paramètres et son type de retour — directement à partir de l'exécution. C'est la référence faisant autorité, toujours à jour, pour l'interface de scripting ; utilisez cette page pour découvrir ce qui existe.
{% endhint %}

## Points de terminaison enregistrables

Chaque point de terminaison ci-dessous s'enregistre de la même manière, à partir de l'export par défaut d'un script :

```js
export default function (context) {
  context.register('<registration key>', {
    // une ou plusieurs fonctions gestionnaires
  });
}
```

| Clé d'enregistrement                                    | Fonction(s)                                                                                                        | Nécessite un câblage supplémentaire                                                             | Documenté sur                                                                                                                                                                                                                                                          |
| ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `runtime.scriptable.customerProvider.{scriptId}`        | `Fill(entity)`                                                                                                     | Oui — un `customerProviders` entrée de type `script` dans la configuration du flux de processus | [Connecteurs personnalisés](https://docs.thewalletcrew.io/developers-guides/integration-guides/custom-connectors)                                                                                                                                                      |
| `runtime.wallet.CarteUpdater`                           | `OnCarteCreating`, `OnCarteCreated`, `OnCarteUpdating`, `OnCarteUpdated`, `OnCarteInstalled`, `OnCarteUninstalled` | No                                                                                              | [Connecteurs personnalisés](https://docs.thewalletcrew.io/developers-guides/integration-guides/custom-connectors), [Hooks d'installation et de désinstallation de Carte](https://docs.thewalletcrew.io/connectors/custom-connector/installation-changed-extensibility) |
| `runtime.scriptable.customerPipelineElement.{scriptId}` | `CreateOrUpdate(entity)`                                                                                           | Oui — utilisé comme un `script`étape de type - dans un flux d'inscription client                | [Connecteurs personnalisés](https://docs.thewalletcrew.io/developers-guides/integration-guides/custom-connectors)                                                                                                                                                      |
| `runtime.scriptable.pushUpdates.{scriptId}`             | `GetCartes()`                                                                                                      | Oui — une tâche planifiée faisant référence au nom du script                                    | [Connecteurs personnalisés](https://docs.thewalletcrew.io/developers-guides/integration-guides/custom-connectors)                                                                                                                                                      |
| `runtime.scriptable.emailEngine`                        | `SendEmail(recipient, template, data, cultures, buildEmail)`                                                       | Oui — `/server/emails.yml` provider défini sur `script`                                         | [extensibilité d'EmailSender](https://docs.thewalletcrew.io/connectors/custom-connector/emailsender-extensibility)                                                                                                                                                     |
| `runtime.scriptable.scriptableAccountValidator`         | `Validate(account)`                                                                                                | No                                                                                              | [Validation de compte](/connectors/fr/custom-connector/reference-de-script-des-connecteurs-personnalises/validation-de-compte.md)                                                                                                                                      |
| `runtime.emailAccountChallenger.templateFinder`         | `GetEmailTemplate(data, defaultTemplateName)`                                                                      | No                                                                                              | [Sélection du modèle de défi e-mail](/connectors/fr/custom-connector/reference-de-script-des-connecteurs-personnalises/selection-du-modele-de-challenge-par-e-mail.md)                                                                                                 |
| `runtime.wallet.linkUrlEnricher`                        | `Enrich(url, context)`                                                                                             | No                                                                                              | [Enrichissement de l'URL du lien Wallet](/connectors/fr/custom-connector/reference-de-script-des-connecteurs-personnalises/enrichissement-de-lurl-du-lien-wallet.md)                                                                                                   |
| `runtime.import.updateCartes.rowTransformer`            | `GetThroughput(fileName)`, `Transform(row)`                                                                        | No                                                                                              | [Transformation des lignes de mise à jour groupée de Carte](/connectors/fr/custom-connector/reference-de-script-des-connecteurs-personnalises/transformation-des-lignes-de-mise-a-jour-groupee-de-carte.md)                                                            |
| `runtime.benefit.benefitProvider`                       | `GetBenefits(passId, passType, identifiers)`                                                                       | No                                                                                              | [Fournisseur d'avantages](/connectors/fr/custom-connector/reference-de-script-des-connecteurs-personnalises/fournisseur-davantages.md)                                                                                                                                 |

{% hint style="warning" %}
Si aucun script n'enregistre un point de terminaison donné, le comportement par défaut de la plateforme s'applique et rien n'échoue. Si un script enregistre un point de terminaison mais omet une méthode qu'il doit implémenter, l'appel échoue lorsque cette méthode est atteinte. Si un fichier de script comporte une erreur de syntaxe, aucun des points de terminaison de script de ce locataire ne se charge — pas seulement ceux du fichier défectueux. Et lorsque deux fichiers enregistrent la même clé, le dernier chargé l'emporte, silencieusement.
{% endhint %}

## Connecteurs basés sur SOAP

Cegid Retail Y2 et UR exposent leurs API SOAP derrière leur propre intercepteur de requêtes — `extensions.cegid.y2.connectionInterceptor` et `extensions.cegid.ur.connectionInterceptor` — utilisé pour inspecter ou modifier chaque appel sortant, le plus souvent pour injecter un en-tête d'authentification depuis le coffre-fort de secrets. Il est spécifique à ces deux connecteurs plutôt qu'à un hook disponible pour n'importe quel connecteur personnalisé, donc il est documenté dans [la référence de scripting de Cegid](https://docs.thewalletcrew.io/connectors/pos/cegid/developer-reference/scripting-reference) plutôt qu'ici.

## FAQ

<details>

<summary><strong>Cette page remplace-t-elle l'autocomplétion de l'éditeur de configuration avancée ?</strong></summary>

Non. L'éditeur génère sa documentation directement à partir de l'exécution, il reflète donc toujours exactement la version actuelle. Cette page est un index sélectionné, destiné à être lu avant d'ouvrir l'éditeur, afin de rendre les points de terminaison faciles à découvrir, alors qu'ils seraient autrement faciles à manquer.

</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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.thewalletcrew.io/connectors/fr/custom-connector/reference-de-script-des-connecteurs-personnalises.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
