Skip to main content

supplyAdvanceShipment

Advances a shipment to the next status in its lifecycle.

This mutation transitions a shipment to its next logical status based on the current state. The mutation requires authentication and the user must have appropriate permissions on the associated brand.

Status Flow

Shipments progress through the following statuses:

  • pendingin_transit
  • in_transitat_destination
  • at_destinationdelivered

The delivered and canceled statuses are terminal states and cannot be advanced further.

Auditing

Each status transition is recorded with the user who performed the action and the timestamp, creating a complete audit trail in the shipment's status history.

Errors

  • Returns "Shipment not found" if the shipment ID doesn't exist
  • Requires authentication (login_required)
  • Validates user permissions on the brand
supplyAdvanceShipment(
input: AdvanceShipmentInput!
): SupplyShipment

Arguments

supplyAdvanceShipment.input ● AdvanceShipmentInput! non-null input

Parameters for AdvanceShipment

Type

SupplyShipment object

Represents a shipment in the supply chain system.

Shipments are physical movements of goods through the supply chain. They can be linked to purchase orders and track the movement of materials from origin to destination. Each shipment maintains its status, payment information, and relationship to other shipments (hierarchical parent-child structure).

Shipment Types

  • **Shipment**: Direct shipment to a final destination (building/warehouse)
  • **ASN**: Advanced Shipment Notice, typically an intermediate shipment to a port or hub

Status Lifecycle

Shipments progress through various statuses: pending, in_transit, at_destination, delivered, or canceled

Each shipment includes associated items, status history, brand information, purchase order reference, and destination facility information. Shipments can have parent-child relationships for consolidated/split shipment scenarios.