INPUT_OBJECT

ShipmentCreateInput

link GraphQL Schema definition

1input ShipmentCreateInput {
2
3# Exactly one input field should be provided
4order: OrderInput!
5
6# Lines to be included in the shipment.
7# Note: This field should be omitted if deliveryGroup is provided.
8# If using deliveryGroup, lines from the DeliveryGroup will be used.
9lines: [ShipmentLineInput!]
10
11# Input for providing id of the delivery group to create a shipment from.
12# If deliveryGroup is provided, the lines field will be ignored and
13# delivery group lines will be used.
14# A Delivery Group is a subset of an order to be shipped together from the same location.
15# Used in split shipments scenarios, each group can have its own
16# shipping method, cost, and estimated delivery time.
17deliveryGroup: DeliveryGroupInput
18
19isGoodToGo: Boolean
20
21# Provide `isPaid: true` only if the shipment was captured outside Centra or no capturing is expected for it.
22# It doesn't perform capturing, use the `capture` field for it or the `captureShipment` mutation for
23# already created shipments.
24# If the `capture` field is used, the `isPaid` field will be ignored and the shipment will be marked as paid based
25# on the capture results.
26isPaid: Boolean
27
28createdAt: DateTimeTz
29
30# If this field is provided, it means shipment was already sent some time ago.
31# In this case, most likely, the shipmentInfo input should be also populated
32shippedAt: DateTimeTz
33
34# It is possible to set shipment info for a shipment that hasn't been sent yet.
35# If the shipment was actually sent in the past, the shippedAt field should be also provided
36shipmentInfo: ShipmentInfoInput
37
38# It will send a Shipping confirmation email to a customer. Only used if the shippedAt field is set
39sendEmail: Boolean
40
41# shippingCostPolicy/handlingCostPolicy/discountValuePolicy are necessary when your order is split into multiple
42# shipments. If the first shipment you created and captured contained the cost/value, you can use these policies
43# to skip it in the subsequent shipments.
44# This is needed because the payment providers will not allow you to capture more than was authorised,
45# so you can only charge the cost once.
46# Default value for all policies is "allRemaining".
47#
48# Exactly one input field should be provided
49shippingCostPolicy: CostPolicyInput
50
51# Exactly one input field should be provided
52handlingCostPolicy: CostPolicyInput
53
54# Exactly one input field should be provided
55discountValuePolicy: CostPolicyInput
56
57additionalMessage: String
58
59allocateDemand: Boolean
60
61# Exactly one input field should be provided
62shipmentMethod: ShipmentMethodInput
63
64# Capturing real money, the whole shipment total.
65# If capture fails, the shipment will still be created. The capture errors will be added to `userWarnings`,
66# add them to a mutation payload. Read more about it here:
67# https://centra.dev/docs/integration-api/example-queries-dtc#creating-and-capturing-a-shipment
68# If the order was captured before and there is some amount not assigned to any shipment, it will be set to
69# the new shipment. If the total shipment amount is assigned that way, no real capture will be made.
70capture: Boolean
71
72# Assign an external ID to reference this object by it later
73externalId: String
74}

link Required by