> This page is for Unified.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

The `ItemFulfillment` object represents the recorded shipment or delivery of some or all items on an associated sales order.

### The ItemFulfillment Object

```json
{
  "id": "string",
  "remote_id": "string",
  "created_at": "2023-01-01T00:00:00Z",
  "modified_at": "2023-01-01T00:00:00Z",
  "sales_order": "string",
  "fulfillment_date": "2023-01-01T00:00:00Z",
  "customer": "string",
  "company": "string",
  "status": "DRAFT",
  "memo": "string",
  "lines": [
    {
      "id": "string",
      "remote_id": "string",
      "created_at": "2023-01-01T00:00:00Z",
      "modified_at": "2023-01-01T00:00:00Z",
      "item": "string",
      "sales_order_line": "string",
      "quantity": "string",
      "tracking_categories": [
        "string"
      ],
      "remote_created_at": "2023-01-01T00:00:00Z",
      "remote_updated_at": "2023-01-01T00:00:00Z",
      "remote_was_deleted": true,
      "remote_fields": [
        {
          "remote_field_class": {
            "id": "string",
            "display_name": "string",
            "remote_key_name": "string",
            "description": "string",
            "is_custom": true,
            "is_common_model_field": true,
            "is_required": true,
            "field_type": "string",
            "field_format": "string",
            "field_choices": [
              "string"
            ],
            "item_schema": {
              "item_type": "string",
              "item_format": "string",
              "item_choices": [
                "string"
              ]
            }
          },
          "value": {
            "string": {}
          }
        }
      ]
    }
  ],
  "remote_created_at": "2023-01-01T00:00:00Z",
  "remote_updated_at": "2023-01-01T00:00:00Z",
  "item_fulfillment_url": "string",
  "remote_was_deleted": true,
  "field_mappings": {
    "organization_defined_targets": {
      "string": {}
    },
    "linked_account_defined_targets": {
      "string": {}
    }
  },
  "remote_data": [
    {
      "path": "string",
      "data": {}
    }
  ],
  "remote_fields": [
    {
      "remote_field_class": {
        "id": "string",
        "display_name": "string",
        "remote_key_name": "string",
        "description": "string",
        "is_custom": true,
        "is_common_model_field": true,
        "is_required": true,
        "field_type": "string",
        "field_format": "string",
        "field_choices": [
          "string"
        ],
        "item_schema": {
          "item_type": "string",
          "item_format": "string",
          "item_choices": [
            "string"
          ]
        }
      },
      "value": {
        "string": {}
      }
    }
  ]
}
```

### Schema (`ItemFulfillment`)

