Skip to content

List Orders ​

Returns the orders of the organization, newest pickup first. Without filters it returns today's pending orders across every establishment, which is what a kitchen screen or a daily sync usually wants.

GET https://api.canteenweb.com/api/v1/admin/orders

Query parameters ​

ParameterTypeDescription
statusstringOne of pending, completed, canceled, archived. Defaults to pending.
establishmentUUIDOnly orders for this establishment. Defaults to all.
start_dateYYYY-MM-DDOrders with a pickup date on or after this day. Defaults to today. Cannot be in the future.
end_dateYYYY-MM-DDOrders with a pickup date on or before this day. Defaults to today. Must be on or after start_date.
payment_method_typestringOne of cash, card, credit (Canteen credit), qr (in person QR payment).
pageintegerSee Pagination.

Dates are interpreted in the organization time zone. The filter applies to the pickup date, not to when the order was placed.

Examples ​

Today's pending orders:

bash
curl "https://api.canteenweb.com/api/v1/admin/orders" \
  -H "Authorization: Bearer your-access-token" \
  -H "X-CANTEEN-ORGANIZATION: your-org-uuid"

Completed orders of one establishment:

bash
curl "https://api.canteenweb.com/api/v1/admin/orders?status=completed&establishment=9e11ee05-32a4-4898-8735-5a7f88003409" \
  -H "Authorization: Bearer your-access-token" \
  -H "X-CANTEEN-ORGANIZATION: your-org-uuid"

Pending orders for a date range:

bash
curl "https://api.canteenweb.com/api/v1/admin/orders?start_date=2025-02-01&end_date=2025-02-12" \
  -H "Authorization: Bearer your-access-token" \
  -H "X-CANTEEN-ORGANIZATION: your-org-uuid"

Orders paid in cash:

bash
curl "https://api.canteenweb.com/api/v1/admin/orders?payment_method_type=cash" \
  -H "Authorization: Bearer your-access-token" \
  -H "X-CANTEEN-ORGANIZATION: your-org-uuid"

Response ​

json
{
  "data": [
    {
      "uuid": "9e31eadd-b0ad-4ec4-866f-8b3418028922",
      "currency": "ARS",
      "reference": "SO-34BE51LA2T",
      "subtotal": { "amount": "7006", "currency": "ARS", "formatted": "$ 70,06" },
      "total": { "amount": "7006", "currency": "ARS", "formatted": "$ 70,06" },
      "pickup_at": "2025-02-12",
      "canceled_at": null,
      "completed_at": null,
      "notes": null,
      "created_at": "2025-02-12T14:58:29.000000Z",
      "updated_at": "2025-02-12T14:58:29.000000Z",
      "can_be_cancelled": false,
      "status": { "label": "Pendiente", "value": "pending" },
      "payment_method_type": { "label": "Efectivo", "value": "cash" },
      "customer": {
        "uuid": "9e11ee05-37b3-42db-b2b1-9fa2d6e017bc",
        "full_name": "Juana Pérez",
        "class": "3er grado A",
        "parent": {
          "uuid": "3d11ee05-37b3-42db-b2b1-9fa2d6e017be",
          "full_name": "María Pérez",
          "email": "maria.perez@example.com",
          "phone": "+5491123456789",
          "credit": { "amount": "10000", "currency": "ARS", "formatted": "$ 100,00" }
        }
      },
      "establishment": {
        "uuid": "9e11ee05-32a4-4898-8735-5a7f88003409",
        "name": "Sede 1"
      },
      "items": [
        {
          "uuid": "9e31eadd-b3ee-47b6-a332-1d5318ba9bb0",
          "name": "Milanesa con puré",
          "description": null,
          "price": { "amount": "7006", "currency": "ARS", "formatted": "$ 70,06" },
          "quantity": 1,
          "total": { "amount": "7006", "currency": "ARS", "formatted": "$ 70,06" },
          "image": "",
          "notes": null,
          "fulfilled_quantity": 0,
          "fulfillment_status": "unfulfilled",
          "sku": "MIL-PURE",
          "is_menu": true,
          "status": { "label": "Pendiente", "value": "pending" },
          "created_at": "2025-02-12T14:58:29.000000Z"
        }
      ]
    }
  ],
  "links": {
    "first": "https://api.canteenweb.com/api/v1/admin/orders?page=1",
    "last": "https://api.canteenweb.com/api/v1/admin/orders?page=1",
    "prev": null,
    "next": null
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 1,
    "path": "https://api.canteenweb.com/api/v1/admin/orders",
    "per_page": 25,
    "to": 1,
    "total": 1
  },
  "success": true,
  "message": "Request was successful."
}

Fields ​

Order ​

FieldTypeDescription
uuidstringIdentifier of the order.
referencestringHuman readable reference printed on receipts, for example SO-34BE51LA2T.
currencystringISO currency code.
subtotal, totalmoneySee money objects.
pickup_atYYYY-MM-DDDay the order is picked up, in the organization time zone.
canceled_at, completed_attimestamp or nullWhen the order reached that state.
notesstring or nullFree text entered by the parent when ordering.
can_be_cancelledbooleanWhether the backoffice would still allow cancelling it.
statusenumpending, completed, canceled, archived.
payment_method_typeenumcash, card, credit, qr.
created_at, updated_attimestampISO 8601.

Customer ​

The diner the order is for, with the parent account that pays for it.

FieldTypeDescription
uuidstringIdentifier of the diner.
full_namestringDiner name.
classstring or nullClass or group name, for schools.
parent.uuid, parent.full_namestringParent account.
parent.email, parent.phonestring or nullParent contact.
parent.creditmoneyCurrent balance of the parent account at the time of the request.

When the order was placed at the point of sale for a walk in customer, class is null and the parent fields describe the generic customer of the establishment.

Establishment ​

FieldTypeDescription
uuidstringIdentifier of the establishment.
namestringEstablishment name.

Item ​

FieldTypeDescription
uuidstringIdentifier of the line.
name, descriptionstringProduct name and description at the time of the order.
skustring or nullSKU of the product, when set.
price, totalmoneyUnit price and line total.
quantityintegerUnits ordered.
fulfilled_quantityintegerUnits already delivered.
fulfillment_statusstringunfulfilled, partially_fulfilled or fulfilled.
is_menubooleantrue when the line is a menu with a chosen option rather than a plain product.
imagestringURL of the product image, or an empty string.
notesstring or nullLine level note from the parent.
statusenumLine status, same values as the order status.

Private API. Access is granted per organization.