Para desarrolladores

Una API REST
sobre la que construir.

Endpoints autenticados con clave Bearer y limitados por scope: devoluciones, seguimiento, etiquetas y un agente de devoluciones al que preguntas en lenguaje natural. Cada clave lleva su propio límite de peticiones. La plataforma programable completa está en la hoja de ruta.

Disponible hoy

Lanza una petición.

Elige un endpoint. La petición y la respuesta se actualizan al lado.

Consultar una devolución

Devuelve una única devolución en JSON. {id} acepta el número de devolución (RET-####) o el id interno. Requiere returns:read.

GET /api/v1/returns/{id} · scope: returns:read
curl https://app.returner.me/api/v1/returns/RET-9284 \
  -H "Authorization: Bearer $RETURNER_API_KEY"
200 OK
{
  "return_id": "RET-9284",
  "order": "#1042",
  "status": "in_transit",
  "type": "refund",
  "created_at": "2026-03-14T09:12:00Z",
  "customer": { "name": "Maria Holm", "email": "[email protected]" },
  "refund": { "amount": 49.00, "currency": "EUR" },
  "carrier": "postnord",
  "tracking_number": "SE392847561",
  "items": [
    { "sku": "TEE-BLK-L", "name": "Cotton Tee",
      "quantity": 1, "reason": "too_small", "condition": null }
  ]
}
Referencia

Todos los endpoints.

GET /api/v1/returns/{id} Consultar una devolución (JSON) · returns:read disponible
GET /api/v1/returns/{id}/tracking Estado de seguimiento actual · returns:read disponible
GET /api/v1/returns/{id}/label Etiqueta de devolución en PDF (redirección 302) · labels:read disponible
POST /api/v1/agent Agente de devoluciones en lenguaje natural · returns:read disponible
GET /api/v1/openapi.json Especificación OpenAPI 3.1 · public disponible
OUT return.* Webhooks firmados: created · approved · received · refunded · exchanged · cancelled disponible
Autenticación y límites

Así se autorizan las peticiones.

Claves Bearer

Envía Authorization: Bearer ret_live_<key> en cada petición a /api/v1/*. La clave se muestra una sola vez, al crearla, y de ella guardamos solo un hash. Crea y revoca claves en Settings → API Keys.

Errores

  • 401 clave desconocida o revocada
  • 403 la clave no tiene el scope necesario
  • 404 esa devolución no existe en tu tienda
  • 429 límite de peticiones superado (mira Retry-After)

Todo error responde con JSON { error, message, code }: error y message son la misma cadena legible; code es un slug estable para máquinas (unauthorized, forbidden, not_found, rate_limited, …) sobre el que puedes ramificar sin riesgo.

Límite de peticiones

120 peticiones por minuto y clave. Cada respuesta lleva X-RateLimit-Limit, X-RateLimit-Remaining, y X-RateLimit-Reset; en un 429 se añade además Retry-After.

Capacidades

Esto es lo que te da la API.

v1
API REST versionada
disponible
Bearer
Autenticación con clave de API, de servidor a servidor
disponible
JSON
JSON estándar en la petición y en la respuesta
disponible
Scopes
returns:read · returns:write · labels:read
disponible
Limits
120 peticiones/min por clave, con cabeceras X-RateLimit-*
disponible
OpenAPI
Especificación OpenAPI 3.1: genera un cliente en cualquier lenguaje
disponible
Webhooks
Webhooks firmados para el ciclo de vida de la devolución
disponible
SDK
SDK de TypeScript: @returner/sdk
en hoja de ruta
OAuth 2.0
Tokens con scope para aplicaciones de terceros
en hoja de ruta
Conecta tu stack

Hoja de ruta de integraciones.

Shopify ya está disponible. Dinos cuál es la siguiente para tu stack y la priorizamos.

Shopify Instalación en un clic, sincronización automática de pedidos y portal integrado disponible
WooCommerce Plugin de WordPress contra tus pedidos de WooCommerce previsto
Plataformas propias Más cobertura REST para sincronizar pedidos desde cualquier sistema previsto
SGA / ERP Webhooks salientes que avisan a tu sistema de almacén disponible
Pasarelas de pago Reembolsos directos por Stripe, Klarna y Adyen previsto
Atención al cliente Datos de la devolución dentro de Zendesk, Gorgias, Help Scout e Intercom previsto
Email y marketing Eventos de Klaviyo desde el ciclo de la devolución disponible

Empieza a construir con Returner.

Crea una clave en Settings → API Keys y luego lee la especificación o genera un cliente.