---
title: "Receiving status change"
method: POST
path: "receivingStatusChange"
tags: ["Webhooks"]
---

# Receiving status change

`POST receivingStatusChange` (webhook)

## Supported Receiving Webhooks
All receiving-related webhooks are closely tied to the status of the receiving. Each webhook is triggered when the receiving transitions to a specific `status`, reflecting key milestones in the receiving process.

- Receiving awaiting (`status`: `awaiting`)
- Receiving in progress (`status`: `in_progress`)
- Receiving arrived (`status`: `arrived`)
- Receiving received (`status`: `received`)

## Payload

- ShipMonkOMSReceivingApiResourcePublicApiReceivingOutput
  - `id` integer, required — Server-assigned numeric identifier of the receiving. Use this value to reference the receiving in subsequent API calls.
  - `warehouse` string, required — Code of the warehouse where the goods are being received.
  - `receiving_key` string, nullable, required — Client-supplied reference (e.g. purchase order number) for the receiving, or null if none was provided at creation.
  - `asn` string, required — Advance Shipping Notice (ASN) number, a supplier-provided identifier for the incoming shipment.
  - `bol_number` string, nullable, required — Bill of Lading (BOL) number from the carrier transport document, or null if not provided.
  - `supplier_name` string, required — Name of the supplier sending the goods.
  - `handling_unit_type` 'small_boxes' | 'single_sku_pallet' | 'mixed_sku_pallet' | 'container_20_palletized' | 'container_20_non_palletized' | 'container_40_palletized' | 'container_40_non_palletized' | 'container_53_palletized' | 'container_53_non_palletized' | 'unknown', required
  - `handling_unit_quantity` integer, required — Total number of handling units (as specified by handling_unit_type) in the shipment.
  - `estimated_delivery` string, required — Estimated date when the shipment is expected to arrive at the warehouse, in ISO 8601 format (YYYY-MM-DD).
  - `description` string, nullable, required — Free-form notes about the receiving, or null if none were provided.
  - `status` 'awaiting' | 'arrived' | 'in_progress' | 'received', required
  - `created_at` string, date-time, required — Timestamp when the receiving record was created, in ISO 8601 format.
  - `updated_at` string, date-time, required — Timestamp when the receiving record was last modified, in ISO 8601 format.
  - `arrived_at` string, date-time, nullable, required — Timestamp when the shipment physically arrived at the warehouse, in ISO 8601 format. Null until arrival.
  - `received_at` string, date-time, nullable, required — Timestamp when all goods finished being received and counted, in ISO 8601 format. Null until processing is complete.
  - `items` ShipMonkOMSReceivingApiResourcePublicApiReceivingItemOutput[], required — Expected and received quantities aggregated per product across the entire receiving.
    - `product` FulfillmentIntegrationsBundleCrateReturnOrReceivingItemProductPublicApiOutput, required
      - `id` integer, required — Server-assigned numeric identifier of the product.
      - `sku` string, required — Stock Keeping Unit (SKU), the client's unique product code.
      - `name` string, required — Human-readable name of the product.
    - `expected_quantity` integer, required — Total number of units of this product expected to be received.
    - `received_quantity` integer, required — Total number of units of this product received so far across all batches.
    - `receiving_details` FulfillmentIntegrationsBundleCratePublicApiReceivingItemDetailsOutput[], required — Per-batch breakdown of received units for this product, including lot information and timestamps.
      - `lot` FulfillmentIntegrationsBundleCrateReturnOrReceivingItemLotPublicApiOutput, required
        - `lot_number` string, nullable, required — Lot/batch number assigned by the supplier, or null if not provided.
        - `expiration_date` string, date-time, nullable, required — Lot expiration date in ISO 8601 format (YYYY-MM-DD), or null if not applicable.
      - `expected_quantity` integer, required — Number of units expected in this lot/batch entry.
      - `received_quantity` integer, required — Number of units actually received in this lot/batch entry.
      - `received_at` string, date-time, nullable, required — Timestamp when this batch was received at the warehouse, in ISO 8601 format. Null if not yet received.
      - `line_key` string, nullable, required
  - `receiving_lines` ShipMonkOMSReceivingApiResourcePublicApiReceivingLineOutput[], required — Itemized receiving lines, each linking a product (with optional lot data) to a specific carton or pallet in the packing hierarchy.
    - `line_key` string, nullable, required — Client-supplied unique key identifying this line within the receiving, or null if none was provided at creation.
    - `product` FulfillmentIntegrationsBundleCrateReturnOrReceivingItemProductPublicApiOutput, required
      - `id` integer, required — Server-assigned numeric identifier of the product.
      - `sku` string, required — Stock Keeping Unit (SKU), the client's unique product code.
      - `name` string, required — Human-readable name of the product.
    - `expected_quantity` integer, required — Number of units expected on this line.
    - `received_quantity` integer, required — Number of units received on this line so far.
    - `carton_key` string, nullable, required — Key of the carton (from cartons[].carton_key) on which these units are packed, or null if the units are loose on a pallet. Exactly one of carton_key or loose_units_pallet_key is non-null when the packing hierarchy is used.
    - `loose_units_pallet_key` string, nullable, required — Key of the pallet (from pallets[].pallet_key) on which these loose units are placed without a carton, or null if the units are packed in a carton. Exactly one of carton_key or loose_units_pallet_key is non-null when the packing hierarchy is used.
    - `lot` FulfillmentIntegrationsBundleCrateReturnOrReceivingItemLotPublicApiOutput, required
      - `lot_number` string, nullable, required — Lot/batch number assigned by the supplier, or null if not provided.
      - `expiration_date` string, date-time, nullable, required — Lot expiration date in ISO 8601 format (YYYY-MM-DD), or null if not applicable.
  - `custom_data` FulfillmentCommonBundleApiResourceIntegrationDataOutput[], required — Arbitrary name/value pairs supplied by client integrations and attached to the receiving.
    - `name` string, required — Key of the custom data entry.
    - `value` object, required — Value of the custom data entry; may be any JSON-serializable structure.
  - `attributes` ShipMonkOMSReceivingApiResourcePublicApiReceivingAttributeOutput[], required — Attributes attached to the receiving. Only keys agreed with ShipMonk for the account are accepted on create and update.
    - `name` string, required — Attribute key agreed with ShipMonk for your account.
    - `value` string, required — Value of the attribute identified by the sibling `name`, returned as the text it was submitted with.
  - `cartons` ShipMonkOMSReceivingApiResourcePublicApiCartonOutput[], required — Cartons declared on the receiving. Each receiving_lines entry with a non-null carton_key references one of these by carton_key.
    - `carton_key` string, required — Client-supplied unique key identifying this carton within the receiving; referenced by receiving_lines[].carton_key.
    - `pallet_key` string, nullable, required — Key of the pallet (from pallets[].pallet_key) on which this carton is placed, or null if the carton is not on a pallet.
    - `identifiers` ShipMonkOMSReceivingApiResourcePublicApiLpnOutput[], required — Packaging identifiers attached to this carton (e.g. SSCC barcodes).
      - `type` 'SSCC', required
      - `value` string, required — The identifier value, formatted according to the rules of the chosen type (e.g. 18 digits for SSCC).
  - `pallets` ShipMonkOMSReceivingApiResourcePublicApiPalletOutput[], required — Pallets declared on the receiving. Each carton or loose-units line may reference one of these by pallet_key.
    - `pallet_key` string, required — Client-supplied unique key identifying this pallet within the receiving; referenced by cartons[].pallet_key and receiving_lines[].loose_units_pallet_key.
    - `identifiers` ShipMonkOMSReceivingApiResourcePublicApiLpnOutput[], required — Packaging identifiers attached to this pallet (e.g. SSCC barcodes).
      - `type` 'SSCC', required
      - `value` string, required — The identifier value, formatted according to the rules of the chosen type (e.g. 18 digits for SSCC).

## Acknowledgement `200`

Return a 2xx status to indicate that the data was received successfully

## Other responses

- `default` — For a 4xx status, ShipMonk will retry the webhook delivery up to 100 times, with a 5-minute delay between attempts.

---

[API](https://skmtc.net/shipmonk/apis/shipmonk-api.md) · [All operations](https://skmtc.net/shipmonk/apis/shipmonk-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shipmonk/shipmonk-api/revisions/5dc3234a38a5/schema)
