Get Order
Endpoint key: getOrder
Called by Bik to retrieve the current state of a placed order — typically after payment, for status queries inside the WhatsApp conversation, or to refresh order data the customer asks about ("where is my order?").
Looking for a working reference? The non-shopify-examples repo ships a runnable echo server with
getOrderreturning the same order it stored underplaceOrder.
Request
Bik sends an HTTP POST to your endpoint.
Headers
Content-Type: application/json
<configured auth header> # omitted if auth type is "none"
Body
{
"orderId": "ORD-1001"
}
Request fields
| Field | Type | Description |
|---|---|---|
orderId | string | The order id you returned from placeOrder (order.id). |
What your endpoint should do
Look up the order by orderId and return its current BikOrder. Make sure status, paymentStatus, and any tracking info are up to date.
Response
{
"order": {
"id": "ORD-1001",
"name": "#1001",
"status": "DELIVERED",
"paymentStatus": "paid",
"items": [
{
"productId": 6862852391049,
"variantId": 40946134352009,
"name": "Skin Renew Cream",
"variantName": "Default",
"quantity": 2,
"price": 499
}
],
"subTotal": 998,
"shippingCharge": 49,
"discount": 100,
"total": 947,
"currency": "INR",
"phoneNumber": "+919876543210",
"email": "buyer@example.com",
"fulfillmentStatus": "fulfilled",
"deliveryInfo": {
"trackingURL": "https://courier.example.com/track/ABCD1234"
}
}
}
Response fields
The full BikOrder shape is documented on the overview page. For getOrder specifically, the most useful fields to keep current are:
| Field | Why it matters |
|---|---|
status | Drives "where is my order?" replies on WhatsApp. |
paymentStatus | Lets Bik tell the customer if a payment is still pending. |
fulfillmentStatus | One of "unfulfilled", "partial", "fulfilled". |
deliveryInfo.trackingURL | If present, Bik shares this with the customer. |
items | Shown on order-detail screens. |
Errors
If the order doesn't exist or your store can't return it, respond with a non-2xx status:
HTTP/1.1 404 Not Found
Content-Type: application/json
{ "error": "order ORD-1001 not found" }