# Cuaderno 60

Acepta pagos a la administración pública española —impuestos municipales, tasas, multas, autoliquidaciones— con el estándar AEB **Cuaderno 60 (60012)**. Los ciudadanos introducen la Emisora, la Referencia y la Identificación impresas en su documento, MONEI valida los dígitos de control en el cliente según el Anexo común I, y el pago resultante incluye claves de metadatos planas que tu back office puede usar para la conciliación —y que MONEI ensambla en el **fichero** AEB que espera tu entidad colaboradora.

Esta integración no requiere código: configura un **Punto de Venta C60** en el Dashboard, comparte el enlace o el QR, y los ciudadanos completan el pago en la página alojada por MONEI.

## Descripción general[​](#descripción-general "Enlace directo al Descripción general")

Cuaderno 60 es el estándar de la AEB que regula la recaudación de pagos para las administraciones públicas españolas. Se admiten tres modalidades:

| Modalidad | Longitud de Identificación | Caso de uso                                                                  |
| --------- | -------------------------- | ---------------------------------------------------------------------------- |
| **Mod 1** | 7 dígitos                  | Tributo + Ejercicio + Remesa (remesas tributarias periódicas)                |
| **Mod 2** | 10 dígitos                 | Impuestos periódicos con discriminante, año de vencimiento, fecha juliana    |
| **Mod 3** | 13 dígitos                 | Autoliquidación (modelo + secuencial + DC) + NIF + campos opcionales por `Y` |

Un único Punto de Venta C60 admite las tres. El formulario del ciudadano detecta la modalidad por la longitud de la Identificación que escribe —sin selector de modalidad, sin banner—. Solo se pueden introducir dígitos; las comprobaciones de longitud y de dígito de control se ejecutan cuando el ciudadano envía el formulario.

## Antes de empezar[​](#antes-de-empezar "Enlace directo al Antes de empezar")