```yaml
components:
  schemas:
    ItemFulfillmentStatusEnum:
      type: string
      enum:
        - DRAFT
        - IN_PROGRESS
        - SHIPPED
        - CANCELLED
      title: ItemFulfillmentStatusEnum
    FieldTypeEnum:
      type: string
      enum:
        - string
        - number
        - date
        - datetime
        - bool
        - list
      title: FieldTypeEnum
    FieldFormatEnum:
      type: string
      enum:
        - string
        - number
        - date
        - datetime
        - bool
        - list
      title: FieldFormatEnum
    ItemTypeEnum:
      type: string
      enum:
        - string
        - number
        - date
        - datetime
        - bool
        - list
      title: ItemTypeEnum
    ItemFormatEnum:
      type: string
      enum:
        - string
        - number
        - date
        - datetime
        - bool
        - list
      title: ItemFormatEnum
    ItemSchema:
      type: object
      properties:
        item_type:
          $ref: '#/components/schemas/ItemTypeEnum'
        item_format:
          $ref: '#/components/schemas/ItemFormatEnum'
        item_choices:
          type: array
          items:
            type: string
      title: ItemSchema
    RemoteFieldClass:
      type: object
      properties:
        id:
          type: string
        display_name:
          type: string
        remote_key_name:
          type: string
        description:
          type: string
        is_custom:
          type: boolean
        is_common_model_field:
          type: boolean
        is_required:
          type: boolean
        field_type:
          $ref: '#/components/schemas/FieldTypeEnum'
        field_format:
          $ref: '#/components/schemas/FieldFormatEnum'
        field_choices:
          type: array
          items:
            type: string
        item_schema:
          $ref: '#/components/schemas/ItemSchema'
      title: RemoteFieldClass
    RemoteField:
      type: object
      properties:
        remote_field_class:
          $ref: '#/components/schemas/RemoteFieldClass'
        value:
          type: object
          additionalProperties:
            description: Any type
      required:
        - remote_field_class
      title: RemoteField
    ItemFulfillmentLine:
      type: object
      properties:
        id:
          type: string
          format: uuid
        remote_id:
          type:
            - string
            - 'null'
          description: The third-party API ID of the matching object.
        created_at:
          type: string
          format: date-time
          description: The datetime that this object was created by Merge.
        modified_at:
          type: string
          format: date-time
          description: The datetime that this object was modified by Merge.
        item:
          type:
            - string
            - 'null'
          format: uuid
        sales_order_line:
          type:
            - string
            - 'null'
          format: uuid
        quantity:
          type:
            - string
            - 'null'
          format: decimal
          pattern: ^-?\d{0,24}(?:\.\d{0,8})?$
          description: The amount of item being delivered.
        tracking_categories:
          type: array
          items:
            type: string
            format: uuid
          description: The dimensions or classification tags.
        remote_created_at:
          type:
            - string
            - 'null'
          format: date-time
          description: When the third party's item fulfillment line item was created.
        remote_updated_at:
          type:
            - string
            - 'null'
          format: date-time
          description: When the third party's item fulfillment line item was updated.
        remote_was_deleted:
          type: boolean
          description: >-
            Indicates whether or not this object has been deleted in the third
            party platform. Full coverage deletion detection is a premium
            add-on. Native deletion detection is offered for free with limited
            coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
        remote_fields:
          type: array
          items:
            $ref: '#/components/schemas/RemoteField'
      description: >-
        # The ItemFulfillmentLine Object

        ### Description

        The `ItemFulfillmentLine` object represents the specific quantity of a
        particular product or service that has actually been shipped or
        delivered against its corresponding order line.


        ### Usage Example

        Fetch from the `GET ItemFulfillment` endpoint and view a company's item
        fulfillment lines.
      title: ItemFulfillmentLine
    ItemFulfillmentFieldMappings:
      type: object
      properties:
        organization_defined_targets:
          type: object
          additionalProperties:
            description: Any type
        linked_account_defined_targets:
          type: object
          additionalProperties:
            description: Any type
      title: ItemFulfillmentFieldMappings
    RemoteData:
      type: object
      properties:
        path:
          type: string
          description: The third-party API path that is being called.
        data:
          description: >-
            The data returned from the third-party for this object in its
            original, unnormalized format.
      required:
        - path
      description: >-
        # The RemoteData Object

        ### Description

        The `RemoteData` object is used to represent the full data pulled from
        the third-party API for an object.


        ### Usage Example

        TODO
      title: RemoteData
    ItemFulfillment:
      type: object
      properties:
        id:
          type: string
          format: uuid
        remote_id:
          type:
            - string
            - 'null'
          description: The third-party API ID of the matching object.
        created_at:
          type: string
          format: date-time
          description: The datetime that this object was created by Merge.
        modified_at:
          type: string
          format: date-time
          description: The datetime that this object was modified by Merge.
        sales_order:
          type:
            - string
            - 'null'
          format: uuid
          description: The ID of the sales order that the item fulfillment originated from.
        fulfillment_date:
          type:
            - string
            - 'null'
          format: date-time
          description: The date the fulfillment was created.
        customer:
          type:
            - string
            - 'null'
          format: uuid
          description: The customer associated with the item fulfillment.
        company:
          type:
            - string
            - 'null'
          format: uuid
          description: The subsidiary associated with the fulfillment.
        status:
          oneOf:
            - $ref: '#/components/schemas/ItemFulfillmentStatusEnum'
            - type: 'null'
          description: >-
            The status of the item fulfillment. This field is an open enum:
            Merge can return a value outside this list when an integration
            provides one it does not map. Pass `show_enum_origins=status` to
            receive the integration's own value instead.
        memo:
          type:
            - string
            - 'null'
          description: Comment attached to the fulfillment.
        lines:
          type: array
          items:
            $ref: '#/components/schemas/ItemFulfillmentLine'
        remote_created_at:
          type:
            - string
            - 'null'
          format: date-time
          description: When the third party's item fulfillment was created.
        remote_updated_at:
          type:
            - string
            - 'null'
          format: date-time
          description: When the third party's item fulfillment was updated.
        item_fulfillment_url:
          type:
            - string
            - 'null'
          format: uri
          maxLength: 2000
          description: The 3rd party URL of the item fulfillment.
        remote_was_deleted:
          type: boolean
          description: >-
            Indicates whether or not this object has been deleted in the third
            party platform. Full coverage deletion detection is a premium
            add-on. Native deletion detection is offered for free with limited
            coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
        field_mappings:
          oneOf:
            - $ref: '#/components/schemas/ItemFulfillmentFieldMappings'
            - type: 'null'
        remote_data:
          type:
            - array
            - 'null'
          items:
            $ref: '#/components/schemas/RemoteData'
        remote_fields:
          type: array
          items:
            $ref: '#/components/schemas/RemoteField'
      title: ItemFulfillment
```