Skip to main content

warehouseTransfersCreate

Creates a draft transfer that moves products from one of the company’s buildings to another, and returns it.

Business Rules​

  • Transfers must be enabled for the company
  • Both buildings must belong to the company and differ
  • destinationLocationId, when given, must be an active location in the destination building
  • One line per product. Each product must belong to the company; quantities are greater than zero, in the product’s unit of measure
  • Each line sends quantity or amount. amount may have decimal places only for products stored in a finer unit, up to that unit’s decimal places
  • Without transferNumber, the next number in the company is used (TRF-YYYY-####). A number already used in the company is refused
  • Spaces before and after transferNumber are removed before it is checked and stored
  • The supply chain module is not required
  • Costs are amounts in the company’s currency

Error Scenarios​

  • “Transfers are not enabled for this company”
  • “Origin building not found.” or “Destination building not found.”
  • A message naming the SKU when a product appears twice or a quantity has too many decimal places
  • “Transfer number TRF-2026-0001 is already used.”

Permissions Required​

  • warehouse:create_transfer
warehouseTransfersCreate(
input: WarehouseTransfersCreateInput!
): WarehouseTransfer!

Arguments​

warehouseTransfersCreate.input ● WarehouseTransfersCreateInput! non-null input common​

Parameters for WarehouseTransfersCreate

Type​

WarehouseTransfer object inventory​

A movement of the company’s own inventory from one of its buildings to another.

Allocating holds the units at the origin. Shipping takes them out of the origin’s stock and counts them as incoming at the destination. Receiving adds them to the destination’s stock. Marking the transfer Received writes off the units not received: they stop counting as incoming.