---
title: "Create a B2B procurement order"
method: POST
path: "/v1/orders"
---

# Create a B2B procurement order

`POST /v1/orders`

## Request

- Base URL: `https://buyingmesh.com`
- URL: `https://buyingmesh.com/v1/orders`
- Auth: none declared. Required headers: `Idempotency-Key`

## Headers

- `Idempotency-Key` string, required

## Request body

- CreateOrderRequest
  - `quoteId` string, required
  - `buyer` object, required
    - `name` string, required
    - `email` string, email, required
  - `shippingAddress` object, required
  - `agent` object: Agent identity retained for supplier communication
    - `id` string
    - `name` string
    - `version` string
    - `callbackUrl` string, uri
  - `payment` object
    - `method` 'usdc_escrow' | 'fiat_manual'
    - `chain` string

## Response `201`

Order confirmed

- ApiOrderResponse
  - `status` 'ok', required
  - `data` Order, required
    - `id` string, uuid, required
    - `status` 'confirmed' | 'shipped' | 'tracking_updated' | 'eta_updated' | 'delivered' | 'accepted' | 'released' | 'disputed' | 'cancelled', required
    - `tracking` object, nullable
    - `supplier` object
      - `supplierId` string, nullable
      - `supplierName` string, nullable
      - `supplierSlug` string, nullable
    - `supplierIds` string[]
    - `agent` object, nullable
    - `items` object[]
    - `testMode` boolean
    - `eta` string, date-time, nullable
    - `events` object[], required
      - `type` string
      - `occurredAt` string, date-time
    - `payment` object, required
      - `status` string
      - `gross` number
      - `platformFee` number
      - `sellerNet` number
      - `currency` string
  - `error` unknown, required

## Other responses

- `422`: Validation failed

---

[API](https://skmtc.dev/buyingmesh/apis/buyingmesh-procurement-api.md) · [All operations](https://skmtc.dev/buyingmesh/apis/buyingmesh-procurement-api/llms.txt) · [OpenAPI document](https://skmtc.dev/buyingmesh/apis/buyingmesh-procurement-api/revisions/370360c1315c?raw)
