# General Translation Integrations: Inicio rápido
URL: https://generaltranslation.com/es/docs/integrations/payload/quickstart.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Instala gt-payload, agrega el plugin a Payload CMS y traduce tu primer documento localizado.

El plugin `gt-payload` agrega controles de traducción a las colecciones y los globals de Payload CMS. Traduce los campos localizados a las configuraciones regionales definidas en la configuración de Payload.

## Antes de empezar [#before-start]

Necesitas:

* Payload CMS 3.90.0 o posterior con `localization` configurado
* Next.js 15.2.9 o posterior
* React 19.0.1 o posterior
* Un [ID del Project](/docs/platform/dashboard/get-started) y una [clave de API de Project](/docs/platform/dashboard/reference/api-keys#create-project-keys) de General Translation con permisos **All**
* Al menos un campo con `localized: true`

## Inicio rápido [#quickstart]

### 1. Instala `gt-payload`

<Tabs items={['npm', 'yarn', 'bun', 'pnpm']}>
  <Tab value="npm">
    ```bash
    npm install gt-payload
    ```
  </Tab>

  <Tab value="yarn">
    ```bash
    yarn add gt-payload
    ```
  </Tab>

  <Tab value="bun">
    ```bash
    bun add gt-payload
    ```
  </Tab>

  <Tab value="pnpm">
    ```bash
    pnpm add gt-payload
    ```
  </Tab>
</Tabs>

### 2. Configurar la localización

Define la configuración regional de origen y las configuraciones regionales de destino en la configuración de Payload y, a continuación, marca como localizado cada campo que quieras traducir.

```ts title="src/payload.config.ts"
import { buildConfig } from 'payload';

export default buildConfig({
  // ... tu configuración existente
  localization: {
    locales: ['en', 'es', 'fr'],
    defaultLocale: 'en',
  },
  collections: [
    {
      slug: 'pages',
      fields: [
        {
          name: 'title',
          type: 'text',
          localized: true,
        },
      ],
    },
  ],
});
```

El plugin no modifica una configuración que no tenga habilitada la localización de Payload.

### 3. Añade el plugin

Añade [`gtPlugin`](/docs/integrations/payload/reference/plugin-configuration) al arreglo `plugins`.

```ts title="src/payload.config.ts"
import { buildConfig } from 'payload';
import { gtPlugin } from 'gt-payload';

export default buildConfig({
  // ... tu configuración actual
  localization: {
    locales: ['en', 'es', 'fr'],
    defaultLocale: 'en',
  },
  plugins: [gtPlugin()],
});
```

### 4. Configura las credenciales

Configura el ID del Project y la clave de API de Project en el servidor donde se ejecuta Payload:

```bash title=".env"
GT_PROJECT_ID=your-project-id
GT_API_KEY=your-project-api-key
```

No expongas `GT_API_KEY` en el código del cliente ni la incluyas en un commit del control de versiones.

### 5. Actualiza Payload

Vuelve a generar el mapa de importaciones para que el panel de administración pueda cargar los componentes del plugin:

```bash
npx payload generate:importmap
```

El plugin añade colecciones para las ejecuciones de traducción y los bloqueos. En PostgreSQL o SQLite, crea y aplica una migración como harías con cualquier otro cambio de esquema de Payload:

```bash
npx payload migrate:create
npx payload migrate
```

### 6. Traducir un documento

1. Inicia Payload y abre el panel de administración.
2. Abre un documento o un global con campos localizados.
3. Guarda los cambios pendientes.
4. Elige **Translate**.
5. Selecciona una o varias configuraciones regionales de destino y, después, elige **Translate into …**.

El plugin escribe cada resultado en la configuración regional de Payload correspondiente. Si los borradores están habilitados, guarda un borrador, y nunca publica el contenido traducido.

## Next steps

- /docs/integrations/payload/guides/translating-content
- /docs/integrations/payload/guides/managing-translations

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
