POS API / Orders

Cancel Order

Cancel a pending POS order before it is paid or expires.

POST {{base_url}}/orders/{order_id}/cancel

Path Parameters

Field Type Details
order_id string required — The POS order ID to cancel

Important: Only orders with PENDING status can be cancelled. Attempting to cancel a paid, expired, or already cancelled order will return an error.

Example Request

POST /merchant-api/pos/v1/orders/POS-20240115-A1B2C3/cancel
Authorization: Basic {base64_credentials}

Success Response 200

{
  "message": {
    "success": ["Order cancelled"]
  },
  "data": {
    "order_id": "POS-20240115-A1B2C3",
    "amount": "25.00 EUR",
    "raw_amount": 25.00,
    "currency": "EUR",
    "status": "CANCELLED",
    "reference": "INV-2024-001",
    "terminal_id": "terminal-01",
    "paid_at": null,
    "expires_at": "2024-01-15T14:05:00+00:00",
    "created_at": "2024-01-15T14:00:00+00:00"
  }
}

Error Response 422

{
  "message": {
    "error": ["Only pending orders can be cancelled"]
  }
}