> For the complete documentation index, see [llms.txt](https://docs.spurtcommerce.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.spurtcommerce.com/api-reference/store/orders/order-details-and-tracking.md).

# Order Details And Tracking

Retrieve order details, tracking and payment status.

## Get order details for the authenticated customer.

> Get order details for the authenticated customer.\
> \
> \*\*Authentication:\*\* Customer bearer token required.\
> \
> \*\*Feature area:\*\* Orders\
> \
> \*\*Implementation source:\*\* \`src/api/store/controllers/CustomerOrderController.ts\`\
> \
> \*\*Request example provenance:\*\* Illustrative response object; exact returned detail fields are order-dependent.\
> \
> \*\*Response example provenance:\*\* Illustrative response object; exact returned detail fields are order-dependent.\
> \
> \> \*\*Example status: Illustrative.\*\* The example is included to demonstrate request/response shape in the reference UI; verify the owning controller and request DTO before using it as a contract.

```json
{"openapi":"3.0.3","info":{"title":"SpurtCommerce Store API","version":"6.0.0"},"tags":[{"name":"Order details and tracking","description":"Retrieve order details, tracking and payment status."}],"servers":[{"url":"https://api.example.com","description":"Replace with your SpurtCommerce API host. Paths include the /api prefix."}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Paste the JWT access token returned by the corresponding login endpoint."}}},"paths":{"/api/orders/order-detail/{orderId}":{"get":{"operationId":"getApiOrdersOrderDetailOrderid","summary":"Get order details for the authenticated customer.","description":"Get order details for the authenticated customer.\n\n**Authentication:** Customer bearer token required.\n\n**Feature area:** Orders\n\n**Implementation source:** `src/api/store/controllers/CustomerOrderController.ts`\n\n**Request example provenance:** Illustrative response object; exact returned detail fields are order-dependent.\n\n**Response example provenance:** Illustrative response object; exact returned detail fields are order-dependent.\n\n> **Example status: Illustrative.** The example is included to demonstrate request/response shape in the reference UI; verify the owning controller and request DTO before using it as a contract.","tags":["Order details and tracking"],"parameters":[{"name":"orderId","in":"path","required":true,"schema":{"type":"string"},"description":"Value for orderId."}],"responses":{"200":{"description":"Successful response. Illustrative response object; exact returned detail fields are order-dependent. Example is illustrative and does not guarantee a stable response contract.","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"integer"},"message":{"type":"string"},"data":{"type":"object","properties":{"orderId":{"type":"integer"},"orderPrefixId":{"type":"string"},"total":{"type":"string"},"productList":{"type":"array","items":{}}},"additionalProperties":true}},"additionalProperties":true}}}}}}}}}
```

## Download the authenticated customer invoice PDF for an order.

> Download the authenticated customer invoice PDF for an order.\
> \
> \*\*Authentication:\*\* Customer bearer token required.\
> \
> \*\*Feature area:\*\* Orders\
> \
> \*\*Implementation source:\*\* \`src/api/store/controllers/CustomerOrderController.ts\`\
> \
> \*\*Request example provenance:\*\* The current handler reads \`orderId\` from the query string and streams a PDF download; the legacy API comment documents a JSON-shaped example but runtime response is binary.\
> \
> \*\*Response example provenance:\*\* The current handler reads \`orderId\` from the query string and streams a PDF download; the legacy API comment documents a JSON-shaped example but runtime response is binary.\
> \
> \> Example is based on the linked repository source. Replace example identifiers and credentials with values from your tenant.

```json
{"openapi":"3.0.3","info":{"title":"SpurtCommerce Store API","version":"6.0.0"},"tags":[{"name":"Order details and tracking","description":"Retrieve order details, tracking and payment status."}],"servers":[{"url":"https://api.example.com","description":"Replace with your SpurtCommerce API host. Paths include the /api prefix."}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Paste the JWT access token returned by the corresponding login endpoint."}}},"paths":{"/api/orders/order-export-pdf":{"get":{"operationId":"getApiOrdersOrderExportPdf","summary":"Download the authenticated customer invoice PDF for an order.","description":"Download the authenticated customer invoice PDF for an order.\n\n**Authentication:** Customer bearer token required.\n\n**Feature area:** Orders\n\n**Implementation source:** `src/api/store/controllers/CustomerOrderController.ts`\n\n**Request example provenance:** The current handler reads `orderId` from the query string and streams a PDF download; the legacy API comment documents a JSON-shaped example but runtime response is binary.\n\n**Response example provenance:** The current handler reads `orderId` from the query string and streams a PDF download; the legacy API comment documents a JSON-shaped example but runtime response is binary.\n\n> Example is based on the linked repository source. Replace example identifiers and credentials with values from your tenant.","tags":["Order details and tracking"],"parameters":[{"name":"orderId","in":"query","required":false,"schema":{"type":"integer"},"description":"Query parameter orderId."}],"responses":{"200":{"description":"Successful response. The repository sample is not a JSON document."}}}}}}
```

## Retrieve shipment and delivery status for an order product.

> Retrieve shipment and delivery status for an order product.\
> \
> \*\*Authentication:\*\* Customer bearer token required; permission \`view-order-history\` applies.\
> \
> \*\*Feature area:\*\* Orders\
> \
> \*\*Implementation source:\*\* \`src/api/store/controllers/CustomerOrderController.ts\`\
> \
> \*\*Request example provenance:\*\* Source response fields and messages; sample values illustrative.\
> \
> \*\*Response example provenance:\*\* Source response fields and messages; sample values illustrative.\
> \
> \> \*\*Example status: Illustrative.\*\* The example is included to demonstrate request/response shape in the reference UI; verify the owning controller and request DTO before using it as a contract.

```json
{"openapi":"3.0.3","info":{"title":"SpurtCommerce Store API","version":"6.0.0"},"tags":[{"name":"Order details and tracking","description":"Retrieve order details, tracking and payment status."}],"servers":[{"url":"https://api.example.com","description":"Replace with your SpurtCommerce API host. Paths include the /api prefix."}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Paste the JWT access token returned by the corresponding login endpoint."}}},"paths":{"/api/orders/track-order-product":{"get":{"operationId":"getApiOrdersTrackOrderProduct","summary":"Retrieve shipment and delivery status for an order product.","description":"Retrieve shipment and delivery status for an order product.\n\n**Authentication:** Customer bearer token required; permission `view-order-history` applies.\n\n**Feature area:** Orders\n\n**Implementation source:** `src/api/store/controllers/CustomerOrderController.ts`\n\n**Request example provenance:** Source response fields and messages; sample values illustrative.\n\n**Response example provenance:** Source response fields and messages; sample values illustrative.\n\n> **Example status: Illustrative.** The example is included to demonstrate request/response shape in the reference UI; verify the owning controller and request DTO before using it as a contract.","tags":["Order details and tracking"],"parameters":[{"name":"orderProductId","in":"query","required":false,"schema":{"type":"integer"},"description":"Query parameter orderProductId."}],"responses":{"200":{"description":"Successful response. Source response fields and messages; sample values illustrative. Example is illustrative and does not guarantee a stable response contract.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"status":{"type":"string"},"data":{"type":"object","properties":{"orderProductId":{"type":"integer"},"orderId":{"type":"integer"},"productId":{"type":"integer"},"orderProductPrefixId":{"type":"string"},"trackingId":{"type":"string"},"trackingUrl":{"type":"string"},"productName":{"type":"string"},"productPrice":{"type":"string"},"total":{"type":"string"},"productQuantity":{"type":"integer"},"orderPrefixId":{"type":"string"},"deliveryStatus":{"type":"array","items":{"type":"object","properties":{"orderStatusId":{"type":"integer"},"name":{"type":"string"},"createdDate":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":true}},"additionalProperties":true}}}},"400":{"description":"Error response example. Source response fields and messages; sample values illustrative.","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"integer"},"message":{"type":"string"}},"additionalProperties":true}}}}}}}}}
```
