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

# Asignación de Notion

> Duplica una plantilla de Notion en el espacio de trabajo del cliente cuando compra.

<Info>
  La asignación de Notion duplica una plantilla que has preparado en el espacio de trabajo del cliente que paga. El cliente se autoriza a través de OAuth, elige el espacio de trabajo en el que desea que se copie la plantilla, y Dodo Payments maneja la duplicación.
</Info>

## Qué se entrega

* Se le solicita al cliente conectar su espacio de trabajo de Notion a través de OAuth.
* Una vez autorizado, Dodo Payments duplica la plantilla configurada en el espacio de trabajo que eligieron.
* En caso de cancelación, la plantilla duplicada permanece en el espacio de trabajo del cliente (Notion no admite la eliminación remota). La concesión se marca `revoked` para el mantenimiento de registros.

Los usos comunes incluyen plantillas de Notion de pago, sistemas de productividad y plantillas de OS/CRM.

## Conectar Notion

<Steps>
  <Step title="Open Entitlements">
    En tu panel de Dodo Payments, ve a **Asignaciones** y haz clic en **+**.
  </Step>

  <Step title="Pick Notion">
    Elige **Plantilla de Notion** como la integración. Si Notion aún no está conectado, se te solicitará **Conectar Notion**.

    <Frame caption="Connect Notion prompt before the OAuth handoff.">
      <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/notion/connect-prompt.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=90f1f2a60c96918a8da19665a24fcaca" alt="Nuevo panel de asignación pidiendo al comerciante conectar Notion" style={{ maxHeight: '500px', width: 'auto' }} width="2000" height="1133" data-path="images/entitlements/notion/connect-prompt.png" />
    </Frame>

    Al hacer clic, se abre Notion en una nueva pestaña. Inicia sesión en el espacio de trabajo que posee tus plantillas de origen, revisa los permisos que solicita Dodo Payments, luego elige las páginas (plantillas) que la integración puede leer y duplicar.

    <Frame caption="Notion OAuth: review permissions, then pick the template pages to share.">
      <div style={{ display: 'flex', gap: '12px', flexWrap: 'wrap', justifyContent: 'center' }}>
        <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/notion/oauth-permissions.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=957e39812ac19bbf81cceb50f023a14a" alt="Pantalla de permisos OAuth de Notion para Dodo Payments" style={{ maxHeight: '420px', width: 'auto' }} width="2000" height="1121" data-path="images/entitlements/notion/oauth-permissions.png" />

        <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/notion/oauth-select-pages.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=1f8bd414d5900f9d246d96f15877aba1" alt="Selector de páginas de Notion seleccionando qué plantillas puede acceder Dodo Payments" style={{ maxHeight: '420px', width: 'auto' }} width="2000" height="1138" data-path="images/entitlements/notion/oauth-select-pages.png" />
      </div>
    </Frame>

    Cuando Notion redirige de regreso, verás una confirmación de que el espacio de trabajo está conectado.

    <Frame caption="Workspace connected — return to the Dodo Payments dashboard to continue.">
      <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/notion/connected.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=5e526d2cc12c27f526b2a6e469157bd8" alt="Página de confirmación de conexión exitosa de plantilla de Notion" style={{ maxHeight: '500px', width: 'auto' }} width="2000" height="1143" data-path="images/entitlements/notion/connected.png" />
    </Frame>
  </Step>

  <Step title="Pick a template">
    De vuelta en el panel, selecciona la **plantilla** a duplicar del selector de plantillas. Solo aparecen las páginas que autorizaste en el paso anterior. Dale a la asignación un **nombre** y haz clic en **Crear Asignación**.

    <Frame>
      <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/notion/create.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=82a51c79ed0c6937abf866c187673ab7" alt="Formulario de asignación de Notion con espacio de trabajo conectado, selector de plantillas y campo de nombre" style={{ maxHeight: '500px', width: 'auto' }} width="2000" height="1135" data-path="images/entitlements/notion/create.png" />
    </Frame>
  </Step>

  <Step title="Save the entitlement">
    Guarda y adjunta a cualquier producto.
  </Step>
</Steps>

## Flujo del cliente

1. El cliente completa el pago.
2. Dodo Payments crea un grant en estado `pending` con un Notion `oauth_url` para que el cliente conecte su espacio de trabajo.
3. El cliente se autoriza mediante el enlace en su correo electrónico o portal de cliente y elige el espacio de trabajo en el que desea duplicar la plantilla.
4. Dodo Payments duplica la plantilla. El grant pasa a `delivered`.
5. Al revocar, el grant se marca `revoked`; la copia duplicada permanece en el espacio de trabajo del cliente.

<Note>
  Notion trata intencionalmente una página duplicada como contenido propio del destinatario. Dodo Payments no puede eliminar la copia al revocar.
</Note>

## Configuración requerida

| Campo                | Requerido | Descripción                                                    |
| -------------------- | --------- | -------------------------------------------------------------- |
| `notion_template_id` | Sí        | El ID de la plantilla. El selector del panel llena este campo. |

## Crear mediante API

<CodeGroup>
  ```typescript TypeScript theme={null} theme={null}
  const entitlement = await client.entitlements.create({
    name: 'Study Notes',
    integration_type: 'notion',
    integration_config: {
      notion_template_id: 'tmpl_abc123',
    },
  });
  ```

  ```python Python theme={null} theme={null}
  client.entitlements.create(
      name="Study Notes",
      integration_type="notion",
      integration_config={"notion_template_id": "tmpl_abc123"},
  )
  ```

  ```go Go theme={null} theme={null}
  client.Entitlements.New(ctx, dodopayments.EntitlementNewParams{
    Name:            dodopayments.F("Study Notes"),
    IntegrationType: dodopayments.F(dodopayments.EntitlementIntegrationTypeNotion),
    IntegrationConfig: dodopayments.F[dodopayments.IntegrationConfigUnionParam](
      dodopayments.IntegrationConfigNotionConfigParam{
        NotionTemplateID: dodopayments.F("tmpl_abc123"),
      },
    ),
  })
  ```
</CodeGroup>

## Webhooks

Ver [eventos webhook `entitlement_grant.*`](/developer-resources/webhooks/intents/entitlement-grant):

* `entitlement_grant.created` incluye el Notion `oauth_url`.
* `entitlement_grant.delivered` se activa una vez que la plantilla está duplicada.
* `entitlement_grant.revoked` se activa al cancelar; la copia del cliente queda intacta.

## Resolución de problemas

<AccordionGroup>
  <Accordion title="Customer didn't get the template">
    El grant permanece `pending` hasta que el cliente complete OAuth de Notion. Reenvía el correo de entrega; el enlace OAuth caduca después de una semana, después de la cual puedes revocar y recrear el grant.
  </Accordion>

  <Accordion title="Template picker is empty">
    Reconectar Notion desde **Asignaciones → Integraciones → Notion** con el espacio de trabajo que posee las plantillas de origen.
  </Accordion>

  <Accordion title="Customer wants the template removed after refund">
    Notion no permite la eliminación remota de páginas duplicadas. El cliente debe eliminar la copia de su propio espacio de trabajo.
  </Accordion>
</AccordionGroup>
