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

# Droit Framer

> Débloquez un lien de remix de modèle Framer pour les clients payants.

<Info>
  Le droit Framer débloque un lien de remix de modèle Framer pour les clients payants. Vous téléchargez le modèle sur Dodo Payments, attachez le droit à un produit, et les clients reçoivent un lien de remix qui leur permet de cloner le modèle dans leur propre compte Framer.
</Info>

## Ce qui est livré

* Un lien de remix unique vers le modèle Framer que vous avez téléchargé.
* Le client clique sur le lien pour remixer le modèle dans son propre espace de travail Framer.
* En cas d'annulation ou de remboursement, le lien de remix devient invalide.

Les usages courants incluent les modèles de page de destination Framer payants, les kits de portfolio et les bibliothèques de composants.

## Connecter Framer

Framer est connecté implicitement la première fois que vous créez un droit de modèle. Il n'y a pas de processus OAuth séparé.

<Steps>
  <Step title="Open Entitlements">
    Dans votre tableau de bord Dodo Payments, allez dans **Droits** et cliquez sur **+**.
  </Step>

  <Step title="Pick Framer">
    Choisissez **Modèle Framer** comme l'intégration.
  </Step>

  <Step title="Grab the remix link from Framer">
    Ouvrez votre projet Framer. Dans le menu en haut à gauche, allez dans **Fichier → Copier le lien de Remix**. Cela génère une URL de remix publique qui permet à quiconque de cloner le projet dans son propre compte Framer — le lien que Dodo Payments partagera avec les clients payants.

    <Frame caption="Framer File menu: click Copy Remix Link to copy the template's remix URL.">
      <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/framer/copy-remix-link.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=a0e1e4d5c9cc0a88ca5dbf059a4d2329" alt="Menu Fichier Framer avec l'option Copier le lien de Remix mise en évidence" style={{ maxHeight: '500px', width: 'auto' }} width="906" height="1488" data-path="images/entitlements/framer/copy-remix-link.png" />
    </Frame>
  </Step>

  <Step title="Add the template and create the entitlement">
    Retournez dans le tableau de bord Dodo Payments, choisissez le modèle dans le menu déroulant **Modèle**. La première fois que vous faites cela pour un nouveau modèle, collez le lien de remix que vous avez copié pour l'enregistrer. Donnez un **nom** au droit et cliquez sur **Créer un Droit**.

    <Frame>
      <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/framer/create.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=f3b5bfdb1092047e06f4eeba03d7bddf" alt="Formulaire de droit de modèle Framer avec sélection de modèle et champ de nom" style={{ maxHeight: '500px', width: 'auto' }} width="2000" height="1130" data-path="images/entitlements/framer/create.png" />
    </Frame>

    Dodo Payments enregistre le modèle et renvoie un `framer_template_id` que vous pouvez référencer de manière programmatique.
  </Step>
</Steps>

## Flux client

1. Le client termine le paiement.
2. Dodo Payments crée un `pending` mandat et émet un lien de remix unique lié à ce client.
3. Le mandat passe à `delivered` une fois le lien de remix fourni, et le lien est inclus dans l'e-mail et le portail du client.
4. Le client clique sur le lien, se connecte à Framer et remixe le modèle.
5. En cas de révocation, le lien de remix est invalidé. Les copies déjà remixées dans le compte Framer du client restent, car Framer n'expose pas de moyen de les révoquer.

## Configuration requise

| Champ                | Requis | Description                                                 |
| -------------------- | ------ | ----------------------------------------------------------- |
| `framer_template_id` | Oui    | L'ID du modèle retourné lorsque vous téléchargez le modèle. |

## Créer via API

<CodeGroup>
  ```typescript TypeScript theme={null} theme={null}
  const entitlement = await client.entitlements.create({
    name: 'Portfolio Kit',
    integration_type: 'framer',
    integration_config: {
      framer_template_id: 'tmpl_abc123',
    },
  });
  ```

  ```python Python theme={null} theme={null}
  client.entitlements.create(
      name="Portfolio Kit",
      integration_type="framer",
      integration_config={"framer_template_id": "tmpl_abc123"},
  )
  ```

  ```go Go theme={null} theme={null}
  client.Entitlements.New(ctx, dodopayments.EntitlementNewParams{
    Name:            dodopayments.F("Portfolio Kit"),
    IntegrationType: dodopayments.F(dodopayments.EntitlementIntegrationTypeFramer),
    IntegrationConfig: dodopayments.F[dodopayments.IntegrationConfigUnionParam](
      dodopayments.IntegrationConfigFramerConfigParam{
        FramerTemplateID: dodopayments.F("tmpl_abc123"),
      },
    ),
  })
  ```
</CodeGroup>

## Notifications

Voir [`entitlement_grant.*` événements de notification](/developer-resources/webhooks/intents/entitlement-grant). Les mandats Framer arrivent `pending` et passent à `delivered` une fois le lien de remix fourni.

## Résolution des problèmes

<AccordionGroup>
  <Accordion title="Customer's remix link doesn't work">
    Le lien de remix est à usage unique et lié au client. S'il a effacé le lien avant de remixer, révoquez le mandat et émettez-le à nouveau.
  </Accordion>

  <Accordion title="Refunded customer still has a remixed copy">
    C'est prévu. Framer considère un remix comme le projet propre du client une fois cloné. Dodo Payments invalide le lien original mais ne peut pas supprimer les copies dans le compte du client.
  </Accordion>
</AccordionGroup>

<AccordionGroup>
  <Accordion title="Customer's remix link doesn't work">
    The remix link is single-use and tied to the customer. If they cleared the link before remixing, revoke the grant and reissue.
  </Accordion>

  <Accordion title="Refunded customer still has a remixed copy">
    This is expected. Framer treats a remix as the customer's own project once it's cloned; Dodo Payments invalidates the original link but cannot delete copies in the customer's account.
  </Accordion>
</AccordionGroup>
