Voor developers

Een REST API
waarop je kunt bouwen.

Endpoints met Bearer-authenticatie en scopes voor retouren, tracking, labels en een retourassistent die je in gewone taal bevraagt, met rate limits per key. Het bredere programmeerbare platform staat op de roadmap.

Nu beschikbaar

Probeer een request.

Kies een endpoint. De request en response ernaast worden direct bijgewerkt.

Een retour ophalen

Haalt één retour op als JSON. {id} accepteert het retournummer (RET-####) of de interne id. Vereist 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 }
  ]
}
Referentie

Alle endpoints.

GET /api/v1/returns/{id} Een retour ophalen (JSON) · returns:read live
GET /api/v1/returns/{id}/tracking Actuele trackingstatus · returns:read live
GET /api/v1/returns/{id}/label Retourlabel als PDF (302-redirect) · labels:read live
POST /api/v1/agent Retourassistent voor vragen in gewone taal · returns:read live
GET /api/v1/openapi.json OpenAPI 3.1-specificatie · public live
OUT return.* Ondertekende webhooks: created · approved · received · refunded · exchanged · cancelled live
Authenticatie & limieten

Zo worden requests geautoriseerd.

Bearer-keys

Stuur Authorization: Bearer ret_live_<key> mee met elke /api/v1/* request. Een key wordt bij het aanmaken één keer getoond en we bewaren alleen een hash. Keys maak je aan en trek je in via Settings → API Keys.

Fouten

  • 401 onbekende of ingetrokken key
  • 403 de vereiste scope ontbreekt op de key
  • 404 de retour bestaat niet in je webshop
  • 429 rate limit overschreden (zie Retry-After)

Elke fout geeft JSON terug { error, message, code }: error en message bevatten dezelfde leesbare tekst; code is een stabiele code voor machines (unauthorized, forbidden, not_found, rate_limited, …) waarop je veilig kunt vertakken.

Rate limits

120 requests per minuut per key. Elke response bevat X-RateLimit-Limit, X-RateLimit-Remaining, en X-RateLimit-Reset; bij een 429 komt daar nog bij Retry-After.

Mogelijkheden

Dit geeft de API je.

v1
Versiebeheerde REST API
live
Bearer
Authenticatie met API-key, server naar server
live
JSON
Standaard JSON voor request en response
live
Scopes
returns:read · returns:write · labels:read
live
Limits
120 requests/min per key, met X-RateLimit-*-headers
live
OpenAPI
OpenAPI 3.1-specificatie: genereer een client in elke taal
live
Webhooks
Ondertekende uitgaande webhooks voor de levenscyclus van retouren
live
SDK
TypeScript SDK: @returner/sdk
roadmap
OAuth 2.0
Tokens met scopes voor apps van derden
roadmap
Koppel je stack

Roadmap voor integraties.

Shopify is nu beschikbaar. Vertel ons wat jouw stack hierna nodig heeft, dan geven we dat prioriteit.

Shopify Installatie met één klik, automatische ordersynchronisatie, ingebouwd portaal live
WooCommerce WordPress-plugin die met je WooCommerce-orders werkt gepland
Eigen platforms Bredere REST-dekking om orders vanuit elk systeem te synchroniseren gepland
WMS / ERP Uitgaande webhooks die je magazijnsysteem informeren live
Betaalproviders Direct terugbetalen via Stripe, Klarna en Adyen gepland
Klantenservice Retourdata in Zendesk, Gorgias, Help Scout en Intercom gepland
E-mail & marketing Klaviyo-events uit de levenscyclus van retouren live

Bouw met Returner.

Maak een key aan via Settings → API Keys, lees daarna de specificatie of genereer een client.