---
title: "Flows de secours"
description: "Configurez des flows de secours locaux dans Adapty pour que votre flow reste visible lorsque l'appareil est hors ligne."
---

Pour maintenir une expérience utilisateur fluide, il est important de configurer des **versions de secours** de vos [flows](adapty-flow-builder).

Lorsque votre application demande un flow, le SDK Adapty contacte nos serveurs pour en récupérer la configuration. Si l'appareil ne peut pas atteindre Adapty (problème réseau, panne de serveur), le SDK bascule sur les données locales :

- Si l'utilisateur a déjà vu le flow une fois, le SDK utilise la copie en cache.
- Si aucun cache n'existe, le SDK charge un fichier de configuration de secours inclus dans l'application.

Adapty génère automatiquement ces fichiers de secours. Le bundle de secours des flows est partagé avec les paywalls — un seul fichier JSON par plateforme contient les variantes de secours pour les deux. Le SDK lit la section dont il a besoin.

:::important
Les flows de secours sont inclus dans le bundle du **SDK Adapty 4.0+**. Si vous sélectionnez une version antérieure du SDK dans la boîte de dialogue de téléchargement, le fichier ne contient que les variantes de paywall et d'onboarding — sans flows. Assurez-vous que votre application utilise une version du SDK compatible avec les flows avant de compter sur un flow de secours.
:::

## Avant de commencer \{#before-you-start\}

1. Créez un [flow](adapty-flow-builder) dans le Flow Builder.
2. [Créez un placement](create-placement) pour le flow.

## Télécharger le fichier de secours \{#download-the-fallback-file\}

1. Ouvrez la page **[Placements](https://app.adapty.io/placements)**.
2. Cliquez sur le bouton **Fallbacks** en haut à droite.
3. Sélectionnez la plateforme cible dans le menu déroulant.
4. Choisissez la version du SDK correspondant à celle intégrée dans votre application. Sélectionnez **Adapty SDK v4.0.0 and higher** (ou une option ultérieure) pour recevoir un bundle qui inclut les flows.

Le navigateur télécharge un fichier JSON par plateforme — par exemple, `ios_4_0_0_fallback.json`.

<details>
   <summary>Exemple d'entrée de flow de secours (cliquer pour développer)</summary>

```json
"PLACEMENT_ID": {
  "data": [
    {
      "developer_id": "PLACEMENT_ID",
      "variation_id": "cb1c0ef8-aecd-4a53-a6f3-b98266e66884",
      "flow_id": "daf25858-3fa2-4981-8500-9c8a30e5b7e6",
      "flow_name": "FLOW_NAME",
      "flow_version_id": "FLOW_VERSION_ID",
      "placement_audience_version_id": "a9eb3ab8-3178-477d-84d4-ef9d3978e48b",
      "audience_name": "All Users",
      "ab_test_name": "",
      "cross_placement_info": null,
      "weight": 100,
      "variations": [
        {
          "variation_id": "cb1c0ef8-aecd-4a53-a6f3-b98266e66884",
          "paywall_id": "PAYWALL_ID",
          "paywall_name": "PAYWALL_NAME",
          "ab_test_name": "",
          "products": [],
          "revision": 1,
          "custom_payload": null,
          "weight": 100
        }
      ],
      "remote_configs": []
    }
  ],
  "meta": {
    "placement": {
      "developer_id": "PLACEMENT_ID",
      "is_tracking_purchases": true,
      "audience_name": "All Users",
      "placement_audience_version_id": "a9eb3ab8-3178-477d-84d4-ef9d3978e48b",
      "revision": 0,
      "ab_test_name": ""
    }
  }
}
```

La structure exacte peut changer entre les versions du SDK. Utilisez toujours le fichier généré par Adapty pour votre version du SDK plutôt que d'en créer un manuellement.
</details>

## Après le téléchargement \{#after-the-download\}

Ajoutez le fichier à votre code applicatif, puis suivez le guide de configuration propre à chaque plateforme. Les mêmes API qui chargent les paywalls de secours chargent également les flows de secours dès que votre application utilise une version du SDK compatible avec les flows :

- [iOS](ios-use-fallback-paywalls)
- [Android](android-use-fallback-paywalls)
- [React Native](react-native-use-fallback-paywalls)
- [Capacitor](capacitor-use-fallback-paywalls)

## Limitations \{#limitations\}

Les flows de secours sont codés en dur et stockés localement, ils ne disposent donc pas de toutes les capacités dynamiques des flows en ligne :

- **Une seule variante par placement.** Si un placement possède plusieurs flows (audiences différentes, variantes de test A/B), le fichier de secours utilise la variante avec le poids le plus élevé, ou l'audience la plus large.
- **Pas de test A/B.** Un test A/B de flow en ligne est résolu côté serveur ; le secours sert toujours une seule variante choisie.
- **Pas de mises à jour à distance.** La mise à jour du fichier de secours nécessite une nouvelle version de l'application. Pour les mises à jour que vous feriez normalement via Remote Config, effectuez-les plutôt via le flow en ligne.
- **Locale par défaut uniquement.** Le secours utilise la locale `en` ; les variantes localisées ne sont pas incluses dans le bundle.