# Consultar reembolsos de Mercado Pago

> Lee los reembolsos YA sincronizados de los pagos que recibió la cuenta de Mercado Pago de esta conexión, con su monto, estado y fecha.



{/* AUTO-GENERATED by @emisso/codegen. DO NOT EDIT. */}

|                     |                                                                    |
| ------------------- | ------------------------------------------------------------------ |
| **Tool ID**         | `mercadopago.reembolsos.consultar`                                 |
| **Nombre MCP**      | `mercadopago__reembolsos__consultar`                               |
| **Conector**        | `mercadopago`                                                      |
| **Plano**           | `action`                                                           |
| **Lee el alcance**  | `pagos` (debe estar habilitado en la conexión)                     |
| **Scope (permiso)** | `mercadopago:read`                                                 |
| **Auth**            | `none`                                                             |
| **Versión**         | `1`                                                                |
| **Sensible**        | sí                                                                 |
| **Deprecado**       | no                                                                 |
| **Comportamiento**  | readOnly=true, destructive=false, idempotent=true, openWorld=false |

> **Requiere conexión.** Indica cuál en cada llamada: header `X-Connect-Connection` en REST y campo `connectionId` en el `execute` de MCP. No hay resolución implícita, ni siquiera con una sola conexión activa: la conexión es la empresa. El id sale de [`conexiones.estado.consultar`](/docs/referencia/conexiones/estado-consultar).

## Qué hace [#qué-hace]

Connect sólo los lee: nunca crea ni cancela un reembolso. Lectura pura: NO contacta a Mercado Pago ni dispara una sincronización. Revisa 'cobertura' antes de concluir que no hay pagos: una lista vacía con 'cobertura.completa' en false no lo prueba. Para traer datos nuevos usa 'mercadopago.conexion.sincronizar'. Pagina con 'cursor'.

## Entrada [#entrada]

| Campo    | Tipo                        | Requerido          | Descripción                                                                                                                                                           |
| -------- | --------------------------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pagoId` | string `^[1-9][0-9]{0,30}$` | no                 | Trae sólo los reembolsos de ese pago (id de Mercado Pago, texto).                                                                                                     |
| `cursor` | string                      | no                 | Puntero opaco a la página siguiente. Reenvía tal cual el 'cursor' que devolvió la llamada anterior; nunca lo construyas a mano. Omítelo para pedir la primera página. |
| `limit`  | entero 1-500                | no · default `100` | Cuántas filas trae la página, entre 1 y 500. Por omisión, 100.                                                                                                        |

<details>
  <summary>
    JSON Schema de entrada
  </summary>

  ```json
  {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "pagoId": {
        "description": "Trae sólo los reembolsos de ese pago (id de Mercado Pago, texto).",
        "type": "string",
        "pattern": "^[1-9][0-9]{0,30}$"
      },
      "cursor": {
        "description": "Puntero opaco a la página siguiente. Reenvía tal cual el 'cursor' que devolvió la llamada anterior; nunca lo construyas a mano. Omítelo para pedir la primera página.",
        "type": "string"
      },
      "limit": {
        "default": 100,
        "description": "Cuántas filas trae la página, entre 1 y 500. Por omisión, 100.",
        "type": "integer",
        "minimum": 1,
        "maximum": 500
      }
    }
  }
  ```
</details>

## Ejemplo [#ejemplo]

```bash title="curl"
curl -X POST https://connect.emisso.ai/api/v1/tools/mercadopago.reembolsos.consultar/execute \
  -H "Authorization: Bearer connect_sk_…" \
  -H "X-Connect-Connection: conn_9tKfR2mQx4Vb" \
  -H "Content-Type: application/json" \
  -d '{"input":{"pagoId":"1325001234"}}'
