API reference
Orders
Orders are created by buyers at checkout. The API reads them and runs the same actions as the dashboard: approve or reject a manual payment, cancel, redeliver, resend the receipt, refund to store balance, keep a private note. Every order has a short reference in publicRef (for example 7K2Q-9XHD, or NOVA-7K2Q-9XHD when the store has an order ID prefix): it is what buyers see on their order page and receipts, and it works wherever {id} appears in an order path, next to the long id.
Endpoints
GET/ordersorders:read
List orders.
| Query parameters | Type | Description |
|---|---|---|
| status | Type: string | pending, awaiting_verification, paid, delivered, cancelled, underpaid, oversold, expired, failed, refunded. |
| kind | Type: product | topup | Product orders or buyer balance top-ups. |
| Type: string | Buyer email contains this text. | |
| since | Type: ISO date | Created at or after. |
| until | Type: ISO date | Created before. |
| limit | Type: 1..100 | Page size. Default 25. |
| cursor | Type: string | nextCursor from the previous page. |
curl https://api.sellhidden.com/v1/orders \
-H "Authorization: Bearer hsk_live_…"GET/orders/{id}orders:read
Get an order. {id} is the order's publicRef (any case, hyphen optional) or its long id.
curl https://api.sellhidden.com/v1/orders/ID \
-H "Authorization: Bearer hsk_live_…"{ "order": { "id": "clx…", "publicRef": "7K2Q-9XHD", "status": "delivered", … } }POST/orders/{id}/approveorders:writeIdempotency-Key
Approve a manual payment. Marks the order as paid and delivers it. A manual-method claim is verified (the platform fee is debited from your balance); a crypto order that received part of its total is settled on what arrived; any other payable order is settled as paid outside the platform, which needs confirmOutsidePlatform: true while its invoice is still open (409 invoice_open otherwise).
| Body | Type | Description |
|---|---|---|
| confirmOutsidePlatform | Type: boolean | The buyer paid you directly, outside the platform. |
curl -X POST \
https://api.sellhidden.com/v1/orders/ID/approve \
-H "Authorization: Bearer hsk_live_…" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{}'{ "ok": true, "credited": 0, "feeDebited": 0.95, "warning": null, "order": { "id": "clx…", "status": "delivered", … } }POST/orders/{id}/rejectorders:writeIdempotency-Key
Reject a manual payment. Cancels a manual-method order with the reason; the buyer is emailed.
| Body | Type | Description |
|---|---|---|
| reason | Type: string | Up to 500 characters, shown to the buyer. |
curl -X POST \
https://api.sellhidden.com/v1/orders/ID/reject \
-H "Authorization: Bearer hsk_live_…" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"reason":"No payment received."}'POST/orders/{id}/cancelorders:writeIdempotency-Key
Cancel an order. Pending, awaiting-verification, underpaid or expired orders. An order holding a partial crypto payment answers 409 partial_payment: approve or refund it instead.
| Body | Type | Description |
|---|---|---|
| reason | Type: string | Private, up to 500 characters. |
curl -X POST \
https://api.sellhidden.com/v1/orders/ID/cancel \
-H "Authorization: Bearer hsk_live_…" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{}'POST/orders/{id}/redeliverorders:writeIdempotency-Key
Run delivery again. For a paid order with items still not delivered (oversold, failed). 409 already_delivered when everything was delivered: resend the receipt instead.
curl -X POST \
https://api.sellhidden.com/v1/orders/ID/redeliver \
-H "Authorization: Bearer hsk_live_…" \
-H "Idempotency-Key: $(uuidgen)"{ "ok": true, "delivered": 2, "failed": 0, "order": { … } }POST/orders/{id}/resend-receiptorders:writeIdempotency-Key
Resend the receipt. Emails the buyer their receipt and items again. Paid orders only; 3 per order and 60 per store per hour.
curl -X POST \
https://api.sellhidden.com/v1/orders/ID/resend-receipt \
-H "Authorization: Bearer hsk_live_…" \
-H "Idempotency-Key: $(uuidgen)"POST/orders/{id}/refundorders:writeIdempotency-Key
Refund to store balance. The buyer receives store credit. A paid order is refunded in full or for amountUsd; an underpaid or expired order with a partial crypto payment hands over everything that arrived.
| Body | Type | Description |
|---|---|---|
| amountUsd | Type: number | Partial refund of a paid order; default: the full amount. |
| reason | Type: string | Up to 500 characters. |
curl -X POST \
https://api.sellhidden.com/v1/orders/ID/refund \
-H "Authorization: Bearer hsk_live_…" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"reason":"Duplicate purchase."}'{ "ok": true, "creditedUsd": 29, "order": { "id": "clx…", "status": "refunded", … } }PUT/orders/{id}/noteorders:write
Write the private note. A note only you see (API and dashboard, as order.note). POST works the same.
| Body | Type | Description |
|---|---|---|
| noterequired | Type: string | Up to 2,000 characters. |
curl -X PUT https://api.sellhidden.com/v1/orders/ID/note \
-H "Authorization: Bearer hsk_live_…" \
-H "Content-Type: application/json" \
-d '{"note":"Verified by hand on 2026-10-01."}'DELETE/orders/{id}/noteorders:write
Remove the private note.
curl -X DELETE \
https://api.sellhidden.com/v1/orders/ID/note \
-H "Authorization: Bearer hsk_live_…"Get help
Send us the endpoint, the request or delivery id and the response you got. Security findings go through responsible disclosure. Live platform status is on the support page.
See also