> ## 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.

# Framer Entitlement

> Lås upp en remixlänk för Framer-mall för betalande kunder.

<Info>
  Framer-entitlement låser upp en remixlänk till en Framer-mall för betalande kunder. Du laddar upp mallen till Dodo Payments, kopplar rätten till en produkt, och kunderna får en remixlänk som låter dem klona mallen till sitt eget Framer-konto.
</Info>

## Vad som levereras

* En unik remixlänk till Framer-mallen du laddade upp.
* Kunden klickar på länken för att remixa mallen till sin egen Framer-arbetsyta.
* Vid avbokning eller återbetalning blir remix-länken ogiltig.

Vanliga användningsområden inkluderar betalade Framer-mallar för landningssidor, portföljkit och komponentbibliotek.

## Anslut Framer

Framer ansluts implicit första gången du skapar en mallrättighet. Det finns inget separat OAuth-steg.

<Steps>
  <Step title="Open Entitlements">
    I din Dodo Payments-panel, gå till **Entitlements** och klicka på **+**.
  </Step>

  <Step title="Pick Framer">
    Välj **Framer Template** som integration.
  </Step>

  <Step title="Grab the remix link from Framer">
    Öppna ditt Framer-projekt. Från menyn uppe till vänster, gå till **File → Copy Remix Link**. Detta ger en offentlig remix-URL som låter vem som helst klona projektet till sitt eget Framer-konto — länken som Dodo Payments kommer dela med betalande kunder.

    <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="Framer File menu with Copy Remix Link option highlighted" 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">
    Tillbaka i Dodo Payments-panelen, välj mallen från **Template**-rullgardinsmenyn. Första gången du gör detta för en ny mall, klistra in remixlänken du kopierade för att registrera den. Ge rättigheten ett **namn** och klicka på **Create Entitlement**.

    <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="Framer template entitlement form with template picker and name field" style={{ maxHeight: '500px', width: 'auto' }} width="2000" height="1130" data-path="images/entitlements/framer/create.png" />
    </Frame>

    Dodo Payments registrerar mallen och returnerar en `framer_template_id` som du kan referera programmatiskt.
  </Step>
</Steps>

## Kundflöde

1. Kunden slutför kassan.
2. Dodo Payments skapar en `pending`-bidrag och utfärdar en unik remixlänk kopplad till den kunden.
3. Bidraget övergår till `delivered` när remix-länken tillhandahålls och länken inkluderas i kundens e-post och portal.
4. Kunden klickar på länken, loggar in på Framer och remixar mallen.
5. Vid återkallande annulleras remixlänken. Redan remixade kopior i kundens Framer-konto förblir, eftersom Framer inte erbjuder ett sätt att återkalla dem.

## Krävd konfiguration

| Fält                 | Krävd | Beskrivning                                      |
| -------------------- | ----- | ------------------------------------------------ |
| `framer_template_id` | Ja    | Mall-ID som returneras när du laddar upp mallen. |

## Skapa 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>

## Webhooks

Se [`entitlement_grant.*` webhook-händelser](/developer-resources/webhooks/intents/entitlement-grant). Framer-bidrag anländer `pending` och övergår till `delivered` när remix-länken tillhandahålls.

## Felsökning

<AccordionGroup>
  <Accordion title="Customer's remix link doesn't work">
    Remix-länken är för engångsbruk och kopplad till kunden. Om de rensade länken innan remixning, återkalla bidraget och återutfärda.
  </Accordion>

  <Accordion title="Refunded customer still has a remixed copy">
    Detta är förväntat. Framer behandlar en remix som kundens eget projekt när det väl är klonat; Dodo Payments gör original-länken ogiltig men kan inte ta bort kopior i kundens konto.
  </Accordion>
</AccordionGroup>
