> ## Documentation Index
> Fetch the complete documentation index at: https://storekit.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Response-formaat

> De data-en-meta-envelop van de merchant MCP: hoe resultaten, paginering, datumbereiken, tijdzones en valuta worden teruggegeven en geparseerd.

Elke succesvolle toolcall geeft één envelop terug, dubbel geleverd in het MCP-resultaat: als `structuredContent` en als de JSON-tekst van het eerste `content`-blok. Lees wat je client blootstelt; ze zijn identiek. Elke tool publiceert een bijpassende `outputSchema`, dus een spec-compliant client valideert `structuredContent` daartegen.

```json theme={null}
{
  "data": {
    "results": [
      { "id": 42, "name": "Soho", "timezone": "Europe/London", "currency": "GBP" }
    ]
  },
  "meta": {
    "schemaVersion": 2,
    "timezone": "Europe/London",
    "dateRange": {
      "from": "2026-09-11T23:00:00.000Z",
      "to": "2026-09-18T22:59:59.999Z",
      "basis": "fulfillment",
      "endInclusive": true
    },
    "pagination": {
      "page": 1,
      "limit": 50,
      "returned": 50,
      "total": 1240,
      "totalIsEstimate": true,
      "hasMore": true,
      "nextPage": 2,
      "truncated": true
    },
    "warnings": [],
    "currencyCodes": ["GBP"]
  }
}
```

## `data`

* **List-tools** geven `data.results` terug, een array.
* **Detail-tools** (`get-venue`, `get-order`, `get-menu`, `get-payment-link`, `get-order-stats`, de twee writes) geven het record zelf terug in `data`.
* `get-snooze-report` geeft een samenvatting, een tijdreeks en een gepagineerde `items`-array samen terug.
* Velden zijn per resource op een allowlist gezet. Wat niet in de `outputSchema` van een tool staat, wordt nooit verstuurd, wat het onderliggende record ook bevat.

## `meta`

| Veld | Type | Betekenis |
| - | - | - |
| `schemaVersion` | `2` | Verhoogd bij elke breaking change aan de envelop of aan een resourcevorm |
| `timezone` | IANA-naam of `null` | De tijdzone waarin het datumbereik is geïnterpreteerd |
| `dateRange` | object of `null` | Het opgeloste, inclusieve bereik dat daadwerkelijk is toegepast, als UTC-instanten, plus de `basis` |
| `pagination` | object of `null` | Aanwezig bij gepagineerde resultaten |
| `warnings` | `string[]` | Voor mensen leesbare voorbehouden, bijvoorbeeld dat stats bruto van refunds zijn |
| `currencyCodes` | `string[]`, optioneel | Unieke ISO 4217-codes in het resultaat |

`meta` is strikt: er verschijnen geen ongedocumenteerde sleutels en nieuwe sleutels komen bij een versiebump.

## Paginering

Pagina's beginnen bij **1**. `limit` is begrensd op 100 (25 voor `list-top-products`) en stilzwijgend verlaagd als je om meer vraagt.

`hasMore` en `nextPage` komen uit het ophalen van één rij voorbij de pagina, dus ze zijn altijd exact. `total` is `null` wanneer de tool niet telt, en kan als `totalIsEstimate: true` worden gevlagd op grote orderlijsten waar een exacte telling te traag is. Stuur loops aan vanuit `hasMore`, niet vanuit `total`:

```javascript theme={null}
let page = 1;
do {
  const { data, meta } = await call("list-orders", { venueId, from, to, page, limit: 100 });
  process(data.results);
  page = meta.pagination.nextPage;
} while (page !== null);
```

Lijsten zijn live; een record dat tussen pagina's wordt aangemaakt, kan volgende pagina's verschuiven.

## Datums en tijdzones

**Inputs** (`from`, `to`) accepteren:

* `YYYY-MM-DD` — een lokale kalenderdatum in de effectieve tijdzone, inclusief aan beide uiteinden (`to: "2026-09-18"` loopt door tot `23:59:59.999` die dag); of
* een ISO-datetime met `Z` of een numerieke offset en hoogstens drie fractionele cijfers, bijv. `2026-09-18T14:00:00+01:00`. Datetimes zonder offset worden geweigerd.

De **effectieve tijdzone** is `timezone` indien opgegeven, anders de tijdzone van het filiaal wanneer `venueId` is meegegeven, anders `UTC`. `meta.timezone` vermeldt altijd welke is gebruikt.

Bereiken mogen hoogstens **90 lokale kalenderdagen** beslaan; langere bereiken worden afgewezen met `INVALID_INPUT`. Elke tool heeft een standaardbereik (7 of 30 dagen) en een `basis` — `creation`, `fulfillment`, `refund` of `snooze_overlap` — die zegt welke tijdstempel het bereik filtert; zie [Tools](/docs/nl/developers/mcp/tools). `meta.dateRange` echoot het opgeloste bereik zodat een client precies kan tonen wat is meegeteld.

**Write-inputs** (`startDate`, `endDate`, `expiresAt`) moeten volledige ISO-tijdstempels met een offset zijn. Alleen-datum-waarden worden voor writes niet geaccepteerd.

## Geld

Alle bedragen zijn integers in **minor currency units** (pence, cents) en worden nooit omgerekend. De valuta reist mee met de data — als een `currency`-veld op venues, orders, rekeningen en links, en als `meta.currencyCodes` voor het resultaat als geheel. `codeAmount` op een percentagekorting is in tienden van een procent, niet in een valuta-bedrag.

Account-brede stats en top-productqueries op een account waarvan de filialen meerdere valuta gebruiken, worden geweigerd (`INVALID_INPUT`); geef `venueId` mee.

## Afbeeldingen

`get-payment-link-qr` is de enige tool die binaire data teruggeeft. Zijn `content`-array bevat het JSON-tekstblok gevolgd door een native MCP-afbeeldingsblok:

```json theme={null}
{
  "type": "image",
  "mimeType": "image/png",
  "data": "<base64 PNG>"
}
```

`structuredContent` bevat alleen de checkout-URL en de linkmetadata; er is geen base64-veld binnen `data`.

## Errors

Een mislukte call is **geen** envelop. Het is een `isError: true`-resultaat waarvan het enige tekstblok een `{ error }`-object is, zonder `structuredContent`. Zie [Errors](/docs/nl/developers/mcp/errors).


## Related topics

- [Merchant MCP-overzicht](/docs/nl/developers/mcp/overview.md)
- [Payload-formaat](/docs/nl/developers/webhooks/payload-format.md)
- [Je storekit-store-URL vinden en delen](/docs/nl/guides/store-settings/store-url.md)
- [Afbeeldingsspecificaties](/docs/nl/guides/store-settings/image-specifications.md)
- [Klantgegevens](/docs/nl/guides/marketing/customer-data.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.