Skip to content

Orders ​

Orders placed with the merchant, through Bione or through you.

List the merchant's orders​

GET
/orders

Authorizations​

apiKey

The key the merchant issued you, sent verbatim including its bik_ prefix. Bione stores only a hash, so a lost key cannot be recovered — it has to be reissued.

Type
API Key (header: api-key)

Parameters​

Query Parameters

page
Type
integer
Minimum
1
Default
1
pageSize
Type
integer
Minimum
1
Default
20
status
Type
string
Valid values
"DRAFT""AWAITING_PAYMENT""PLACED""CONFIRMED""PREPARING""OUT_FOR_DELIVERY""READY_FOR_PICKUP""DELIVERED""COMPLETED""CANCELLED"
branchId
Type
string
Format
"uuid"

Responses​

A page of orders.

application/json
JSON
{
  
"code": 0,
  
"message": "string",
  
"data": {
  
  
"items": [
  
  
  
{
  
  
  
  
"id": "string",
  
  
  
  
"number": "string",
  
  
  
  
"status": "string",
  
  
  
  
"channel": "string",
  
  
  
  
"fulfillmentType": "string",
  
  
  
  
"paymentMethod": "string",
  
  
  
  
"paidAt": "string",
  
  
  
  
"customerUserId": "string",
  
  
  
  
"branchId": "string",
  
  
  
  
"subtotal": "string",
  
  
  
  
"deliveryFee": "string",
  
  
  
  
"serviceFee": "string",
  
  
  
  
"cashbackApplied": "string",
  
  
  
  
"cashbackEarned": "string",
  
  
  
  
"cashbackPending": "string",
  
  
  
  
"total": "string",
  
  
  
  
"currency": "string",
  
  
  
  
"notes": "string",
  
  
  
  
"items": [
  
  
  
  
  
{
  
  
  
  
  
  
"productId": "string",
  
  
  
  
  
  
"sku": "string",
  
  
  
  
  
  
"name": "string",
  
  
  
  
  
  
"quantity": "string",
  
  
  
  
  
  
"measureUnit": "string",
  
  
  
  
  
  
"unitPrice": "string",
  
  
  
  
  
  
"lineTotal": "string"
  
  
  
  
  
}
  
  
  
  
],
  
  
  
  
"createdAt": "string",
  
  
  
  
"updatedAt": "string"
  
  
  
}
  
  
],
  
  
"total": 0,
  
  
"page": 0,
  
  
"pageSize": 0,
  
  
"totalPages": 0
  
},
  
"messages": {
  
  
"uz": "string",
  
  
"ru": "string",
  
  
"en": "string"
  
},
  
"status_code": 200,
  
"time": "string"
}

Playground​

Authorization
Variables
Key
Value

Samples​

Powered by VitePress OpenAPI

Record an order your system took​

POST
/orders

Answers 200, not 201.
The order is created unpaid (paidAt: null): a pickup or delivery order is paid when the customer arrives. The cashback it will earn is held as cashbackPending and credited when you call PATCH /orders/{id}/paid.
Retry safety here is doubled on purpose. requestId in the body is the durable key — sending the same one again returns the original order rather than creating a second, and it keeps working across process restarts. The Idempotency-Key header replays the whole response for a short window. Use requestId as the one you rely on.

Authorizations​

apiKey

The key the merchant issued you, sent verbatim including its bik_ prefix. Bione stores only a hash, so a lost key cannot be recovered — it has to be reissued.

Type
API Key (header: api-key)

Request Body​

