Anchor to section titled 'undefined'

fulfillmentOrderSplit
mutation

Requires write_merchant_managed_fulfillment_orders access scope or write_third_party_fulfillment_orders access scope. Also: The user must have fulfill_and_ship_orders permission.

Splits a fulfillment order or orders based on line item inputs and quantities.


The fulfillment orders, line items and quantities to be split into new fulfillment orders.


Was this section helpful?

The result of the fulfillment order splits.

The list of errors that occurred from executing the mutation.


Was this section helpful?

Examples

Hide code
DescriptionCopy
mutation fulfillmentOrderSplit($fulfillmentOrderSplits: [FulfillmentOrderSplitInput!]!) {
  fulfillmentOrderSplit(fulfillmentOrderSplits: $fulfillmentOrderSplits) {
    fulfillmentOrderSplits {
      fulfillmentOrder {
        id
        lineItems(first: 10) {
          edges {
            cursor
            node {
              id
              totalQuantity
            }
          }
        }
      }
      remainingFulfillmentOrder {
        id
        lineItems(first: 10) {
          edges {
            cursor
            node {
              id
              totalQuantity
            }
          }
        }
      }
    }
    userErrors {
      field
      message
    }
  }
}
curl -X POST \
https://your-development-store.myshopify.com/admin/api/2024-01/graphql.json \
-H 'Content-Type: application/json' \
-H 'X-Shopify-Access-Token: {access_token}' \
-d '{
"query": "mutation fulfillmentOrderSplit($fulfillmentOrderSplits: [FulfillmentOrderSplitInput!]!) { fulfillmentOrderSplit(fulfillmentOrderSplits: $fulfillmentOrderSplits) { fulfillmentOrderSplits { fulfillmentOrder { id lineItems(first: 10) { edges { cursor node { id totalQuantity } } } } remainingFulfillmentOrder { id lineItems(first: 10) { edges { cursor node { id totalQuantity } } } } } userErrors { field message } } }",
 "variables": {
    "fulfillmentOrderSplits": [
      {
        "fulfillmentOrderId": "gid://shopify/FulfillmentOrder/1046000796",
        "fulfillmentOrderLineItems": [
          {
            "id": "gid://shopify/FulfillmentOrderLineItem/1058737504",
            "quantity": 2
          }
        ]
      }
    ]
  }
}'
const { admin } = await authenticate.admin(request);

const response = await admin.graphql(
  `#graphql
  mutation fulfillmentOrderSplit($fulfillmentOrderSplits: [FulfillmentOrderSplitInput!]!) {
    fulfillmentOrderSplit(fulfillmentOrderSplits: $fulfillmentOrderSplits) {
      fulfillmentOrderSplits {
        fulfillmentOrder {
          id
          lineItems(first: 10) {
            edges {
              cursor
              node {
                id
                totalQuantity
              }
            }
          }
        }
        remainingFulfillmentOrder {
          id
          lineItems(first: 10) {
            edges {
              cursor
              node {
                id
                totalQuantity
              }
            }
          }
        }
      }
      userErrors {
        field
        message
      }
    }
  }`,
  {
    variables: {
      "fulfillmentOrderSplits": [
        {
          "fulfillmentOrderId": "gid://shopify/FulfillmentOrder/1046000796",
          "fulfillmentOrderLineItems": [
            {
              "id": "gid://shopify/FulfillmentOrderLineItem/1058737504",
              "quantity": 2
            }
          ]
        }
      ]
    },
  },
);

const data = await response.json();
session = ShopifyAPI::Auth::Session.new(
  shop: "your-development-store.myshopify.com",
  access_token: access_token
)
client = ShopifyAPI::Clients::Graphql::Admin.new(
  session: session
)

query = <<~QUERY
  mutation fulfillmentOrderSplit($fulfillmentOrderSplits: [FulfillmentOrderSplitInput!]!) {
    fulfillmentOrderSplit(fulfillmentOrderSplits: $fulfillmentOrderSplits) {
      fulfillmentOrderSplits {
        fulfillmentOrder {
          id
          lineItems(first: 10) {
            edges {
              cursor
              node {
                id
                totalQuantity
              }
            }
          }
        }
        remainingFulfillmentOrder {
          id
          lineItems(first: 10) {
            edges {
              cursor
              node {
                id
                totalQuantity
              }
            }
          }
        }
      }
      userErrors {
        field
        message
      }
    }
  }