* Necesitas una cuenta de MONEI. Encuentra tus claves de API en [MONEI Dashboard → Ajustes → API](https://dashboard.monei.com/settings/api).
* El tipo de Punto de Venta C60 está habilitado para cuentas de administración pública. Contacta con [soporte](mailto:support@monei.com) si no lo ves.
* Usa [claves de modo de prueba](https://docs.monei.com/es/es/testing/.md) para las pruebas de integración.
* Ten a mano tu **Emisora** (6 dígitos con dígito de control) y la lista de modalidades que aceptas. El nombre legal y el NIF de tu organismo provienen del perfil de empresa de tu cuenta de MONEI; mantenlos actualizados en Ajustes antes de crear el Punto de Venta.

## 1. Crea un Punto de Venta C60[​](#1-crea-un-punto-de-venta-c60 "Enlace directo al 1. Crea un Punto de Venta C60")

1. Ve a [Dashboard → Ajustes → Puntos de venta](https://dashboard.monei.com/settings/points-of-sale).
2. Haz clic en **Crear Punto de Venta**.
3. Selecciona **Cuaderno 60** como tipo.
4. Completa la configuración:

| Campo                         | Descripción                                                                                                                                                                                                              |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Nombre**                    | Identificador de este Punto de Venta (p. ej., "Recaudación municipal 2026")                                                                                                                                              |
| **Emisora**                   | Código de Emisora de 6 dígitos incluido el dígito de control. El dígito de control módulo 11 se valida al guardar                                                                                                        |
| **Modalidades permitidas**    | Selección múltiple: **Mod 1**, **Mod 2**, **Mod 3**. Solo se aceptan en el formulario las modalidades marcadas                                                                                                           |
| **Callback URL** *(opcional)* | Una dirección web que MONEI llama automáticamente cuando finaliza un pago, para notificar a tus sistemas: un webhook. Déjalo vacío si no tienes un sistema que lo reciba; cada pago seguirá apareciendo en el Dashboard. |
| **Descripción**               | Descripción que se pasa a todos los pagos de este Punto de Venta                                                                                                                                                         |

El nombre legal y el NIF del organismo que aparecen en el justificante provienen del perfil de empresa de tu cuenta (Ajustes → Empresa), no de campos por Punto de Venta.

Guarda. El Punto de Venta tendrá su propia **página de pago de Cuaderno 60** alojada. Distribúyela como mejor se adapte a tu servicio:

* **Código QR** — descarga el [código QR](https://docs.monei.com/es/es/integrations/use-qr-payments/.md) del Punto de Venta en **SVG o PNG** (elige el tamaño; lleva los colores y el icono de tu marca) e imprímelo en documentos, carteles o tu sede electrónica. Al escanearlo se abre la página de pago.
* **Enlace de pago** — comparte la URL de la página por correo o SMS, o enlázala desde tu web.
* **Enlace corto personalizado** — acorta la URL a un enlace `monei.me` y dale un nombre corto memorable (letras minúsculas, números, guiones y guiones bajos), p. ej. `monei.me/tu-organismo`, ideal para impresión y señalización. Déjalo en blanco y MONEI generará uno.

Cada QR y enlace apunta al mismo Punto de Venta C60, de modo que todos los pagos cobrados a través de ellos comparten su Emisora y configuración.

### Enlaces precargados (acceso directo a la revisión)[​](#enlaces-precargados-acceso-directo-a-la-revisión "Enlace directo al Enlaces precargados (acceso directo a la revisión)")

Para llevar al ciudadano directamente a un recibo concreto, añade los datos del documento al enlace de pago del Punto de Venta como parámetros de consulta. MONEI rellena el formulario al cargar la página y, cuando el enlace aporta todo lo necesario para pagar, abre directamente la pantalla de **revisión**: el ciudadano solo confirma y paga. Codifica esa URL en un QR por documento para un pago realmente con un solo toque.

**Desde el código de barras.** Añade la secuencia completa del código de barras del documento —los dígitos impresos bajo el **código de barras**— como `c60Barcode`:

```
https://secure.monei.com/codes/68R5R843?c60Barcode=905224601380000136179980500126625700063106627800066261
```

Se leen los cinco formatos de código de barras de la AEB: `502` y `508` (Modalidad 1), `521` y `522` (Modalidad 2) y `523` (Modalidad 3). Los códigos de Modalidad 1 y 2 llevan el recibo completo, así que esos enlaces llegan a la revisión por sí solos. Un código de **Modalidad 3** solo lleva la Emisora y el Nº de justificante —el estándar no tiene campo para el importe ni el NIF—, por lo que ese enlace rellena esos dos y deja el resto al ciudadano, salvo que añadas también los parámetros siguientes.

**Desde campos individuales.** Si tu sistema guarda los campos impresos por separado, pásalos directamente. Todos los parámetros son opcionales y pueden combinarse con `c60Barcode`:

| Parámetro           | Campo                                         |
| ------------------- | --------------------------------------------- |
| `c60Referencia`     | Referencia (12 dígitos, Modalidades 1 y 2)    |
| `c60Identificacion` | Identificación / Nº de justificante           |
| `c60Importe`        | Importe, p. ej. `125.00` o `125,00`           |
| `c60Nif`            | NIF (Modalidad 3)                             |
| `c60Expediente`     | Número de expediente (Modalidad 3, según `Y`) |
| `c60FechaDevengo`   | Fecha de devengo, `DDMMAAAA` (Modalidad 3)    |
| `c60DatoEspecifico` | Dato específico (Modalidad 3, según `Y`)      |

```
https://secure.monei.com/codes/68R5R843?c60Referencia=000000009919&c60Identificacion=1005266257&c60Importe=125.00
```

Cuando están presentes ambos, el código de barras prevalece en los campos que lleva y los parámetros completan el resto: así es como un enlace de Modalidad 3 queda listo para pagar con un solo toque:

```
https://secure.monei.com/codes/68R5R843?c60Barcode=905234616969020000002735&c60Nif=12345678Z&c60Importe=125.00
```

Un enlace que no llegue a componer un recibo pagable simplemente abre el formulario con lo que sí aportó, y el ciudadano completa el resto a mano. Los valores de un enlace se validan al enviar igual que si se hubieran escrito —y solo en la misma medida—: un código de barras de otra Emisora, o de una modalidad que este Punto de Venta no admite, recurre a la introducción manual con el mensaje correspondiente, pero un `c60Importe` erróneo solo se detecta donde se valida el dígito de control de la Referencia (Modalidad 2 de un único periodo; consulta [Reglas de validación](#reglas-de-validaci%C3%B3n)). En Modalidad 1, en Modalidad 2 con recargo y en Modalidad 3, el Importe que pongas en el enlace es el que se le cobrará al ciudadano, así que genera los enlaces a partir de los mismos datos que el recibo impreso.

## 2. Flujo del ciudadano[​](#2-flujo-del-ciudadano "Enlace directo al 2. Flujo del ciudadano")

<!-- -->

1. El ciudadano abre el enlace (desde un documento impreso, un QR, un email, etc.).

2. **Paso 1 — Formulario de entrada.** Introduce en una sola pantalla todo lo que figura en su documento:

   * **Importe** — la cantidad a pagar (preimpresa en el recibo para Mod 1/2, calculada por el propio ciudadano para Mod 3).
   * **Emisora** — de solo lectura, rellenada automáticamente desde la configuración de tu Punto de Venta.
   * **Referencia** — 12 dígitos (bloque del Anexo común I).
   * **Identificación** — 7, 10 o 13 dígitos según la modalidad (detectada por longitud).
   * Para **Mod 3**, un campo adicional de **NIF** (y, opcionalmente, **Fecha de devengo**, **Expediente**, **Dato específico** según el indicador `Y`).

   **Escanea en lugar de teclear.** En el móvil, el ciudadano puede tocar **Escanear recibo** y apuntar la cámara al **código de barras** del documento. MONEI lo lee, valida los dígitos de control y —como el código de barras contiene la Emisora, la Referencia, la Identificación y el Importe— salta directamente a la pantalla de revisión. El escaneo requiere permiso de cámara; un recibo de otra Emisora o de una modalidad que este Punto de Venta no admite se rechaza y el ciudadano introduce los campos a mano. (Las autoliquidaciones de Modalidad 3 no van completamente codificadas en el código de barras, así que esas se introducen manualmente.)

   Al continuar, MONEI valida los dígitos de control en el cliente según el Anexo común I. Si algo es incorrecto, el formulario resalta los campos no válidos y se desplaza hasta el primero; no avanza hasta que todos los campos son correctos.

3. **Paso 2 — Revisar y pagar.** Una pantalla de confirmación muestra el Importe, la Emisora, la Referencia y la Identificación, además de una línea en lenguaje claro que indica el tributo y el ejercicio para los códigos Mod 1/Mod 2 reconocidos. El ciudadano puede pulsar **Editar datos** para volver atrás, o continuar al pago.

4. **Paso 3 — Pago.** El ciudadano completa el pago en la página alojada por MONEI, con tarjeta (recomendado) o Bizum. Los metadatos de Cuaderno 60 ya están asociados al pago en este punto.

5. **Justificante.** Se muestra una sección "Justificante de pago" de Cuaderno 60 encima del recibo estándar, con todos los campos del estándar (Organismo, Modalidad, Referencia, Identificación desglosada por modalidad, Importe, Canal de pago, Fecha).

Nombres de campo en español

Las etiquetas del formulario **Emisora**, **Referencia**, **Identificación** y **Modalidad** se mantienen en español en todos los idiomas: son términos propios del estándar. El resto de la interfaz se traduce con normalidad.

## 3. Justificante de pago[​](#3-justificante-de-pago "Enlace directo al 3. Justificante de pago")

Cada pago de Cuaderno 60 completado con éxito genera un **Justificante de pago**: el comprobante para el ciudadano y para ti. Los mismos datos de Cuaderno 60 aparecen en tres lugares:

* **En la pantalla de confirmación**, justo después del pago (paso 5 anterior).
* **En el correo de justificante** enviado a quien paga.
* **Como PDF**, adjunto a ese correo y descargable desde la página de justificante del pago.

El justificante es una **extensión del recibo estándar de MONEI**: el mismo diseño, con los campos de Cuaderno 60 añadidos encima del importe y los datos de pedido habituales. Los pagos que no son de Cuaderno 60 muestran el recibo estándar sin cambios. Los nombres de campo del estándar (**Organismo**, **Modalidad**, **Referencia**, **Nº de justificante**, **Identificación**…) se mantienen en español en todos los idiomas; el resto del texto se traduce con normalidad.

### Qué muestra cada versión[​](#qué-muestra-cada-versión "Enlace directo al Qué muestra cada versión")

* **Correo** — lo esencial: el **Organismo**, la **Modalidad** y el identificador (la **Referencia** para Modalidad 1 y 2, el **Nº de justificante** para Modalidad 3).
* **PDF** — el desglose completo por modalidad que se muestra a continuación.

### Campos por modalidad (PDF)[​](#campos-por-modalidad-pdf "Enlace directo al Campos por modalidad (PDF)")

| Modalidad       | Identificador           | Desglose mostrado                                                          |
| --------------- | ----------------------- | -------------------------------------------------------------------------- |
| **Modalidad 1** | Referencia (12 dígitos) | Identificación → Tributo · Ejercicio · Remesa                              |
| **Modalidad 2** | Referencia (12 dígitos) | Identificación → Discriminante · Tributo · Ejercicio · Año · Fecha juliana |
| **Modalidad 3** | Nº de justificante      | Modelo · Indicador · Secuencial · DC                                       |

Para **Modalidad 3** (autoliquidación) el PDF también muestra el **NIF** y los campos opcionales capturados en el momento del pago —**Fecha de devengo**, **Nº de expediente**, **Dato específico**—, cada uno solo cuando está presente.

La Modalidad 3 no tiene Referencia

El documento de Modalidad 3 de la AEB no define ninguna Referencia: la referencia del ciudadano es el **Nº de justificante**. El justificante omite intencionadamente la Referencia para la Modalidad 3 aunque se almacene una en los metadatos del pago.

## 4. Metadatos del pago[​](#4-metadatos-del-pago "Enlace directo al 4. Metadatos del pago")

Cada pago de Cuaderno 60 completado con éxito incluye claves de metadatos planas en notación de puntos. Tu manejador de callback (y cualquier herramienta de back office) puede leerlas directamente desde el campo `metadata` del [objeto Payment](https://docs.monei.com/es/es/apis/rest/schemas/payment/.md).

**Comunes a todas las modalidades:**

| Clave            | Valor                               |
| ---------------- | ----------------------------------- |
| `c60_modalidad`  | `MOD_1` \| `MOD_2` \| `MOD_3`       |
| `c60_emisora`    | 6 dígitos (incl. dígito de control) |
| `c60_referencia` | 12 dígitos                          |

**Mod 1 — Tributo / Ejercicio / Remesa:**

| Clave           | Valor     |
| --------------- | --------- |
| `c60_tributo`   | 3 dígitos |
| `c60_ejercicio` | 2 dígitos |
| `c60_remesa`    | 2 dígitos |

**Mod 2 — Discriminante / Tributo / Ejercicio / Año / Fecha Juliana:**

| Clave                       | Valor             |
| --------------------------- | ----------------- |
| `c60_discriminante_periodo` | `1` \| `5` \| `9` |
| `c60_tributo`               | 3 dígitos         |
| `c60_ejercicio`             | 2 dígitos         |
| `c60_anyo_vencimiento`      | 1 dígito          |
| `c60_fecha_juliana`         | 3 dígitos         |

Recibos con recargo

En un recibo de dos períodos (`c60_discriminante_periodo` `5` o `9`), todos los campos anteriores —incluido `c60_referencia`, del bloque común— reflejan **el período que realmente se cobró**, no siempre el primero. Concilia a partir de estos campos directamente, sin asumir el período voluntario.

**Mod 3 — Justificante (Modelo + Y + Secuencial + DC) + NIF + opcionales:**

| Clave                 | Valor         | Notas                                   |
| --------------------- | ------------- | --------------------------------------- |
| `c60_modelo`          | 3 dígitos     | Modelo de autoliquidación               |
| `c60_y_indicator`     | `0`..`8`      | Determina qué campos opcionales aplican |
| `c60_secuencial`      | 8 dígitos     |                                         |
| `c60_dc`              | 1 dígito      | Dígito de control del Justificante      |
| `c60_nif`             | 9 caracteres  | Se omite cuando `Y = 8`                 |
| `c60_fecha_devengo`   | `DDMMAAAA`    | Opcional; condicionado por `Y`          |
| `c60_expediente`      | 12 caracteres | Opcional; condicionado por `Y`          |
| `c60_dato_especifico` | 20 caracteres | Opcional; condicionado por `Y`          |

La condición por indicador Y para Mod 3 sigue el Anexo común I:

| `Y` | Incluye                                               |
| --- | ----------------------------------------------------- |
| `0` | Solo NIF                                              |
| `1` | NIF + Expediente                                      |
| `2` | NIF + Fecha de devengo                                |
| `3` | NIF + Expediente + Fecha de devengo                   |
| `4` | NIF + Dato específico                                 |
| `5` | NIF + Expediente + Dato específico                    |
| `6` | NIF + Fecha de devengo + Dato específico              |
| `7` | NIF + Expediente + Fecha de devengo + Dato específico |
| `8` | Sin NIF, sin opcionales                               |

**Reconstruidos al generar el justificante o exportar (no se almacenan):**

* **Canal de pago** = `4` ("Pasarela de pagos"): fijo por el estándar.
* **Fecha de captura** = `payment.completedAt`.
* **Importe** = `payment.amount`.

¿Por qué campos separados?

El formato plano con campos separados significa que tu script de conciliación no necesita volver a parsear una Referencia/Identificación compuesta: cada campo ya está en su posición canónica. Los valores compuestos son triviales de reensamblar al renderizar cuando los necesites.

## 5. Recibe el estado del pago (webhook)[​](#5-recibe-el-estado-del-pago-webhook "Enlace directo al 5. Recibe el estado del pago (webhook)")

MONEI envía el estado final y autoritativo del pago mediante un HTTP POST asíncrono a tu `callbackUrl`. El cuerpo de la solicitud es el [objeto Payment](https://docs.monei.com/es/es/apis/rest/schemas/payment/.md) completo en JSON, incluidas todas las claves `metadata.c60_*`.

Debes:

1. **Verificar la cabecera MONEI-Signature** — consulta la [guía Verificar firmas](https://docs.monei.com/es/es/guides/verify-signature/.md).
2. **Devolver `200 OK`** de inmediato. Cualquier otro estado provoca que MONEI lo reintente.

Una vez verificado, inspecciona `status` (`SUCCEEDED`, `FAILED`, `CANCELED`, ...) y persiste los metadatos c60 en tu libro de registro interno.

## 6. Exporta un fichero de conciliación[​](#6-exporta-un-fichero-de-conciliación "Enlace directo al 6. Exporta un fichero de conciliación")

Al final de cada **quincena** (la primera del 1 al 15, la segunda del 16 a fin de mes), MONEI ensambla los pagos de Cuaderno 60 cobrados en el **fichero** AEB: el archivo de ancho fijo que tu entidad colaboradora espera para la conciliación. MONEI lo presenta como **entidad colaboradora** (N.R.B.E. `6911`), así que no tienes que generar el archivo tú mismo.

Cada quincena produce un **fichero por Emisora**, dividido por modalidad en uno o dos archivos:

| Archivo       | Contenido                                           |
| ------------- | --------------------------------------------------- |
| **Anexo 1-1** | Pagos de Modalidad 1 + Modalidad 2 (operación `70`) |
| **Anexo 2-1** | Modalidad 3 / autoliquidaciones (operación `80`)    |

La Referencia, la Identificación y el Importe de cada pago se colocan en sus posiciones canónicas, con canal de pago `4` (Pasarela de pagos). La **Emisora** que se escribe en el archivo es la que quedó congelada en cada pago en el momento del cobro, de modo que editar la Emisora de un POS después nunca reescribe los pagos ya cobrados.

Hay dos formas de obtener el fichero.

### Descarga bajo demanda[​](#descarga-bajo-demanda "Enlace directo al Descarga bajo demanda")

1. Ve a [Dashboard → Pagos](https://dashboard.monei.com/payments) y haz clic en **Exportar**.
2. Elige **Cuaderno 60** como formato de exportación. (Para las cuentas de administración pública es el predeterminado.)
3. Selecciona el **Punto de venta C60** y, a continuación, el **año**, el **mes** y la **quincena** (primera o segunda).
4. Descarga: obtendrás un `.zip` con el o los dos archivos `.txt` de esa quincena.

### Entrega programada por SFTP[​](#entrega-programada-por-sftp "Enlace directo al Entrega programada por SFTP")

Para que MONEI envíe automáticamente los archivos `.txt` sin comprimir a tu banco o back office, añade un [destino SFTP](https://docs.monei.com/es/es/manage-account/sftp-reports/.md) y elige **Cuaderno 60** como su tipo de exportación. MONEI entrega entonces en los días de presentación AEB:

| Día de presentación | Quincena entregada                               |
| ------------------- | ------------------------------------------------ |
| **Día 20**          | Mes actual, primera quincena (días 1–15)         |
| **Día 5**           | Mes anterior, segunda quincena (16 a fin de mes) |

Si un día de presentación cae en fin de semana o festivo, la entrega se traslada al siguiente día hábil. SFTP envía cada `.txt` por separado: los bancos rechazan los ficheros comprimidos.

Cuentas de administración pública

El formato de exportación Cuaderno 60 y el tipo de SFTP solo aparecen para las cuentas de administración pública. Si no los ves, [contacta con soporte](mailto:support@monei.com).

## Reglas de validación[​](#reglas-de-validación "Enlace directo al Reglas de validación")

Antes de crear el pago, MONEI comprueba el formulario de entrada según el Anexo común I:

* **Dígitos de control** — la Emisora y (Modalidad 3) el Nº de justificante llevan cada uno un dígito de control que debe coincidir. El dígito de control de la **Referencia** se valida en las referencias de Modalidad 2 de período único (el recibo preimpreso habitual). Como ese dígito liga Referencia, Identificación e Importe a la vez, un fallo no puede señalar un campo concreto: el formulario muestra un aviso general de "compruebe el importe, la referencia y la identificación" en lugar de resaltar un solo campo. Las referencias de Modalidad 1 se aceptan tal cual están impresas. Un recibo de Modalidad 2 con dos períodos (con recargo) lleva un dígito de control **distinto para cada período** — MONEI ya selecciona juntos la Referencia, la Identificación y el Importe del período que corresponda (ver la regla de fecha límite más abajo), pero todavía no verifica el dígito de ninguno de los dos períodos, así que un error de transcripción en una Referencia con recargo no se detecta en el cliente.
* **Estructura de la Identificación** — la longitud correcta y el formato de campos de cada modalidad para la modalidad detectada.
* **Modalidades permitidas** — si la modalidad del ciudadano no es una de las que habilitaste en el Punto de Venta, el formulario la rechaza con `Esta entidad no acepta Modalidad X`.
* **Fecha límite de pago (Modalidad 2)** — un recibo de Modalidad 2 codifica su propia fecha límite (año de vencimiento + fecha juliana) en la Identificación. Un recibo de **período único** (discriminante `1`) se rechaza directamente en cuanto se supera esa fecha. Un recibo de **dos períodos, con recargo** (discriminante `5`/`9`) en cambio pasa —al superar la fecha voluntaria— al Importe con recargo junto con la Referencia y la Identificación propias de ese período, ya que cada período es una entrada distinta en el recibo; se rechaza a su vez en cuanto se supera la fecha límite propia del período con recargo (también codificada en el código de barras). Pagar el mismo día de cualquiera de las dos fechas límite todavía cuenta como en plazo. Los códigos de barras de Modalidad 1 y 3 no llevan fecha límite.

La validación se ejecuta cuando el ciudadano envía el formulario; no hay comprobación con cada pulsación. Si el envío falla, el formulario resalta todos los campos no válidos, salta al primero y permanece en el paso de entrada hasta que todos son correctos.

## Pruebas[​](#pruebas "Enlace directo al Pruebas")

* Usa tus [claves de API de modo de prueba](https://docs.monei.com/es/es/testing/.md) para el desarrollo.
* Activa el Modo de prueba en tu [Dashboard](https://dashboard.monei.com/payments) para ver los pagos de prueba.
* Usa [números de tarjeta de prueba](https://docs.monei.com/es/es/testing/.md) para completar el paso de la tarjeta.
* Verifica la entrega de webhooks en Dashboard → Desarrolladores → Webhooks.

## Limitaciones[​](#limitaciones "Enlace directo al Limitaciones")

* **Máximo 3.000,00 € por pago** — el formulario de entrada rechaza un Importe superior a 3.000,00 €.
* **Atrás / recargar / varias pestañas en el navegador** descartan los datos introducidos en el formulario de Cuaderno 60: el ciudadano debe volver a escribirlos. El texto del formulario lo advierte.
* **Los pagos duplicados del mismo recibo se rechazan.** Cada pago de Cuaderno 60 lleva un identificador de pedido derivado del recibo (Emisora + Referencia + Identificación; en Modalidad 3, el Nº de justificante), y MONEI rechaza un segundo pago de un pedido ya autorizado o pagado. En un recibo de Modalidad 2 de dos períodos con recargo, este identificador es el mismo sin importar qué período se pague realmente, así que un reintento tras empezar el período con recargo se sigue reconociendo como el mismo recibo. Un intento fallido no bloquea el reintento. Ese mismo identificador aparece como `orderId` del pago para tu conciliación.

## Resolución de problemas[​](#resolución-de-problemas "Enlace directo al Resolución de problemas")

**"Longitud inválida" en el campo Identificación** La longitud debe ser exactamente 7, 10 o 13 dígitos. Elimina los espacios; las variantes Unicode de dígitos se rechazan.

**"Esta entidad no acepta Modalidad X"** La modalidad detectada no está en el `allowedModalities` de tu Punto de Venta. Amplía la lista en el Dashboard o indica al ciudadano que use otra referencia.

**"Dígito de control inválido"** El dígito de control del Justificante (Modalidad 3) no coincide. Revisa el documento impreso: casi siempre es un error de transcripción en alguno de los dígitos.

**"Compruebe el importe, la referencia y la identificación que ha introducido"** El dígito de control de la Referencia no coincide con la combinación de Referencia + Identificación + Importe introducida (solo Modalidad 2 de período único). El error puede estar en cualquiera de los tres campos: compáralos todos con el documento impreso.

**"The order has already been paid" / "…has already been authorized"** Ese recibo ya tiene un pago completado, o autorizado pero aún no capturado. Los pagos duplicados de un mismo identificador de recibo (Emisora + Referencia + Identificación; Nº de justificante en Modalidad 3) se rechazan. Busca el pago anterior por `orderId` en el Dashboard.

**Recibo rechazado por caducado** La fecha límite de pago del recibo de Modalidad 2 —codificada en la Identificación— ya ha pasado: la fecha voluntaria en un recibo de período único, o la fecha límite propia del período con recargo en un recibo de dos períodos. Este canal no acepta el pago después de esa fecha; remite al ciudadano al procedimiento habitual de tu organismo para cobros fuera de plazo (vía ejecutiva).

**No se recibe el webhook** Verifica que tu `callbackUrl` sea accesible públicamente y devuelva `200 OK`, y revisa los registros de webhooks en el Dashboard.