application/json
JSON
{
  
"channel": "string",
  
"fulfillmentType": "string",
  
"requestId": "string",
  
"customerUserId": "string",
  
"paymentMethod": "string",
  
"items": [
  
  
{
  
  
  
"productId": "string",
  
  
  
"quantity": 0,
  
  
  
"sourceBranchId": "string",
  
  
  
"confirmedUnitPrice": "string"
  
  
}
  
],
  
"branchId": "string",
  
"confirmedThresholdDiscount": "string",
  
"deliveryFee": "string",
  
"serviceFee": "string",
  
"deliveryAddress": {
  
  
"street": "string",
  
  
"entrance": "string",
  
  
"floor": "string",
  
  
"apartment": "string",
  
  
"doorCode": "string",
  
  
"lat": 0,
  
  
"lng": 0
  
},
  
"recipientPhone": "string",
  
"leaveAtDoor": true,
  
"notes": "string"
}

Responses​

The created order, or the existing one for a repeated requestId.

application/json
JSON
{
  
"code": 0,
  
"message": "string",
  
"data": {
  
  
"id": "string",
  
  
"number": "string",
  
  
"status": "string",
  
  
"channel": "string",
  
  
"fulfillmentType": "string",
  
  
"paymentMethod": "string",
  
  
"paidAt": "string",
  
  
"customerUserId": "string",
  
  
"branchId": "string",
  
  
"subtotal": "string",
  
  
"deliveryFee": "string",
  
  
"serviceFee": "string",
  
  
"cashbackApplied": "string",
  
  
"cashbackEarned": "string",
  
  
"cashbackPending": "string",
  
  
"total": "string",
  
  
"currency": "string",
  
  
"notes": "string",
  
  
"items": [
  
  
  
{
  
  
  
  
"productId": "string",
  
  
  
  
"sku": "string",
  
  
  
  
"name": "string",
  
  
  
  
"quantity": "string",
  
  
  
  
"measureUnit": "string",
  
  
  
  
"unitPrice": "string",
  
  
  
  
"lineTotal": "string"
  
  
  
}
  
  
],
  
  
"createdAt": "string",
  
  
"updatedAt": "string"
  
},
  
"messages": {
  
  
"uz": "string",
  
  
"ru": "string",
  
  
"en": "string"
  
},
  
"status_code": 200,
  
"time": "string"
}

Playground​

Authorization
Body

Samples​

Powered by VitePress OpenAPI

Get one order​

GET
/orders/{id}

Authorizations​

apiKey

The key the merchant issued you, sent verbatim including its bik_ prefix. Bione stores only a hash, so a lost key cannot be recovered — it has to be reissued.

Type
API Key (header: api-key)

Responses​

The order.

application/json
JSON
{
  
"code": 0,
  
"message": "string",
  
"data": {
  
  
"id": "string",
  
  
"number": "string",
  
  
"status": "string",
  
  
"channel": "string",
  
  
"fulfillmentType": "string",
  
  
"paymentMethod": "string",
  
  
"paidAt": "string",
  
  
"customerUserId": "string",
  
  
"branchId": "string",
  
  
"subtotal": "string",
  
  
"deliveryFee": "string",
  
  
"serviceFee": "string",
  
  
"cashbackApplied": "string",
  
  
"cashbackEarned": "string",
  
  
"cashbackPending": "string",
  
  
"total": "string",
  
  
"currency": "string",
  
  
"notes": "string",
  
  
"items": [
  
  
  
{
  
  
  
  
"productId": "string",
  
  
  
  
"sku": "string",
  
  
  
  
"name": "string",
  
  
  
  
"quantity": "string",
  
  
  
  
"measureUnit": "string",
  
  
  
  
"unitPrice": "string",
  
  
  
  
"lineTotal": "string"
  
  
  
}
  
  
],
  
  
"createdAt": "string",
  
  
"updatedAt": "string"
  
},
  
"messages": {
  
  
"uz": "string",
  
  
"ru": "string",
  
  
"en": "string"
  
},
  
"status_code": 200,
  
"time": "string"
}

Playground​

Authorization

Samples​

Powered by VitePress OpenAPI

Advance an order's status​

PATCH
/orders/{id}/status

Cancelling is not among the allowed values, and that is not an oversight: cancellation is a separate capability no partner key can be granted. COMPLETED is refused with 400 while the order is unpaid — mark it paid first.

Authorizations​

apiKey

