Skip to main content

Create POS order

Method POST

https://my.easyweek.io/api/public/v2/orders

Description: This endpoint creates a POS draft order (status open). The receipt is attributed to the required order-level staffer_uuid, who must hold the access-pos permission. Per-line staffer_uuid is optional and defaults to the order-level seller. At least one of goods / services / vouchers is required. Payment is handled separately by Pay order.

Example Request

curl -i -X POST \
https://my.easyweek.io/api/public/v2/orders \
-H 'Authorization: Bearer <YOUR_SECRET>' \
-H 'Workspace: <YOUR_WORKSPACE>'

Request body

{
"location_uuid": "123b2980-3506-4f8c-abce-97e1ab653406",
"staffer_uuid": "eac5a506-69c0-40c4-8758-85c501d26bcb",
"customer_uuid": "b6d6a1f2-6f1e-4a2b-9a2c-1f2e3d4c5b6a",
"discount_amount": 0,
"discount_mode": "fixed",
"discount_percent": null,
"promocode": null,
"promocode_discount_amount": null,
"description": null,
"comment": null,
"invoice_note": null,
"goods": [
{ "good_uuid": "9c2f1b7e-2f8a-4a1e-bd2c-6b3a1f9e0d11", "price": 1500, "quantity": 2, "staffer_uuid": "eac5a506-69c0-40c4-8758-85c501d26bcb" }
],
"services": [
{ "service_uuid": "43537759-435b-4871-bf11-e3ace6a4464b", "price": 2000, "quantity": 1, "booking_uuid": null }
],
"vouchers": [
{ "voucher_template_uuid": "d3f1c2b4-6a7e-4b1c-9d0e-1f2a3b4c5d6e", "price": 9000, "quantity": 1 }
]
}

Body Parameters

  • location_uuid (string, required): The branch the sale happens at.
  • staffer_uuid (string, required): The staff member the receipt is attributed to. Must hold the access-pos permission.
  • customer_uuid (string, optional): The customer the order is linked to.
  • goods (array, optional): Line items — each { good_uuid, price, quantity, staffer_uuid? }. Required if services and vouchers are absent.
  • services (array, optional): Line items — each { service_uuid, price, quantity, staffer_uuid?, booking_uuid? }.
  • vouchers (array, optional): Line items — each { voucher_template_uuid, price, quantity, staffer_uuid? }.
  • discount_amount (integer, optional): Order-level discount in minor units.
  • discount_mode (string, optional): fixed or percent.
  • discount_percent (integer, optional): Percentage discount (0–100), used with discount_mode = percent.
  • promocode (string, optional): A promocode to apply.
  • promocode_discount_amount (integer, optional): Explicit promocode discount amount.
  • description (string, optional): Order description.
  • comment (string, optional): Order comment.
  • invoice_note (string, optional): Note printed on the invoice.

Example Response

{
"uuid": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
"status": "open",
"order_number": 42,
"is_reverted": false,
"booking_uuids": [],
"created_at": "2026-07-16T09:00:00Z",
"subtotal": 3000,
"account_paid_amount": 3000,
"voucher_paid_amount": 0,
"discount_amount": 0,
"discount_mode": "fixed",
"discount_percent": null,
"promocode": null,
"promocode_discount_amount": 0,
"payment_method": null,
"comment": null,
"customer": {
"uuid": "b6d6a1f2-6f1e-4a2b-9a2c-1f2e3d4c5b6a",
"first_name": "Jane",
"last_name": "Doe",
"middle_name": null,
"phone": "+12025550111",
"email": "jane@example.com"
},
"goods": [
{
"good_uuid": "9c2f1b7e-2f8a-4a1e-bd2c-6b3a1f9e0d11",
"name": "Shampoo",
"article": "SKU-123",
"quantity": 2,
"price": 1500
}
],
"services": [],
"vouchers": []
}