---
title: "Bulk Inward Transaction (From Purchase Order)"
method: POST
path: "/product/inward/bulk"
---

# Bulk Inward Transaction (From Purchase Order)

`POST /product/inward/bulk`

## Request

- Base URL: `https://dc-region.zuperpro.com/api`
- URL: `https://dc-region.zuperpro.com/api/product/inward/bulk`
- Auth: API key in header `x-api-key`

Inward stock movement triggered from a Purchase Order — takes an array of transaction lines instead of a single object, and links each created transaction back onto the PO's line_items. pre_tax_cost/purchase_tax are only persisted for PRODUCT/PARTS types.

## Request body

- object
  - `purchase_order_uid` string, required
  - `transaction` object[], required
    - `product_uid` string, required
    - `location_uid` string, required
    - `quantity` number, required
    - `serial_nos` string[]
    - `remarks` string
    - `purchase_price` number
    - `pre_tax_cost` number: PRODUCT/PARTS only.
    - `purchase_tax` number: PRODUCT/PARTS only.

## Response `200`

200

## Other responses

- `400`: 400
- `404`: 404

## Changes

- **2026-11-03** `3c21bc232e16`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/zuper/apis/zuper-pro-api/changes/product/inward/bulk/post.md)

---

[API](https://skmtc.dev/zuper/apis/zuper-pro-api.md) - [All operations](https://skmtc.dev/zuper/apis/zuper-pro-api/llms.txt) - [OpenAPI document](https://skmtc.dev/zuper/apis/zuper-pro-api/revisions/3c21bc232e16?raw)
