Group Cart Order Create

​

Places the group order. One order is created for the whole group, with is_group set to true, a participants list, and participant_id on each line so you can show who ordered what.

This call is idempotent on Idempotency-Key. If it times out, retry with the same key rather than a new one — that is how a group avoids being charged twice.

Afterwards the session is placed, the invite token is cleared and every participant is marked completed. The session cannot be reused.

Path Parameters

  • UUID of the group cart session

Headers

  • White Label Application Key

  • Version of the API that the client app expects

  • The identifier of the device and/or client app that sent the request

  • Required even on requests with no body

  • Bearer token of the signed-in customer

  • Retry the same value after a timeout to avoid creating a second order

Body

required
application/json
  • The host's contact details for the order.

  • The payment_init_hash from the group payment initialization, plus whatever the payment method produced.

    Properties: 2

Responses

  • The order, with is_group true and the participant roster attached.

  • 1203 nothing to pay · 1204 not the host · 1220 the checkout is stale

  • Unknown group cart.

Request Example for post/group-cart/{group_cart_uuid}/order
curl https://api-public-demo.menu.app/api/group-cart/7c9e6679-f1e4-40b3-a2c5-e8f1a0b9d4c3/order \
  --request POST \
  --header 'Application: ' \
  --header 'Api-Version: 4.78.0' \
  --header 'Device-UUID: ' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: ' \
  --header 'Idempotency-Key: ' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "customer_info": {},
  "payment_info": {
    "payment_init_hash": "",
    "one_time_token": ""
  }
}'
No Body