Skip to Content
YuzeDocs

Conventions

The rules that catch people out. Everything else is on each endpoint's page.

Dates are London days

from=2026-11-11&to=2026-11-11 means the whole of 11 November in London, midnight to midnight, including British Summer Time. Both ends are included.

  • Leave both out and you get the last 7 days.
  • One request covers 92 days at most. Longer returns 400 range_too_large.
  • Timestamps in responses are UTC, for example 2026-11-11T19:42:10.000Z. A transaction at 00:30 in June is on the previous day in UTC.

Amounts are in pounds

26.4 means £26.40, not 2,640 pence. Every amount is a decimal rounded to 2 places, next to a currency field such as GBP.

Lists use cursors

Lists are newest first, 50 to a page unless you send limit. When pagination.hasMore is true, send pagination.nextCursor back as cursor, with the same filters.

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://europe-west2-fyre-pos.cloudfunctions.net/publicApi/v1/transactions?from=2026-11-11&to=2026-11-11&cursor=eyJ2IjoxLCJyIjoidHJhbnNhY3Rpb25zIn0.c2lnbmF0dXJl"

A page can hold fewer records than limit and still have hasMore: true. Keep going until hasMore is false. A cursor from a different endpoint or with changed filters returns 400 invalid_cursor.

Sensitive fields need include

Some fields are left out unless you ask for them by name in include, as a comma-separated list.

include valueField that appearsEndpoints
unit_costLine item unitCostTransactions and their line items
discount_codediscount.codeTransactions
cardCard provider and last four digitsPayments, and payments inside a transaction
contactBranch phone and taxNumberBranches
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://europe-west2-fyre-pos.cloudfunctions.net/publicApi/v1/payments?include=card"

A value an endpoint does not support returns 400 invalid_request. card also needs payments:read.

Errors have one shape

{
  "error": {
    "code": "branch_forbidden",
    "message": "This API key is not permitted to access the requested branch",
    "requestId": "6f1c2a9e-4b1d-4c4b-9d8e-0a1b2c3d4e5f",
    "details": { "branchId": "YOUR_BRANCH_ID" }
  }
}

Switch on code, not message. Quote requestId when you contact Yuze; it is also in the X-Request-Id header.

A key can make 60 requests a minute, and 10 of those can be reports. Over the limit you get 429 rate_limited with a Retry-After header in seconds. If the limit cannot be checked, a report returns 503 rate_limit_unavailable; try again a few seconds later.

On this page