cancel-order
Method: POST
Path: /orders/{order_number}/cancel
Tags: Orders
Summary
Cancel order
Description
Order cancellation
Storefront SDK Usage
SDK Method: sdk.order.cancelOrder()
Example:
typescript
const { data, error } = await sdk.order.cancelOrder(
{ order_number: "ORD-2024-001" },
{
cancellation_reason: "Customer requested cancellation",
refund_mode: "original_payment_mode",
feedback: "Customer changed their mind about the purchase"
}
);
if (error) {
console.error("Failed to cancel order:", error.message);
} else {
console.log("Order cancelled successfully");
console.log("Updated order status:", data.order?.status);
console.log("Cancellation reason:", data.order?.cancellation_reason);
}TypeScript Definition
typescript
"cancel-order": {
parameters: {
query?: never;
header?: never;
path: {
/** @description order number */
order_number: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": {
cancellation_reason: string;
/** @enum {string} */
refund_mode: "original_payment_mode" | "bank_transfer";
/** @description verified bank account id if refund_mode = bank_transfer */
bank_account_id?: string;
/** @description feedback text */
feedback?: string;
};
};
};
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @default order details */
readonly message: string;
readonly success?: boolean;
content?: {
order?: components["schemas"]["OrderDetail"];
};
};
};
};
401: components["responses"]["Unauthorized"];
404: components["responses"]["NotFound"];
};
};Component References
| Reference | Resolves To |
|---|---|
components["schemas"]["OrderDetail"] | OrderDetail |
components["responses"]["Unauthorized"] | Unauthorized |
components["responses"]["NotFound"] | NotFound |
Parameters
- order_number (path): order number
Request Body
Content Types: application/json
Responses
200
OK
401
Not authorized for given operation on the Resource
404
Requested resource not found
OpenAPI Definition
json
{
"tags": [
"Orders"
],
"operationId": "cancel-order",
"summary": "Cancel order",
"description": "Order cancellation",
"externalDocs": {
"url": "https://llm-docs.commercengine.io/storefront/operations/cancel-order",
"description": "API reference for the cancel-order operation"
},
"parameters": [
{
"name": "order_number",
"in": "path",
"description": "order number",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"cancellation_reason",
"refund_mode"
],
"properties": {
"cancellation_reason": {
"type": "string"
},
"refund_mode": {
"type": "string",
"enum": [
"original_payment_mode",
"bank_transfer"
]
},
"bank_account_id": {
"description": "verified bank account id if refund_mode = bank_transfer",
"type": "string"
},
"feedback": {
"description": "feedback text",
"type": "string"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"message": {
"type": "string",
"default": "order details",
"readOnly": true
},
"success": {
"type": "boolean",
"readOnly": true
},
"content": {
"properties": {
"order": {
"$ref": "#/components/schemas/OrderDetail"
}
},
"type": "object"
}
}
}
}
}
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"404": {
"$ref": "#/components/responses/NotFound"
}
},
"security": [
{
"Authorization": []
}
],
"x-speakeasy-group": "orders",
"x-speakeasy-ignore": false,
"x-speakeasy-name-override": "cancelOrder"
}Auto-generated from OpenAPI spec and TypeScript definitions