Skip to content

4. Import an order using the product

Use a token with the API_ORDER role and send POST /v1/orders/order/upload. Set product.code in the goods entry to the code of the product you created. You can also use product.name. Replace the customer, location and import-configuration codes and the dates with your own values.

{
  "operation": "CREATE",
  "order_identifier": "ERP-ORDER-001",
  "import_configuration": {"code": "api"},
  "customer": {"code": "CUSTOMER-001"},
  "transport_service": {"code": "ROAD"},
  "consignments": [
    {
      "pickup_stop": {
        "location": {"code": "WAREHOUSE-001"},
        "date": "2026-11-02"
      },
      "delivery_stop": {
        "location": {"code": "WAREHOUSE-002"},
        "date": "2026-11-03"
      },
      "goods": [
        {
          "quantity": 1,
          "product": {"code": "UN1090"}
        }
      ]
    }
  ]
}

product_type is optional on order import: Qargo derives it from the matched product. If the same product code exists in more than one product type, include product.product_type using the type's code or name. The product must belong to that type. For example:

{
  "quantity": 1,
  "product": {
    "code": "UN1090",
    "product_type": {"code": "CHEM"}
  }
}

Order import is asynchronous. Use the returned upload_id with GET /v1/orders/order/upload/{upload_id} and wait for upload_status to be COMPLETED before using the returned order_id. See Transport order creation and status for import-status handling.