---
title: "Create fulfillments"
method: POST
path: "/v1/fulfillments"
tags: ["Fulfillments"]
---

# Create fulfillments

`POST /v1/fulfillments`

Creates one or multiple Fulfillment objects. You can also generate invoices or memos for these Fulfillment objects in this API call. The following tutorials demonstrate how to use this operation:
* [Create a sales order line item with fulfillments](https://docs.zuora.com?resourceId=billing-add-fulfillments-sales-order-line-items)
* [Create a return order line item with fulfillments](https://docs.zuora.com?resourceId=billing-create-return-order-with-fulfillments)

## Headers

- `Idempotency-Key` string
- `Accept-Encoding` string
- `Content-Encoding` string
- `Zuora-Track-Id` string
- `Zuora-Entity-Ids` string
- `Zuora-Org-Ids` string
- `Zuora-Version` string

## Request body

- PostFulfillmentsRequestType
  - `fulfillments` FulfillmentPost[]
    - `orderLineItemId` string, UUID — The reference id of the related Order Line Item.
    - `billTargetDate` string, date — The target date for the Fulfillment to be picked up by bill run for billing.
    - `carrier` string — The carrier of the Fulfillment. The available values can be configured in **Billing Settings** > **Fulfillment Settings** through Zuora UI.
    - `customFields` FulfillmentCustomFields — Container for custom fields of a Fulfillment object.
    - `description` string — The description of the Fulfillment.
    - `excludeItemBillingFromRevenueAccounting` boolean — The flag to exclude Fulfillment related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting. **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
    - `excludeItemBookingFromRevenueAccounting` boolean — The flag to exclude Fulfillment from revenue accounting. **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
    - `externalId` string — The external id of the Fulfillment.
    - `fulfillmentDate` string, date — The date of the Fulfillment.
    - `fulfillmentLocation` string — The fulfillment location of the Fulfillment. The available values can be configured in **Billing Settings** > **Fulfillment Settings** through Zuora UI.
    - `fulfillmentSystem` string — The fulfillment system of the Fulfillment. The available values can be configured in **Billing Settings** > **Fulfillment Settings** through Zuora UI.
    - `fulfillmentType` 'Delivery' | 'Return' — The type of the Fulfillment.
    - `quantity` number — The quantity of the Fulfillment.
    - `state` 'Executing' | 'Booked' | 'SentToBilling' | 'Complete' | 'Cancelled' — The state of the Fulfillment. See [State transitions for an order, order line item, and fulfillment](https://docs.zuora.com?resourceId=billing-state-transitions-order-line-items) for more information.
    - `trackingNumber` string — The tracking number of the Fulfillment.
    - `fulfillmentItems` FulfillmentItemPostFromFulfillmentPost[]
      - `customFields` FulfillmentItemCustomFields — Container for custom fields of a Fulfillment Item object.
      - `description` string — The description of the Fulfillment Item.
      - `itemIdentifier` string — The external identifier of the Fulfillment Item.
  - `processingOptions` ProcessingOptions — Processing options for generating billing documents.
    - `billingOptions` BillingOptions
      - `documentDate` string, date — The invoice date displayed on the billing document.
      - `targetDate` string, date — Date through which to calculate charges for order line items if a billing document is generated. See [What is a Target Date?](https://docs.zuora.com?resourceId=billing-bill-runs-creation).
    - `runBilling` boolean — Indicates if the current request needs to generate a billing document. The billing document will be generated against all Order Line Items included in this order.

## Response `200`

OK

- PostFulfillmentsResponseType
  - `processId` string — The ID of the process that handles the operation.
  - `reasons` object[] — The container of the error code and message. This field is available only if the `success` field is `false`.
    - `code` string — The error code of response.
    - `message` string — The detail information of the error response
  - `requestId` string, uuid — Unique identifier of the request.
  - `success` boolean — Indicates whether the call succeeded.
  - `creditMemoNumbers` string[], nullable — An array of the credit memo numbers generated in this request. The credit memo is only available if you have the Invoice Settlement feature enabled.
  - `fulfillments` object[]
    - `fulfillmentItems` object[]
      - `id` string, UUID — The sytem generated Id.
    - `fulfillmentNumber` string — The sytem generated number for the Fulfillment.
    - `id` string, UUID — The sytem generated Id.
  - `invoiceNumbers` string[] — An array of the invoice numbers generated in this request. Normally it includes one invoice number only.
  - `paidAmount` number — The total amount collected in this request.
  - `paymentNumber` string — The payment number collected in this request.

## Other responses

- `500` — Internal Server Error
- `4XX` — Request Errors

---

[API](https://skmtc.dev/zuora/apis/api-reference.md) · [All operations](https://skmtc.dev/zuora/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zuora/api-reference/revisions/d11e237f3e54/schema)