QUERY

variables = {
  "fulfillmentOrderSplits": [{"fulfillmentOrderId"=>"gid://shopify/FulfillmentOrder/1046000796", "fulfillmentOrderLineItems"=>[{"id"=>"gid://shopify/FulfillmentOrderLineItem/1058737504", "quantity"=>2}]}]
}

response = client.query(query: query, variables: variables)
const client = new shopify.clients.Graphql({session});
const data = await client.query({
  data: {
    "query": `mutation fulfillmentOrderSplit($fulfillmentOrderSplits: [FulfillmentOrderSplitInput!]!) {
      fulfillmentOrderSplit(fulfillmentOrderSplits: $fulfillmentOrderSplits) {
        fulfillmentOrderSplits {
          fulfillmentOrder {
            id
            lineItems(first: 10) {
              edges {
                cursor
                node {
                  id
                  totalQuantity
                }
              }
            }
          }
          remainingFulfillmentOrder {
            id
            lineItems(first: 10) {
              edges {
                cursor
                node {
                  id
                  totalQuantity
                }
              }
            }
          }
        }
        userErrors {
          field
          message
        }
      }
    }`,
    "variables": {
      "fulfillmentOrderSplits": [
        {
          "fulfillmentOrderId": "gid://shopify/FulfillmentOrder/1046000796",
          "fulfillmentOrderLineItems": [
            {
              "id": "gid://shopify/FulfillmentOrderLineItem/1058737504",
              "quantity": 2
            }
          ]
        }
      ]
    },
  },
});
use Shopify\Clients\Graphql;

$client = new Graphql("your-development-store.myshopify.com", $accessToken);
$query = <<<QUERY
  mutation fulfillmentOrderSplit($fulfillmentOrderSplits: [FulfillmentOrderSplitInput!]!) {
    fulfillmentOrderSplit(fulfillmentOrderSplits: $fulfillmentOrderSplits) {
      fulfillmentOrderSplits {
        fulfillmentOrder {
          id
          lineItems(first: 10) {
            edges {
              cursor
              node {
                id
                totalQuantity
              }
            }
          }
        }
        remainingFulfillmentOrder {
          id
          lineItems(first: 10) {
            edges {
              cursor
              node {
                id
                totalQuantity
              }
            }
          }
        }
      }
      userErrors {
        field
        message
      }
    }
  }
QUERY;

$variables = [
  "fulfillmentOrderSplits" => [{"fulfillmentOrderId"=>"gid://shopify/FulfillmentOrder/1046000796", "fulfillmentOrderLineItems"=>[{"id"=>"gid://shopify/FulfillmentOrderLineItem/1058737504", "quantity"=>2}]}],
];

$response = $client->query(["query" => $query, "variables" => $variables]);
Hide code
Input variables
Copy
{
  "fulfillmentOrderSplits": [
    {
      "fulfillmentOrderId": "gid://shopify/FulfillmentOrder/1046000796",
      "fulfillmentOrderLineItems": [
        {
          "id": "gid://shopify/FulfillmentOrderLineItem/1058737504",
          "quantity": 2
        }
      ]
    }
  ]
}
Hide code
Response
JSON
{
  "fulfillmentOrderSplit": {
    "fulfillmentOrderSplits": [
      {
        "fulfillmentOrder": {
          "id": "gid://shopify/FulfillmentOrder/1046000796",
          "lineItems": {
            "edges": [
              {
                "cursor": "eyJsYXN0X2lkIjoxMDU4NzM3NTAzLCJsYXN0X3ZhbHVlIjoxMDU4NzM3NTAzfQ==",
                "node": {
                  "id": "gid://shopify/FulfillmentOrderLineItem/1058737503",
                  "totalQuantity": 1
                }
              }
            ]
          }
        },
        "remainingFulfillmentOrder": {
          "id": "gid://shopify/FulfillmentOrder/1046000797",
          "lineItems": {
            "edges": [
              {
                "cursor": "eyJsYXN0X2lkIjoxMDU4NzM3NTA0LCJsYXN0X3ZhbHVlIjoxMDU4NzM3NTA0fQ==",
                "node": {
                  "id": "gid://shopify/FulfillmentOrderLineItem/1058737504",
                  "totalQuantity": 2
                }
              }
            ]
          }
        }
      }
    ],
    "userErrors": []
  }
}