The key the merchant issued you, sent verbatim including its bik_ prefix. Bione stores only a hash, so a lost key cannot be recovered — it has to be reissued.

Type
API Key (header: api-key)

Request Body​

application/json
JSON
{
  
"status": "string"
}

Responses​

The order after the transition.

application/json
JSON
{
  
"code": 0,
  
"message": "string",
  
"data": {
  
  
"id": "string",
  
  
"number": "string",
  
  
"status": "string",
  
  
"channel": "string",
  
  
"fulfillmentType": "string",
  
  
"paymentMethod": "string",
  
  
"paidAt": "string",
  
  
"customerUserId": "string",
  
  
"branchId": "string",
  
  
"subtotal": "string",
  
  
"deliveryFee": "string",
  
  
"serviceFee": "string",
  
  
"cashbackApplied": "string",
  
  
"cashbackEarned": "string",
  
  
"cashbackPending": "string",
  
  
"total": "string",
  
  
"currency": "string",
  
  
"notes": "string",
  
  
"items": [
  
  
  
{
  
  
  
  
"productId": "string",
  
  
  
  
"sku": "string",
  
  
  
  
"name": "string",
  
  
  
  
"quantity": "string",
  
  
  
  
"measureUnit": "string",
  
  
  
  
"unitPrice": "string",
  
  
  
  
"lineTotal": "string"
  
  
  
}
  
  
],
  
  
"createdAt": "string",
  
  
"updatedAt": "string"
  
},
  
"messages": {
  
  
"uz": "string",
  
  
"ru": "string",
  
  
"en": "string"
  
},
  
"status_code": 200,
  
"time": "string"
}

Playground​

Authorization
Body

Samples​

Powered by VitePress OpenAPI

Mark an order paid​

PATCH
/orders/{id}/paid

Records that your system took payment. An order you create in CASH or CARD_TERMINAL is born unpaid — the customer has not arrived yet — and stays unpaid, with its cashback held as cashbackPending, until you call this. Call it when the customer actually pays (at pickup or on delivery). An order cannot move to COMPLETED before it is paid.
This is the one route here that moves money: it credits the customer's pending cashback, once, however many times you call it. It is recorded against your key in the merchant's audit trail.
An order paid through Bione's own card flow cannot be settled this way and is refused.

Authorizations​

apiKey

The key the merchant issued you, sent verbatim including its bik_ prefix. Bione stores only a hash, so a lost key cannot be recovered — it has to be reissued.

Type
API Key (header: api-key)

Responses​

The order, now paid.

application/json
JSON
{
  
"code": 0,
  
"message": "string",
  
"data": {
  
  
"id": "string",
  
  
"number": "string",
  
  
"status": "string",
  
  
"channel": "string",
  
  
"fulfillmentType": "string",
  
  
"paymentMethod": "string",
  
  
"paidAt": "string",
  
  
"customerUserId": "string",
  
  
"branchId": "string",
  
  
"subtotal": "string",
  
  
"deliveryFee": "string",
  
  
"serviceFee": "string",
  
  
"cashbackApplied": "string",
  
  
"cashbackEarned": "string",
  
  
"cashbackPending": "string",
  
  
"total": "string",
  
  
"currency": "string",
  
  
"notes": "string",
  
  
"items": [
  
  
  
{
  
  
  
  
"productId": "string",
  
  
  
  
"sku": "string",
  
  
  
  
"name": "string",
  
  
  
  
"quantity": "string",
  
  
  
  
"measureUnit": "string",
  
  
  
  
"unitPrice": "string",
  
  
  
  
"lineTotal": "string"
  
  
  
}
  
  
],
  
  
"createdAt": "string",
  
  
"updatedAt": "string"
  
},
  
"messages": {
  
  
"uz": "string",
  
  
"ru": "string",
  
  
"en": "string"
  
},
  
"status_code": 200,
  
"time": "string"
}

Playground​

Authorization

Samples​

Powered by VitePress OpenAPI