```

```json title="MCP · meta-tool execute"
{
  "tool": "mercadopago.reembolsos.consultar",
  "params": {
    "pagoId": "1325001234"
  },
  "connectionId": "conn_9tKfR2mQx4Vb"
}
```

**Salida esperada (200):**

```json
{
  "data": {
    "reembolsos": [
      {
        "reembolsoId": "2100776655",
        "pagoId": "1325001234",
        "moneda": "CLP",
        "monto": "5000",
        "estado": "approved",
        "fechaCreacion": "2026-10-15T12:00:00.000Z",
        "modo": "standard",
        "sincronizadoEn": "2026-10-15T16:00:02.000Z"
      }
    ],
    "cobertura": {
      "desde": "2025-10-24T16:00:00.000Z",
      "hasta": "2026-10-15T15:58:00.000Z",
      "completa": true,
      "ventanasSinLeer": 0,
      "sincronizadoEn": "2026-10-15T16:00:02.000Z"
    },
    "cursor": null
  },
  "meta": {
    "request_id": "req_…",
    "tool_id": "mercadopago.reembolsos.consultar",
    "plane": "action",
    "latency_ms": 24,
    "audit_status": "recorded"
  }
}
```

## Salida [#salida]

| Campo                         | Tipo            | Requerido | Descripción                                                                                                                                                                                                 |                                                                                                                                                                           |
| ----------------------------- | --------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `reembolsos`                  | lista de objeto | sí        | Los reembolsos de los pagos recibidos, del más nuevo al más antiguo.                                                                                                                                        |                                                                                                                                                                           |
| `reembolsos[].reembolsoId`    | string          | sí        | El id del reembolso en Mercado Pago, como texto.                                                                                                                                                            |                                                                                                                                                                           |
| `reembolsos[].pagoId`         | string          | sí        | El id del pago en Mercado Pago, como texto: no lo conviertas a número.                                                                                                                                      |                                                                                                                                                                           |
| `reembolsos[].moneda`         | string          | sí        | La moneda del pago reembolsado (ISO 4217).                                                                                                                                                                  |                                                                                                                                                                           |
| `reembolsos[].monto`          | string          | null      | sí                                                                                                                                                                                                          | Lo reembolsado, en decimal como texto y en la moneda de 'moneda'. null cuando Mercado Pago no lo informó: null NO es cero.                                                |
| `reembolsos[].estado`         | string          | null      | sí                                                                                                                                                                                                          | El estado del reembolso según Mercado Pago ('approved'…). null si no vino.                                                                                                |
| `reembolsos[].fechaCreacion`  | string          | null      | sí                                                                                                                                                                                                          | Cuándo se hizo el reembolso (ISO 8601, UTC). null si Mercado Pago no la informó.                                                                                          |
| `reembolsos[].modo`           | string          | null      | sí                                                                                                                                                                                                          | El modo del reembolso según Mercado Pago ('standard'…). null si no vino.                                                                                                  |
| `reembolsos[].sincronizadoEn` | string          | sí        | Cuándo guardó Connect este reembolso (ISO 8601).                                                                                                                                                            |                                                                                                                                                                           |
| `cobertura`                   | objeto          | sí        | Qué cubre lo guardado. Payments search NO es una cartola: no incluye retiros, transferencias, saldo ni movimientos que no sean pagos recibidos.                                                             |                                                                                                                                                                           |
| `cobertura.desde`             | string          | null      | sí                                                                                                                                                                                                          | Desde cuándo están guardados TODOS los pagos de la cuenta, según su fecha de última actualización (ISO 8601). null si nunca se sincronizó.                                |
| `cobertura.hasta`             | string          | null      | sí                                                                                                                                                                                                          | Hasta cuándo están guardados todos los pagos (ISO 8601). Lo posterior aún no se lee: no es saldo ni movimiento en tiempo real.                                            |
| `cobertura.completa`          | booleano        | sí        | true sólo si el histórico llegó al límite que permite Mercado Pago (los últimos 12 meses) y no quedó ninguna ventana sin leer. En false, una lista vacía o un total NO prueban que no haya pagos: dilo así. |                                                                                                                                                                           |
| `cobertura.ventanasSinLeer`   | entero          | sí        | Cuántos tramos de tiempo no se pudieron leer completos (demasiados pagos o resultados inestables). Con alguno, 'completa' es false.                                                                         |                                                                                                                                                                           |
| `cobertura.sincronizadoEn`    | string          | null      | sí                                                                                                                                                                                                          | Cuándo terminó la última sincronización que guardó datos (ISO 8601). null si nunca.                                                                                       |
| `cursor`                      | string          | null      | sí                                                                                                                                                                                                          | Puntero a la página siguiente. Si viene distinto de null hay más filas: vuelve a llamar reenviándolo tal cual en 'cursor'. Un null significa que no queda nada por traer. |

<details>
  <summary>
    JSON Schema de salida
  </summary>

  ```json
  {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "reembolsos": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "reembolsoId": {
              "type": "string",
              "description": "El id del reembolso en Mercado Pago, como texto."
            },
            "pagoId": {
              "type": "string",
              "description": "El id del pago en Mercado Pago, como texto: no lo conviertas a número."
            },
            "moneda": {
              "type": "string",
              "description": "La moneda del pago reembolsado (ISO 4217)."
            },
            "monto": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Lo reembolsado, en decimal como texto y en la moneda de 'moneda'. null cuando Mercado Pago no lo informó: null NO es cero."
            },
            "estado": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "El estado del reembolso según Mercado Pago ('approved'…). null si no vino."
            },
            "fechaCreacion": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Cuándo se hizo el reembolso (ISO 8601, UTC). null si Mercado Pago no la informó."
            },
            "modo": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "El modo del reembolso según Mercado Pago ('standard'…). null si no vino."
            },
            "sincronizadoEn": {
              "type": "string",
              "description": "Cuándo guardó Connect este reembolso (ISO 8601)."
            }
          },
          "required": [
            "reembolsoId",
            "pagoId",
            "moneda",
            "monto",
            "estado",
            "fechaCreacion",
            "modo",
            "sincronizadoEn"
          ],
          "additionalProperties": false
        },
        "description": "Los reembolsos de los pagos recibidos, del más nuevo al más antiguo."
      },
      "cobertura": {
        "type": "object",
        "properties": {
          "desde": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Desde cuándo están guardados TODOS los pagos de la cuenta, según su fecha de última actualización (ISO 8601). null si nunca se sincronizó."
          },
          "hasta": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Hasta cuándo están guardados todos los pagos (ISO 8601). Lo posterior aún no se lee: no es saldo ni movimiento en tiempo real."
          },
          "completa": {
            "type": "boolean",
            "description": "true sólo si el histórico llegó al límite que permite Mercado Pago (los últimos 12 meses) y no quedó ninguna ventana sin leer. En false, una lista vacía o un total NO prueban que no haya pagos: dilo así."
          },
          "ventanasSinLeer": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991,
            "description": "Cuántos tramos de tiempo no se pudieron leer completos (demasiados pagos o resultados inestables). Con alguno, 'completa' es false."
          },
          "sincronizadoEn": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Cuándo terminó la última sincronización que guardó datos (ISO 8601). null si nunca."
          }
        },
        "required": [
          "desde",
          "hasta",
          "completa",
          "ventanasSinLeer",
          "sincronizadoEn"
        ],
        "additionalProperties": false,
        "description": "Qué cubre lo guardado. Payments search NO es una cartola: no incluye retiros, transferencias, saldo ni movimientos que no sean pagos recibidos."
      },
      "cursor": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "description": "Puntero a la página siguiente. Si viene distinto de null hay más filas: vuelve a llamar reenviándolo tal cual en 'cursor'. Un null significa que no queda nada por traer."
      }
    },
    "required": [
      "reembolsos",
      "cobertura",
      "cursor"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Errores de esta tool [#errores-de-esta-tool]

| Código                 | HTTP | Reintentable | Qué hacer                                                                                                           |
| ---------------------- | ---- | ------------ | ------------------------------------------------------------------------------------------------------------------- |
| `connection_disabled`  | 403  | no           | Reactívala en /connections o usa otra conexión del mismo sistema.                                                   |
| `connection_not_found` | 404  | no           | Usa uno de los connectionId que lista el error, o revisa la conexión en /connections. No hace falta reactivar nada. |
| `alcance_not_enabled`  | 403  | no           | Habilita el alcance en /connections o quítalo del input de la sincronización.                                       |

Toda llamada puede devolver además los códigos transversales (`validation_error`, `unauthorized`, `scope_not_granted`, `rate_limited`, entre otros): el detalle vive en el [catálogo de errores](/docs/referencia/errores).

## Próximos pasos [#próximos-pasos]

* [`mercadopago.conexion.sincronizar`](/docs/referencia/mercadopago/conexion-sincronizar): la tool que escribe los datos que esta lectura devuelve.
* [Sincronizar y consultar](/docs/conceptos/sincronizar-consultar): por qué leer datos reales son dos pasos.
