---
title: "Submit a dine-in or takeaway order"
method: POST
path: "/api/v1/b/{handle}/orders"
---

# Submit a dine-in or takeaway order

`POST /api/v1/b/{handle}/orders`

## Request

- Base URL: `https://www.trusgent.com`
- URL: `https://www.trusgent.com/api/v1/b/{handle}/orders`
- Auth: one of:
  - none
  - HTTP bearer

Creates a PENDING order from the published menu. Restaurant facades only; requires orderEnabled on the facade. Kitchen is notified via in-app, WhatsApp, or webhook when configured.

## Path parameters

- `handle` string, required

## Request body

- BusinessOrderRequest
  - `table` string, required: Table code from facade.tables or scan QR
  - `fulfillmentMode` 'DINE_IN' | 'TAKEAWAY' | 'PICKUP'
  - `guestName` string
  - `guestPhone` string
  - `note` string
  - `items` object[], required
    - `name` string, required
    - `price` string: Display price from menu
    - `currency` string
    - `qty` integer, required

## Response `201`

Order created (pending merchant acceptance)

- BusinessOrderResponse
  - `kind` string
  - `id` string: Order ID
  - `status` string
  - `handle` string
  - `opsHint` string
  - `urls` object
    - `facade` string
    - `passport` string
    - `ops` string

## Other responses

- `400`: Invalid request or ordering disabled
- `404`: Business facade not found
- `429`: Rate limit exceeded

---

[API](https://skmtc.dev/trusgent/apis/trusgent-trust-api.md) · [All operations](https://skmtc.dev/trusgent/apis/trusgent-trust-api/llms.txt) · [OpenAPI document](https://skmtc.dev/trusgent/apis/trusgent-trust-api/revisions/a17c02cddf1d?raw)
